Makefile.fpc 3.2 KB

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