/packages/httpd24/Makefile.fpc

https://github.com/slibre/freepascal · Unknown · 89 lines · 82 code · 7 blank · 0 comment · 0 complexity · e43b571f1b74c4af1acc7c6010b6ebbc MD5 · raw file

  1. #
  2. # Makefile.fpc for running fpmake
  3. #
  4. [package]
  5. name=httpd24
  6. version=2.7.1
  7. [require]
  8. packages=rtl fpmkunit
  9. [install]
  10. fpcpackage=y
  11. [default]
  12. fpcdir=../..
  13. [prerules]
  14. FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
  15. ifdef OS_TARGET
  16. FPC_TARGETOPT+=--os=$(OS_TARGET)
  17. endif
  18. ifdef CPU_TARGET
  19. FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
  20. endif
  21. LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
  22. [rules]
  23. # Do not pass the Makefile's unit and binary target locations. fpmake uses it's own.
  24. override FPCOPT:=$(filter-out -FU%,$(FPCOPT))
  25. override FPCOPT:=$(filter-out -FE%,$(FPCOPT))
  26. # Compose general fpmake-parameters
  27. ifdef FPMAKEOPT
  28. FPMAKE_OPT+=$(FPMAKEOPT)
  29. endif
  30. FPMAKE_OPT+=--localunitdir=../..
  31. FPMAKE_OPT+=--globalunitdir=..
  32. FPMAKE_OPT+=$(FPC_TARGETOPT)
  33. FPMAKE_OPT+=$(addprefix -o ,$(FPCOPT))
  34. FPMAKE_OPT+=--compiler=$(FPC)
  35. FPMAKE_OPT+=-bu
  36. .NOTPARALLEL:
  37. fpmake: fpmake.pp
  38. $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) $(OPT)
  39. all: fpmake
  40. $(LOCALFPMAKE) compile $(FPMAKE_OPT)
  41. smart: fpmake
  42. $(LOCALFPMAKE) compile $(FPMAKE_OPT) -o -XX -o -CX
  43. release: fpmake
  44. $(LOCALFPMAKE) compile $(FPMAKE_OPT) -o -dRELEASE
  45. debug: fpmake
  46. $(LOCALFPMAKE) compile $(FPMAKE_OPT) -o -dDEBUG
  47. # If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
  48. # most often fail because the dependencies are cleared.
  49. # In case of a clean, simply do nothing
  50. ifeq ($(FPMAKE_BIN_CLEAN),)
  51. clean:
  52. else
  53. clean:
  54. $(FPMAKE_BIN_CLEAN) clean $(FPMAKE_OPT)
  55. endif
  56. # In case of a distclean, perform an 'old'-style distclean. This to avoid problems
  57. # when the package is compiled using fpcmake prior to running this clean using fpmake
  58. ifeq ($(FPMAKE_BIN_CLEAN),)
  59. distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall
  60. else
  61. distclean:
  62. ifdef inUnix
  63. { $(FPMAKE_BIN_CLEAN) distclean $(FPMAKE_OPT); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; }
  64. else
  65. $(FPMAKE_BIN_CLEAN) distclean $(FPMAKE_OPT)
  66. endif
  67. -$(DEL) $(LOCALFPMAKE)
  68. endif
  69. cleanall: distclean
  70. install: fpmake
  71. ifdef UNIXHier
  72. $(LOCALFPMAKE) install $(FPMAKE_OPT) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR)
  73. else
  74. $(LOCALFPMAKE) install $(FPMAKE_OPT) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR)
  75. endif
  76. # distinstall also installs the example-sources
  77. distinstall: fpmake
  78. ifdef UNIXHier
  79. $(LOCALFPMAKE) install $(FPMAKE_OPT) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie
  80. else
  81. $(LOCALFPMAKE) install $(FPMAKE_OPT) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie
  82. endif