rules 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
  1. #!/usr/bin/make -f
  2. # debian/rules for Free Pascal 0.99.12
  3. # Don't load the system makefile.fpc
  4. export FPCMAKE=
  5. export FPCDIR=
  6. # Get current dir
  7. PWD=$(shell pwd)
  8. BUILD_DIR=$(PWD)/debian/build
  9. INSTALL_DIR=$(PWD)/debian/tmp
  10. NEWPP=$(PWD)/compiler/ppc386
  11. #export DH_VERBOSE=1
  12. ###################
  13. # Binary
  14. #
  15. buildbin: buildbin-stamp
  16. buildbin-stamp:
  17. @echo "--- Building"
  18. dh_testdir
  19. # First make a new Compiler and RTL using a make cycle
  20. $(MAKE) compiler_cycle
  21. $(MAKE) utils_all PP=$(NEWPP)
  22. $(MAKE) fcl_all PP=$(NEWPP)
  23. $(MAKE) gtk_all PP=$(NEWPP)
  24. $(MAKE) api_all PP=$(NEWPP)
  25. $(MAKE) fv_all PP=$(NEWPP)
  26. $(MAKE) -C packages all PP=$(NEWPP) RELEASE=1
  27. touch buildbin-stamp
  28. cleanbin:
  29. @echo "--- Cleaning"
  30. dh_testdir
  31. dh_testroot
  32. rm -f buildbin-stamp installbin-stamp
  33. rm -rf ${BUILD_DIR}
  34. $(MAKE) compiler_clean
  35. $(MAKE) rtl_clean
  36. $(MAKE) utils_clean
  37. $(MAKE) fcl_clean
  38. $(MAKE) gtk_clean
  39. $(MAKE) api_clean
  40. $(MAKE) fv_clean
  41. $(MAKE) -C packages clean
  42. dh_clean
  43. installbin: installbin-stamp
  44. installbin-stamp: buildbin
  45. @echo "--- Installing"
  46. dh_testdir
  47. dh_testroot
  48. dh_clean
  49. # Specify the compiler to use so installing will do correctly
  50. $(MAKE) compiler_install PP=$(NEWPP) PREFIXINSTALLDIR=${INSTALL_DIR}/usr
  51. $(MAKE) rtl_install PP=$(NEWPP) PREFIXINSTALLDIR=${INSTALL_DIR}/usr
  52. $(MAKE) utils_install PP=$(NEWPP) PREFIXINSTALLDIR=${INSTALL_DIR}/usr
  53. $(MAKE) base_install PP=$(NEWPP) PREFIXINSTALLDIR=${INSTALL_DIR}/usr
  54. $(MAKE) man_install PP=$(NEWPP) PREFIXINSTALLDIR=${INSTALL_DIR}/usr
  55. $(MAKE) demo_install PP=$(NEWPP) PREFIXINSTALLDIR=${INSTALL_DIR}/usr
  56. $(MAKE) fcl_install PP=$(NEWPP) PREFIXINSTALLDIR=${INSTALL_DIR}/usr
  57. $(MAKE) gtk_install PP=$(NEWPP) PREFIXINSTALLDIR=${INSTALL_DIR}/usr
  58. $(MAKE) api_install PP=$(NEWPP) PREFIXINSTALLDIR=${INSTALL_DIR}/usr
  59. $(MAKE) fv_install PP=$(NEWPP) PREFIXINSTALLDIR=${INSTALL_DIR}/usr
  60. $(MAKE) -C packages install PP=$(NEWPP) PREFIXINSTALLDIR=${INSTALL_DIR}/usr
  61. touch installbin-stamp
  62. ###################
  63. # Documentation
  64. #
  65. builddoc: builddoc-stamp
  66. builddoc-stamp:
  67. @echo "--- Building Documentation"
  68. dh_testdir
  69. $(MAKE) -C docs html
  70. touch builddoc-stamp
  71. installdoc: installdoc-stamp
  72. installdoc-stamp: builddoc
  73. @echo "--- Installing Documentation"
  74. dh_testdir
  75. dh_testroot
  76. dh_clean
  77. $(MAKE) -C docs install DOCINSTALLDIR=${INSTALL_DIR}/usr/doc/fpc/0.99.12/
  78. touch installdoc-stamp
  79. cleandoc:
  80. @echo "--- Cleaning Documentation"
  81. dh_testdir
  82. dh_testroot
  83. rm -f builddoc-stamp installdoc-stamp
  84. rm -rf ${BUILD_DIR}
  85. $(MAKE) -C docs clean
  86. ###################
  87. # Generic
  88. #
  89. build: buildbin builddoc
  90. install: installbin installdoc
  91. clean: cleanbin cleandoc
  92. ###################
  93. # Deb building
  94. #
  95. binary-indep: fp-docs \
  96. binary-arch: fp-compiler \
  97. fp-rtl \
  98. fp-utils \
  99. fp-fcl \
  100. fp-gtk \
  101. fp-api \
  102. fp-fv \
  103. fp-extra
  104. fp-compiler: installbin
  105. @echo "--- Building: $@"
  106. dh_installdocs -p$@ -P$(BUILD_DIR)/$@
  107. dh_installchangelogs -p$@ -P$(BUILD_DIR)/$@
  108. dh_installexamples -p$@ -P$(BUILD_DIR)/$@
  109. dh_movefiles -p$@ -P$(BUILD_DIR)/$@
  110. dh_compress -p$@ -P$(BUILD_DIR)/$@
  111. dh_fixperms -p$@ -P$(BUILD_DIR)/$@
  112. dh_installdeb -p$@ -P$(BUILD_DIR)/$@
  113. # dh_shlibdeps -p$@ -P$(BUILD_DIR)/$@
  114. dh_gencontrol -p$@ -P$(BUILD_DIR)/$@
  115. dh_md5sums -p$@ -P$(BUILD_DIR)/$@
  116. dh_builddeb -p$@ -P$(BUILD_DIR)/$@
  117. fp-utils: installbin
  118. @echo "--- Building: $@"
  119. dh_installdocs -p$@ -P$(BUILD_DIR)/$@
  120. dh_installchangelogs -p$@ -P$(BUILD_DIR)/$@
  121. dh_undocumented -p$@ -P$(BUILD_DIR)/$@ h2pas.1
  122. dh_movefiles -p$@ -P$(BUILD_DIR)/$@
  123. dh_compress -p$@ -P$(BUILD_DIR)/$@
  124. dh_fixperms -p$@ -P$(BUILD_DIR)/$@
  125. dh_installdeb -p$@ -P$(BUILD_DIR)/$@
  126. # dh_shlibdeps -p$@ -P$(BUILD_DIR)/$@
  127. dh_gencontrol -p$@ -P$(BUILD_DIR)/$@
  128. dh_md5sums -p$@ -P$(BUILD_DIR)/$@
  129. dh_builddeb -p$@ -P$(BUILD_DIR)/$@
  130. fp-rtl fp-fcl fp-gtk fp-fv fp-api fp-extra: installbin
  131. @echo "--- Building: $@"
  132. dh_installdocs -p$@ -P$(BUILD_DIR)/$@
  133. dh_installchangelogs -p$@ -P$(BUILD_DIR)/$@
  134. dh_installexamples -p$@ -P$(BUILD_DIR)/$@
  135. dh_movefiles -p$@ -P$(BUILD_DIR)/$@
  136. dh_compress -p$@ -P$(BUILD_DIR)/$@
  137. dh_fixperms -p$@ -P$(BUILD_DIR)/$@
  138. dh_installdeb -p$@ -P$(BUILD_DIR)/$@
  139. # dh_shlibdeps -p$@ -P$(BUILD_DIR)/$@
  140. dh_gencontrol -p$@ -P$(BUILD_DIR)/$@
  141. dh_md5sums -p$@ -P$(BUILD_DIR)/$@
  142. dh_builddeb -p$@ -P$(BUILD_DIR)/$@
  143. fp-docs: installdoc
  144. @echo "--- Building: $@"
  145. dh_installdocs -p$@ -P$(BUILD_DIR)/$@
  146. dh_installchangelogs -p$@ -P$(BUILD_DIR)/$@
  147. dh_movefiles -p$@ -P$(BUILD_DIR)/$@
  148. dh_compress -p$@ -P$(BUILD_DIR)/$@
  149. dh_fixperms -p$@ -P$(BUILD_DIR)/$@
  150. dh_installdeb -p$@ -P$(BUILD_DIR)/$@
  151. dh_gencontrol -p$@ -P$(BUILD_DIR)/$@
  152. dh_md5sums -p$@ -P$(BUILD_DIR)/$@
  153. dh_builddeb -p$@ -P$(BUILD_DIR)/$@
  154. source diff:
  155. @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
  156. binary: binary-indep binary-arch
  157. .PHONY: build clean binary-indep binary-arch binary