Clone of mesa.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Makefile 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376
  1. # Top-level Mesa makefile
  2. TOP = .
  3. SUBDIRS = src progs
  4. default: $(TOP)/configs/current
  5. @for dir in $(SUBDIRS) ; do \
  6. (cd $$dir ; $(MAKE)) || exit 1 ; \
  7. done
  8. doxygen:
  9. (cd doxygen ; make) ; \
  10. clean:
  11. @for dir in $(SUBDIRS) ; do \
  12. (cd $$dir ; $(MAKE) clean) ; \
  13. done
  14. realclean:
  15. touch $(TOP)/configs/current
  16. $(MAKE) clean
  17. -rm -rf lib*
  18. -rm -f $(TOP)/configs/current
  19. install:
  20. @echo "Installing"
  21. $(TOP)/bin/installmesa
  22. # If there's no current configuration file
  23. $(TOP)/configs/current:
  24. @echo
  25. @echo
  26. @echo "Please choose a configuration from the following list:"
  27. @ls -1 $(TOP)/configs | grep -v "current\|default\|CVS"
  28. @echo
  29. @echo "Then type 'make <config>' (ex: 'make linux-x86')"
  30. @echo "(ignore the following error message)"
  31. @exit 1
  32. # Rules to set/install a specific build configuration
  33. aix \
  34. aix-64 \
  35. aix-gcc \
  36. aix-static \
  37. beos \
  38. darwin \
  39. darwin-static \
  40. freebsd \
  41. hpux10 \
  42. hpux10-gcc \
  43. hpux10-static \
  44. hpux11-32 \
  45. hpux11-32-static \
  46. hpux11-32-static-nothreads \
  47. hpux11-64 \
  48. hpux11-64-static \
  49. hpux9 \
  50. hpux9-gcc \
  51. irix6-64 \
  52. irix6-64-static \
  53. irix6-n32 \
  54. irix6-n32-static \
  55. irix6-o32 \
  56. irix6-o32-static \
  57. linux \
  58. linux-alpha \
  59. linux-alpha-static \
  60. linux-debug \
  61. linux-dri \
  62. linux-dri-x86 \
  63. linux-dri-x86-64 \
  64. linux-glide \
  65. linux-icc \
  66. linux-icc-static \
  67. linux-osmesa16 \
  68. linux-osmesa16-static \
  69. linux-osmesa32 \
  70. linux-ppc \
  71. linux-ppc-static \
  72. linux-solo \
  73. linux-solo-x86 \
  74. linux-solo-ia64 \
  75. linux-sparc \
  76. linux-sparc5 \
  77. linux-static \
  78. linux-ultrasparc \
  79. linux-tcc \
  80. linux-x86 \
  81. linux-x86-debug \
  82. linux-x86-64 \
  83. linux-x86-64-static \
  84. linux-x86-glide \
  85. linux-x86-static \
  86. netbsd \
  87. openbsd \
  88. osf1 \
  89. solaris-x86 \
  90. solaris-x86-gcc \
  91. sunos4 \
  92. sunos4-gcc \
  93. sunos4-static \
  94. sunos5 \
  95. sunos5-gcc \
  96. sunos5-smp \
  97. ultrix-gcc:
  98. (cd configs && rm -f current && ln -s $@ current)
  99. $(MAKE) default
  100. # Rules for making release tarballs
  101. DIRECTORY = Mesa-6.2
  102. LIB_NAME = MesaLib-6.2
  103. DEMO_NAME = MesaDemos-6.2
  104. LIB_FILES = \
  105. $(DIRECTORY)/Makefile* \
  106. $(DIRECTORY)/descrip.mms \
  107. $(DIRECTORY)/mms-config. \
  108. $(DIRECTORY)/Mesa.dsw \
  109. $(DIRECTORY)/bin/mklib \
  110. $(DIRECTORY)/bin/installmesa \
  111. $(DIRECTORY)/configs/[a-z]* \
  112. $(DIRECTORY)/docs/*.html \
  113. $(DIRECTORY)/docs/COPYING \
  114. $(DIRECTORY)/docs/INSTALL.GNU \
  115. $(DIRECTORY)/docs/README.* \
  116. $(DIRECTORY)/docs/RELNOTES* \
  117. $(DIRECTORY)/docs/VERSIONS \
  118. $(DIRECTORY)/docs/*.spec \
  119. $(DIRECTORY)/include/GL/internal/glcore.h \
  120. $(DIRECTORY)/include/GL/dmesa.h \
  121. $(DIRECTORY)/include/GL/amesa.h \
  122. $(DIRECTORY)/include/GL/fxmesa.h \
  123. $(DIRECTORY)/include/GL/ggimesa.h \
  124. $(DIRECTORY)/include/GL/gl.h \
  125. $(DIRECTORY)/include/GL/glext.h \
  126. $(DIRECTORY)/include/GL/gl_mangle.h \
  127. $(DIRECTORY)/include/GL/glu.h \
  128. $(DIRECTORY)/include/GL/glu_mangle.h \
  129. $(DIRECTORY)/include/GL/glx.h \
  130. $(DIRECTORY)/include/GL/glxext.h \
  131. $(DIRECTORY)/include/GL/glx_mangle.h \
  132. $(DIRECTORY)/include/GL/mesa_wgl.h \
  133. $(DIRECTORY)/include/GL/mglmesa.h \
  134. $(DIRECTORY)/include/GL/osmesa.h \
  135. $(DIRECTORY)/include/GL/svgamesa.h \
  136. $(DIRECTORY)/include/GL/ugl*.h \
  137. $(DIRECTORY)/include/GL/vms_x_fix.h \
  138. $(DIRECTORY)/include/GL/wmesa.h \
  139. $(DIRECTORY)/include/GL/xmesa.h \
  140. $(DIRECTORY)/include/GL/xmesa_x.h \
  141. $(DIRECTORY)/include/GL/xmesa_xf86.h \
  142. $(DIRECTORY)/src/Makefile \
  143. $(DIRECTORY)/src/descrip.mms \
  144. $(DIRECTORY)/src/mesa/Makefile* \
  145. $(DIRECTORY)/src/mesa/sources \
  146. $(DIRECTORY)/src/mesa/descrip.mms \
  147. $(DIRECTORY)/src/mesa/depend \
  148. $(DIRECTORY)/src/mesa/main/*.[chS] \
  149. $(DIRECTORY)/src/mesa/main/main.dsp \
  150. $(DIRECTORY)/src/mesa/main/descrip.mms \
  151. $(DIRECTORY)/src/mesa/glapi/*.[chS] \
  152. $(DIRECTORY)/src/mesa/glapi/glapi.dsp \
  153. $(DIRECTORY)/src/mesa/glapi/descrip.mms \
  154. $(DIRECTORY)/src/mesa/array_cache/*.[ch] \
  155. $(DIRECTORY)/src/mesa/array_cache/array_cache.dsp \
  156. $(DIRECTORY)/src/mesa/array_cache/descrip.mms \
  157. $(DIRECTORY)/src/mesa/math/*.[ch] \
  158. $(DIRECTORY)/src/mesa/math/math.dsp \
  159. $(DIRECTORY)/src/mesa/math/descrip.mms \
  160. $(DIRECTORY)/src/mesa/shader/*.[ch] \
  161. $(DIRECTORY)/src/mesa/shader/shader.dsp \
  162. $(DIRECTORY)/src/mesa/shader/descrip.mms \
  163. $(DIRECTORY)/src/mesa/swrast/*.[ch] \
  164. $(DIRECTORY)/src/mesa/swrast/swrast.dsp \
  165. $(DIRECTORY)/src/mesa/swrast/descrip.mms \
  166. $(DIRECTORY)/src/mesa/swrast_setup/*.[ch] \
  167. $(DIRECTORY)/src/mesa/swrast_setup/swrast_setup.dsp \
  168. $(DIRECTORY)/src/mesa/swrast_setup/descrip.mms \
  169. $(DIRECTORY)/src/mesa/tnl/*.[chS] \
  170. $(DIRECTORY)/src/mesa/tnl/tnl.dsp \
  171. $(DIRECTORY)/src/mesa/tnl/descrip.mms \
  172. $(DIRECTORY)/src/mesa/tnl_dd/*.[ch] \
  173. $(DIRECTORY)/src/mesa/tnl_dd/imm/*.[ch] \
  174. $(DIRECTORY)/src/mesa/tnl_dd/imm/NOTES.imm \
  175. $(DIRECTORY)/src/mesa/drivers/beos/*.cpp \
  176. $(DIRECTORY)/src/mesa/drivers/beos/Makefile \
  177. $(DIRECTORY)/src/mesa/drivers/common/*.[ch] \
  178. $(DIRECTORY)/src/mesa/drivers/common/descrip.mms \
  179. $(DIRECTORY)/src/mesa/drivers/dos/*.[chS] \
  180. $(DIRECTORY)/src/mesa/drivers/dri/common/*.[ch] \
  181. $(DIRECTORY)/src/mesa/drivers/fbdev/glfbdev.c \
  182. $(DIRECTORY)/src/mesa/drivers/glide/*.[ch] \
  183. $(DIRECTORY)/src/mesa/drivers/glide/*.def \
  184. $(DIRECTORY)/src/mesa/drivers/ggi/*.[ch] \
  185. $(DIRECTORY)/src/mesa/drivers/ggi/ggimesa.conf.in \
  186. $(DIRECTORY)/src/mesa/drivers/ggi/default/*.c \
  187. $(DIRECTORY)/src/mesa/drivers/ggi/default/genkgi.conf.in \
  188. $(DIRECTORY)/src/mesa/drivers/ggi/display/*.c \
  189. $(DIRECTORY)/src/mesa/drivers/ggi/display/fbdev.conf.in \
  190. $(DIRECTORY)/src/mesa/drivers/ggi/include/ggi/mesa/*.h \
  191. $(DIRECTORY)/src/mesa/drivers/osmesa/Makefile.win \
  192. $(DIRECTORY)/src/mesa/drivers/osmesa/descrip.mms \
  193. $(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.def \
  194. $(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.dsp \
  195. $(DIRECTORY)/src/mesa/drivers/osmesa/*.[ch] \
  196. $(DIRECTORY)/src/mesa/drivers/svga/*.[ch] \
  197. $(DIRECTORY)/src/mesa/drivers/windows/*/*.[ch] \
  198. $(DIRECTORY)/src/mesa/drivers/windows/*/*.def \
  199. $(DIRECTORY)/src/mesa/drivers/windows/*/*.dsp \
  200. $(DIRECTORY)/src/mesa/drivers/x11/descrip.mms \
  201. $(DIRECTORY)/src/mesa/drivers/x11/*.[ch] \
  202. $(DIRECTORY)/src/mesa/sparc/*.[chS] \
  203. $(DIRECTORY)/src/mesa/x86/Makefile \
  204. $(DIRECTORY)/src/mesa/x86/*.[ch] \
  205. $(DIRECTORY)/src/mesa/x86/*.S \
  206. $(DIRECTORY)/src/glu/Makefile \
  207. $(DIRECTORY)/src/glu/descrip.mms \
  208. $(DIRECTORY)/src/glu/sgi/Makefile \
  209. $(DIRECTORY)/src/glu/sgi/Makefile.win \
  210. $(DIRECTORY)/src/glu/sgi/Makefile.DJ \
  211. $(DIRECTORY)/src/glu/sgi/cc*.txt \
  212. $(DIRECTORY)/src/glu/sgi/glu.def \
  213. $(DIRECTORY)/src/glu/sgi/glu.dsp \
  214. $(DIRECTORY)/src/glu/sgi/dummy.cc \
  215. $(DIRECTORY)/src/glu/sgi/descrip.mms \
  216. $(DIRECTORY)/src/glu/sgi/mesaglu.opt \
  217. $(DIRECTORY)/src/glu/sgi/include/gluos.h \
  218. $(DIRECTORY)/src/glu/sgi/libnurbs/interface/*.h \
  219. $(DIRECTORY)/src/glu/sgi/libnurbs/interface/*.cc \
  220. $(DIRECTORY)/src/glu/sgi/libnurbs/internals/*.h \
  221. $(DIRECTORY)/src/glu/sgi/libnurbs/internals/*.cc \
  222. $(DIRECTORY)/src/glu/sgi/libnurbs/nurbtess/*.h \
  223. $(DIRECTORY)/src/glu/sgi/libnurbs/nurbtess/*.cc \
  224. $(DIRECTORY)/src/glu/sgi/libtess/README \
  225. $(DIRECTORY)/src/glu/sgi/libtess/alg-outline \
  226. $(DIRECTORY)/src/glu/sgi/libtess/*.[ch] \
  227. $(DIRECTORY)/src/glu/sgi/libutil/*.[ch] \
  228. $(DIRECTORY)/src/glu/mesa/README[12] \
  229. $(DIRECTORY)/src/glu/mesa/Makefile* \
  230. $(DIRECTORY)/src/glu/mesa/descrip.mms \
  231. $(DIRECTORY)/src/glu/mesa/mms_depend \
  232. $(DIRECTORY)/src/glu/mesa/*.def \
  233. $(DIRECTORY)/src/glu/mesa/depend \
  234. $(DIRECTORY)/src/glu/mesa/*.[ch] \
  235. $(DIRECTORY)/src/glw/*.[ch] \
  236. $(DIRECTORY)/src/glw/Makefile* \
  237. $(DIRECTORY)/src/glw/README \
  238. $(DIRECTORY)/src/glw/depend \
  239. $(DIRECTORY)/progs/Makefile \
  240. $(DIRECTORY)/progs/util/README \
  241. $(DIRECTORY)/progs/util/*.[ch] \
  242. $(DIRECTORY)/progs/util/sampleMakefile \
  243. $(DIRECTORY)/vms/analyze_map.com \
  244. $(DIRECTORY)/vms/xlib.opt \
  245. $(DIRECTORY)/vms/xlib_share.opt
  246. DEMO_FILES = \
  247. $(DIRECTORY)/include/GL/glut.h \
  248. $(DIRECTORY)/include/GL/glutf90.h \
  249. $(DIRECTORY)/src/glut/glx/Makefile* \
  250. $(DIRECTORY)/src/glut/glx/depend \
  251. $(DIRECTORY)/src/glut/glx/*def \
  252. $(DIRECTORY)/src/glut/glx/descrip.mms \
  253. $(DIRECTORY)/src/glut/glx/mms_depend \
  254. $(DIRECTORY)/src/glut/glx/glut.dsp \
  255. $(DIRECTORY)/src/glut/glx/*.[ch] \
  256. $(DIRECTORY)/src/glut/beos/*.[ch] \
  257. $(DIRECTORY)/src/glut/beos/*.cpp \
  258. $(DIRECTORY)/src/glut/beos/Makefile \
  259. $(DIRECTORY)/src/glut/dos/*.[ch] \
  260. $(DIRECTORY)/src/glut/dos/Makefile.DJ \
  261. $(DIRECTORY)/src/glut/dos/PC_HW/*.[chS] \
  262. $(DIRECTORY)/src/glut/ggi/*.[ch] \
  263. $(DIRECTORY)/src/glut/ggi/Makefile \
  264. $(DIRECTORY)/progs/beos/*.cpp \
  265. $(DIRECTORY)/progs/beos/Makefile \
  266. $(DIRECTORY)/progs/images/*.rgb \
  267. $(DIRECTORY)/progs/images/*.rgba \
  268. $(DIRECTORY)/progs/demos/Makefile* \
  269. $(DIRECTORY)/progs/demos/descrip.mms \
  270. $(DIRECTORY)/progs/demos/*.[ch] \
  271. $(DIRECTORY)/progs/demos/*.cxx \
  272. $(DIRECTORY)/progs/demos/*.dat \
  273. $(DIRECTORY)/progs/demos/README \
  274. $(DIRECTORY)/progs/demos/Windows/*.dsp \
  275. $(DIRECTORY)/progs/demos/Windows/*.dsw \
  276. $(DIRECTORY)/progs/xdemos/Makefile* \
  277. $(DIRECTORY)/progs/xdemos/descrip.mms \
  278. $(DIRECTORY)/progs/xdemos/*.[chf] \
  279. $(DIRECTORY)/progs/redbook/Makefile* \
  280. $(DIRECTORY)/progs/redbook/README \
  281. $(DIRECTORY)/progs/redbook/*.[ch] \
  282. $(DIRECTORY)/progs/samples/Makefile* \
  283. $(DIRECTORY)/progs/samples/README \
  284. $(DIRECTORY)/progs/samples/*.c \
  285. $(DIRECTORY)/progs/windml/Makefile.ugl \
  286. $(DIRECTORY)/progs/windml/*.c \
  287. $(DIRECTORY)/progs/windml/*.bmp \
  288. $(DIRECTORY)/progs/ggi/*.c
  289. DRI_FILES = \
  290. $(DIRECTORY)/src/glx/Makefile \
  291. $(DIRECTORY)/src/glx/mini/*.[ch] \
  292. $(DIRECTORY)/src/glx/mini/example.miniglx.conf \
  293. $(DIRECTORY)/src/glx/mini/NOTES \
  294. $(DIRECTORY)/src/mesa/drivers/dri/Makefile \
  295. $(DIRECTORY)/src/mesa/drivers/dri/Makefile.template \
  296. $(DIRECTORY)/src/mesa/drivers/dri/common/*.[ch] \
  297. $(DIRECTORY)/src/mesa/drivers/dri/dri_client/imports/*.h \
  298. $(DIRECTORY)/src/mesa/drivers/dri/*/*.[ch] \
  299. $(DIRECTORY)/src/mesa/drivers/dri/*/depend \
  300. $(DIRECTORY)/src/mesa/drivers/dri/*/Makefile \
  301. $(DIRECTORY)/src/mesa/drivers/dri/*/Doxyfile \
  302. $(DIRECTORY)/src/mesa/drivers/dri/*/server/*.[ch]
  303. # Everything for new a Mesa release:
  304. tarballs: lib_gz demo_gz lib_bz2 demo_bz2 lib_zip demo_zip md5
  305. lib_gz:
  306. rm -f configs/current ; \
  307. cd .. ; \
  308. tar -cvf $(LIB_NAME).tar $(LIB_FILES) ; \
  309. gzip $(LIB_NAME).tar ; \
  310. mv $(LIB_NAME).tar.gz $(DIRECTORY)
  311. demo_gz:
  312. cd .. ; \
  313. tar -cvf $(DEMO_NAME).tar $(DEMO_FILES) ; \
  314. gzip $(DEMO_NAME).tar ; \
  315. mv $(DEMO_NAME).tar.gz $(DIRECTORY)
  316. lib_bz2:
  317. rm -f configs/current ; \
  318. cd .. ; \
  319. tar -cvf $(LIB_NAME).tar $(LIB_FILES) ; \
  320. bzip2 $(LIB_NAME).tar ; \
  321. mv $(LIB_NAME).tar.bz2 $(DIRECTORY)
  322. demo_bz2:
  323. cd .. ; \
  324. tar -cvf $(DEMO_NAME).tar $(DEMO_FILES) ; \
  325. bzip2 $(DEMO_NAME).tar ; \
  326. mv $(DEMO_NAME).tar.bz2 $(DIRECTORY)
  327. lib_zip:
  328. rm -f configs/current ; \
  329. -rm $(LIB_NAME).zip ; \
  330. cd .. ; \
  331. zip -r $(LIB_NAME).zip $(LIB_FILES) ; \
  332. mv $(LIB_NAME).zip $(DIRECTORY)
  333. demo_zip:
  334. -rm $(DEMO_NAME).zip ; \
  335. cd .. ; \
  336. zip -r $(DEMO_NAME).zip $(DEMO_FILES) ; \
  337. mv $(DEMO_NAME).zip $(DIRECTORY)
  338. md5:
  339. @-md5sum $(LIB_NAME).tar.gz
  340. @-md5sum $(LIB_NAME).tar.bz2
  341. @-md5sum $(LIB_NAME).zip
  342. @-md5sum $(DEMO_NAME).tar.gz
  343. @-md5sum $(DEMO_NAME).tar.bz2
  344. @-md5sum $(DEMO_NAME).zip