Makefile 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. # $TOG: Makefile /main/15 1999/10/12 09:33:30 mgreess $
  2. RELEASE = Release 2.2.3
  3. PRODUCT = CDE
  4. SHELL = /bin/sh
  5. RM = rm -f
  6. MV = mv
  7. MAKE = make
  8. NMAKE = nmake
  9. WORLDOPTS =
  10. WIN32WORLDOPTS = -i
  11. TOP = .
  12. CURRENT_DIR = .
  13. CONFIGSRC = $(TOP)/config
  14. IMAKESRC = $(CONFIGSRC)/imake
  15. DEPENDSRC = $(CONFIGSRC)/makedepend
  16. DEPENDTOP = ../..
  17. IMAKETOP = ../..
  18. IRULESRC = $(CONFIGSRC)/cf
  19. IMAKE = $(IMAKESRC)/imake
  20. IMAKE_CMD = $(IMAKE) -I$(IRULESRC) $(IMAKE_DEFINES)
  21. MAKE_OPTS = -f xmakefile
  22. MAKE_CMD = $(MAKE) $(MAKE_OPTS)
  23. NMAKE_CMD = $(NMAKE) $(MAKE_OPTS)
  24. FLAGS = $(MFLAGS) -f Makefile.ini BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"
  25. all:
  26. @$(MAKE_CMD) xmakefile-exists || $(MAKE) all-initial
  27. @$(MAKE_CMD) $@
  28. all-initial:
  29. @echo "Please begin by using make World or make Makefile. You may"
  30. @echo "find it necessary to set the make variable BOOTSTRAPCFLAGS in"
  31. @echo "order to compile imake. One common example is"
  32. @echo "\"BOOTSTRAPCFLAGS=-I<dir>\", where <dir> is the top of your"
  33. @echo "X11R6 source tree. Remember to check the configuration"
  34. @echo "parameters in the config directory."
  35. @echo
  36. @echo "We recommend that you read the release notes carefully before"
  37. @echo "proceeding; they can be found under the doc directory. If"
  38. @echo "the top-level Makefile gets corrupted, copy Makefile.ini to"
  39. @echo "Makefile and try again. Do not name your log file make.log or"
  40. @echo "it will be deleted."
  41. World:
  42. @echo ""
  43. @echo "Building $(RELEASE) of $(PRODUCT)"
  44. @echo ""
  45. @case "x$(BOOTSTRAPCFLAGS)" in x) \
  46. echo I hope you checked the configuration parameters in $(IRULESRC) ; \
  47. echo to see if you need to pass BOOTSTRAPCFLAGS. ; \
  48. echo "" ; \
  49. ;; esac;
  50. @date
  51. @echo ""
  52. cd $(IMAKESRC) && $(MAKE) $(FLAGS) clean
  53. $(MAKE) $(MFLAGS) Makefile.boot
  54. $(MAKE_CMD) $(MFLAGS) VerifyOS
  55. $(MAKE_CMD) $(MFLAGS) Makefiles
  56. $(MAKE_CMD) $(MFLAGS) Makefiles.doc
  57. $(MAKE_CMD) $(MFLAGS) clean
  58. $(MAKE_CMD) $(MFLAGS) clean.doc
  59. $(MAKE_CMD) $(MFLAGS) includes
  60. $(MAKE_CMD) $(MFLAGS) includes.doc
  61. $(MAKE_CMD) $(MFLAGS) depend
  62. $(MAKE_CMD) $(MFLAGS) depend.doc
  63. $(MAKE_CMD) $(MFLAGS) $(WORLDOPTS)
  64. $(MAKE_CMD) $(MFLAGS) $(WORLDOPTS) all.doc
  65. @echo ""
  66. @date
  67. @echo ""
  68. @echo "Full build of $(RELEASE) of $(PRODUCT) complete."
  69. @echo ""
  70. World.dev:
  71. @echo ""
  72. @echo "Building $(RELEASE) of $(PRODUCT) excluding DOC"
  73. @echo ""
  74. @case "x$(BOOTSTRAPCFLAGS)" in x) \
  75. echo I hope you checked the configuration parameters in $(IRULESRC) ; \
  76. echo to see if you need to pass BOOTSTRAPCFLAGS. ; \
  77. echo "" ; \
  78. ;; esac;
  79. @date
  80. @echo ""
  81. cd $(IMAKESRC) && $(MAKE) $(FLAGS) clean
  82. $(MAKE) $(MFLAGS) Makefile.boot
  83. $(MAKE_CMD) $(MFLAGS) VerifyOS
  84. $(MAKE_CMD) $(MFLAGS) Makefiles
  85. $(MAKE_CMD) $(MFLAGS) clean
  86. $(MAKE_CMD) $(MFLAGS) includes
  87. $(MAKE_CMD) $(MFLAGS) depend
  88. $(MAKE_CMD) $(MFLAGS) $(WORLDOPTS)
  89. @echo ""
  90. @date
  91. @echo ""
  92. @echo "Full build of $(RELEASE) of $(PRODUCT) excluding DOC complete."
  93. @echo ""
  94. World.doc:
  95. @echo ""
  96. @echo "Building $(RELEASE) of $(PRODUCT) DOC"
  97. @echo ""
  98. @case "x$(BOOTSTRAPCFLAGS)" in x) \
  99. echo I hope you checked the configuration parameters in $(IRULESRC) ; \
  100. echo to see if you need to pass BOOTSTRAPCFLAGS. ; \
  101. echo "" ; \
  102. ;; esac;
  103. @date
  104. @echo ""
  105. cd $(IMAKESRC) && $(MAKE) $(FLAGS) clean
  106. $(MAKE) $(MFLAGS) Makefile.boot
  107. $(MAKE_CMD) $(MFLAGS) VerifyOS
  108. $(MAKE_CMD) $(MFLAGS) Makefiles.doc
  109. $(MAKE_CMD) $(MFLAGS) clean.doc
  110. $(MAKE_CMD) $(MFLAGS) includes.doc
  111. $(MAKE_CMD) $(MFLAGS) depend.doc
  112. $(MAKE_CMD) $(MFLAGS) $(WORLDOPTS) all.doc
  113. @echo ""
  114. @date
  115. @echo ""
  116. @echo "Full build of $(RELEASE) of $(PRODUCT) DOC complete."
  117. @echo ""
  118. .PRECIOUS: Makefile
  119. # This is just a sequence of bootstrapping steps we have to do.
  120. # The steps are listed as separate targets so clearmake can wink in
  121. # the Makefile.proto files.
  122. Makefile.boot: imake.proto $(DEPENDSRC)/Makefile.proto depend.bootstrap $(IMAKESRC)/Makefile.proto imake.bootstrap $(DEPENDSRC)/proto.clean
  123. imake.proto:
  124. cd $(IMAKESRC) && $(MAKE) $(FLAGS)
  125. $(RM) $(DEPENDSRC)/Makefile.proto
  126. $(DEPENDSRC)/Makefile.proto:
  127. $(IMAKE_CMD) -s $(DEPENDSRC)/Makefile.proto -f $(DEPENDSRC)/Imakefile -DTOPDIR=$(DEPENDTOP) -DCURDIR=$(DEPENDSRC)
  128. depend.bootstrap:
  129. cd $(DEPENDSRC) && $(RM) -r Makefile Makefile.dep makedepend *.o bootstrap
  130. cd $(DEPENDSRC) && $(MAKE) -f Makefile.proto bootstrap
  131. $(IMAKESRC)/Makefile.proto:
  132. $(IMAKE_CMD) -s $(IMAKESRC)/Makefile.proto -f $(IMAKESRC)/Imakefile -DTOPDIR=$(IMAKETOP) -DCURDIR=$(IMAKESRC)
  133. imake.bootstrap:
  134. cd $(IMAKESRC) && $(MAKE) -f Makefile.proto bootstrapdepend
  135. cd $(IMAKESRC) && $(MAKE) $(FLAGS) bootstrap
  136. cd $(IMAKESRC) && $(MAKE) -f Makefile.proto all
  137. -@if [ -f xmakefile ]; then set -x; \
  138. $(RM) xmakefile.bak; $(MV) xmakefile xmakefile.bak; \
  139. else exit 0; fi
  140. $(MAKE) $(MFLAGS) xmakefile
  141. $(DEPENDSRC)/proto.clean:
  142. cd $(DEPENDSRC) && $(RM) -r Makefile.proto
  143. Makefile::
  144. $(MAKE) $(MFLAGS) xmakefile
  145. xmakefile: Imakefile
  146. $(IMAKE_CMD) -s xmakefile -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)
  147. World.Win32:
  148. @echo :
  149. @echo Building $(RELEASE) of $(PRODUCT).
  150. @echo :
  151. @echo :
  152. cd $(IMAKESRC)
  153. $(NMAKE) -f Makefile.ini clean.Win32
  154. $(NMAKE) -f Makefile.ini imake.exe
  155. cd ..\..
  156. -if exist xmakefile.bak del xmakefile.bak
  157. -if exist xmakefile ren xmakefile xmakefile.bak
  158. $(IMAKE:/=\) -s xmakefile -I$(IRULESRC) $(IMAKE_DEFINES) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)
  159. $(NMAKE_CMD) $(MFLAGS) VerifyOS
  160. $(NMAKE_CMD) $(MFLAGS) Makefiles
  161. $(NMAKE_CMD) $(MFLAGS) clean
  162. $(NMAKE_CMD) $(MFLAGS) includes
  163. $(NMAKE_CMD) $(MFLAGS) depend
  164. $(NMAKE_CMD) $(MFLAGS) $(WIN32WORLDOPTS)
  165. @echo :
  166. @echo :
  167. @echo Full build of $(RELEASE) of $(PRODUCT) complete.
  168. @echo :
  169. # don't allow any default rules in this Makefile
  170. .SUFFIXES:
  171. # a copy of every rule that might be invoked at top level
  172. clean:
  173. $(MAKE_CMD) $@
  174. dangerous_strip_clean:
  175. $(MAKE_CMD) $@
  176. depend:
  177. $(MAKE_CMD) $@
  178. Everything:
  179. $(MAKE_CMD) $@
  180. external.ln:
  181. $(MAKE_CMD) $@
  182. includes:
  183. $(MAKE_CMD) $@
  184. install.ln:
  185. $(MAKE_CMD) $@
  186. install.man:
  187. $(MAKE_CMD) $@
  188. install:
  189. $(MAKE_CMD) $@
  190. Makefiles:
  191. $(MAKE_CMD) $@
  192. man_keywords:
  193. $(MAKE_CMD) $@
  194. tags:
  195. $(MAKE_CMD) $@
  196. VerifyOS:
  197. $(MAKE_CMD) $@
  198. # dev versions
  199. Everything.dev:
  200. $(MAKE_CMD) $@
  201. # doc versions
  202. clean.doc:
  203. $(MAKE_CMD) $@
  204. depend.doc:
  205. $(MAKE_CMD) $@
  206. Everything.doc:
  207. $(MAKE_CMD) $@
  208. includes.doc:
  209. $(MAKE_CMD) $@
  210. install.man.doc:
  211. $(MAKE_CMD) $@
  212. install.doc:
  213. $(MAKE_CMD) $@
  214. Makefiles.doc:
  215. $(MAKE_CMD) $@
  216. tags.doc:
  217. $(MAKE_CMD) $@