Makefile.fpc 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. #
  2. # Makefile.fpc for Free Pascal Source Tree
  3. #
  4. [targets]
  5. dirs=compiler rtl utils packages fcl ide
  6. [defaults]
  7. defaultrule=info
  8. [sections]
  9. none=1
  10. dirs=1
  11. tools=1
  12. exts=1
  13. [postsettings]
  14. export RELEASE=1
  15. [rules]
  16. #####################################################################
  17. # Main targets
  18. #####################################################################
  19. .PHONY: compiler_cycle \
  20. idezips ide_allzip ide_gdbzip ide_fullzip ide_fullgdbzip \
  21. fclzip gtkzip fvzip compilerzip utilszip
  22. info:
  23. @echo
  24. @echo Please use one of the following targets:
  25. @echo
  26. @echo $(DIROBJECTS)
  27. @echo
  28. @echo All targets can follow after a _ with:
  29. @echo all,clean,install,staticinstall,sharedinstall
  30. @echo
  31. @echo example: make api_staticinstall
  32. @exit
  33. #####################################################################
  34. # Dependencies
  35. #####################################################################
  36. #######################################
  37. # Compiler
  38. #######################################
  39. compiler_cycle:
  40. $(MAKE) -C compiler cycle
  41. #######################################
  42. # IDE
  43. #######################################
  44. ide_gdb:
  45. $(MAKE) -C ide gdb
  46. ide_full:
  47. $(MAKE) -C ide full
  48. ide_fullgdb:
  49. $(MAKE) -C ide fullgdb
  50. #######################################
  51. # Install targets
  52. #######################################
  53. base_install:
  54. $(INSTALL) base/Makefile $(BASEINSTALLDIR)
  55. $(INSTALL) base/makefile.fpc $(BASEINSTALLDIR)
  56. demo_install:
  57. $(MAKE) -C demo installdemo
  58. man_install:
  59. $(MAKE) -C man installman
  60. #######################################
  61. # Packaging targets
  62. #######################################
  63. export DESTZIPDIR:=$(BASEDIR)
  64. idezips: clean ide_allzip ide_gdbzip ide_fullzip ide_fullgdbzip
  65. ide_allzip:
  66. $(MAKE) ide_clean
  67. $(MAKE) ide_all
  68. $(MAKE) -C ide/text zipinstall ZIPNAME=ide-fake-$(PACKAGESUFFIX)
  69. ide_gdbzip:
  70. $(MAKE) ide_clean
  71. $(MAKE) ide_gdb
  72. $(MAKE) -C ide/text zipinstall ZIPNAME=ide-gdb-$(PACKAGESUFFIX)
  73. ide_fullzip:
  74. $(MAKE) compiler_clean
  75. $(MAKE) ide_clean
  76. $(MAKE) ide_full
  77. $(MAKE) -C ide/text zipinstall ZIPNAME=ide-comp-$(PACKAGESUFFIX)
  78. ide_fullgdbzip:
  79. $(MAKE) ide_clean
  80. $(MAKE) ide_fullgdb
  81. $(MAKE) -C ide/text zipinstall ZIPNAME=ide-full-$(PACKAGESUFFIX)
  82. fvzip: rtl_clean
  83. $(MAKE) -C packages api_clean
  84. $(MAKE) -C packages fv_clean
  85. $(MAKE) -C packages fv_all
  86. $(MAKE) -C packages api_zipinstall ZIPNAME=fv-$(PACKAGESUFFIX)
  87. $(MAKE) -C packages fv_zipinstalladd ZIPNAME=fv-$(PACKAGESUFFIX)
  88. gtkzip: rtl_clean
  89. $(MAKE) -C packages gtk_clean
  90. $(MAKE) -C packages gtk_all
  91. $(MAKE) -C packages gtk_zipinstall ZIPNAME=gtk-$(PACKAGESUFFIX)
  92. compilerzip: compiler_clean rtl_clean
  93. $(MAKE) rtl_all
  94. $(MAKE) compiler_all
  95. $(MAKE) compiler_zipinstall ZIPTARGET=quickinstall ZIPNAME=compiler-$(PACKAGESUFFIX)
  96. $(MAKE) rtl_zipinstalladd ZIPNAME=compiler-$(PACKAGESUFFIX)
  97. fclzip: rtl_clean fcl_clean
  98. $(MAKE) fcl_all
  99. $(MAKE) fcl_zipinstall ZIPNAME=fcl-$(PACKAGESUFFIX)
  100. utilszip: utils_clean rtl_clean fcl_clean
  101. $(MAKE) utils_all
  102. $(MAKE) utils_zipinstall ZIPNAME=utils-$(PACKAGESUFFIX)