Compare commits
	
		
			85 Commits
		
	
	
		
			trunk_2004
			...
			mesa_4_0_1
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					a340c4f6ef | ||
| 
						 | 
					781f27575c | ||
| 
						 | 
					08e126fba6 | ||
| 
						 | 
					b03241a552 | ||
| 
						 | 
					e4efc983bd | ||
| 
						 | 
					785bfd0c1e | ||
| 
						 | 
					a0e4612f49 | ||
| 
						 | 
					f6e1618f97 | ||
| 
						 | 
					3a450fb4b0 | ||
| 
						 | 
					43daa03ac1 | ||
| 
						 | 
					cb69912494 | ||
| 
						 | 
					b4518ee5d4 | ||
| 
						 | 
					6ef05c2817 | ||
| 
						 | 
					26d31abd87 | ||
| 
						 | 
					7702362bda | ||
| 
						 | 
					5141607357 | ||
| 
						 | 
					a9e14e7bb9 | ||
| 
						 | 
					5196a16629 | ||
| 
						 | 
					7f37280955 | ||
| 
						 | 
					986b7ec195 | ||
| 
						 | 
					9012185ae8 | ||
| 
						 | 
					2edf851932 | ||
| 
						 | 
					1703b67ee0 | ||
| 
						 | 
					9342fbe46e | ||
| 
						 | 
					2f88c5fbd4 | ||
| 
						 | 
					dc35f387ca | ||
| 
						 | 
					597ec4040c | ||
| 
						 | 
					51aa3d2f30 | ||
| 
						 | 
					0c1f42ef29 | ||
| 
						 | 
					06ae58eebb | ||
| 
						 | 
					d8deb468f7 | ||
| 
						 | 
					4aac60f691 | ||
| 
						 | 
					e20d35d74a | ||
| 
						 | 
					ed26c2d950 | ||
| 
						 | 
					95681b4a85 | ||
| 
						 | 
					17a5135fee | ||
| 
						 | 
					69b71bc1ab | ||
| 
						 | 
					9f6957e702 | ||
| 
						 | 
					bf78731523 | ||
| 
						 | 
					c527df81df | ||
| 
						 | 
					ca2315d95b | ||
| 
						 | 
					c4dd9e2a03 | ||
| 
						 | 
					34174976c4 | ||
| 
						 | 
					ff23c15bdc | ||
| 
						 | 
					eb0ce107c7 | ||
| 
						 | 
					bfe6c71b99 | ||
| 
						 | 
					69f2ff5f38 | ||
| 
						 | 
					f28c19da41 | ||
| 
						 | 
					c132ca9774 | ||
| 
						 | 
					8ca1772d4a | ||
| 
						 | 
					ff5fe4836a | ||
| 
						 | 
					f88e0898a1 | ||
| 
						 | 
					3f2eedd634 | ||
| 
						 | 
					158c7413fb | ||
| 
						 | 
					0a96860e04 | ||
| 
						 | 
					37b10249e5 | ||
| 
						 | 
					589cee71b8 | ||
| 
						 | 
					c6dcd5c4cf | ||
| 
						 | 
					e1ec4771f1 | ||
| 
						 | 
					917e942fe2 | ||
| 
						 | 
					f427427ca8 | ||
| 
						 | 
					7ed97d4ef4 | ||
| 
						 | 
					267b9cc082 | ||
| 
						 | 
					efb678da77 | ||
| 
						 | 
					32aa05bfd6 | ||
| 
						 | 
					299a71fe04 | ||
| 
						 | 
					63da26bd62 | ||
| 
						 | 
					dfb7ebf8a0 | ||
| 
						 | 
					64681c1f82 | ||
| 
						 | 
					8c3149f250 | ||
| 
						 | 
					53e284bda1 | ||
| 
						 | 
					f46ce82219 | ||
| 
						 | 
					4256cf0175 | ||
| 
						 | 
					986749a4ea | ||
| 
						 | 
					07042d164b | ||
| 
						 | 
					0739d6f158 | ||
| 
						 | 
					2fd7a602a7 | ||
| 
						 | 
					f97edb4ca3 | ||
| 
						 | 
					3b0571dd5c | ||
| 
						 | 
					c25f068355 | ||
| 
						 | 
					3a05f42b28 | ||
| 
						 | 
					2631c2a2de | ||
| 
						 | 
					b2728086ec | ||
| 
						 | 
					2e7644f13d | ||
| 
						 | 
					9c3e7d2294 | 
							
								
								
									
										1619
									
								
								Make-config
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1619
									
								
								Make-config
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										394
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										394
									
								
								Makefile
									
									
									
									
									
								
							@@ -1,394 +0,0 @@
 | 
			
		||||
# Top-level Mesa makefile
 | 
			
		||||
 | 
			
		||||
TOP = .
 | 
			
		||||
 | 
			
		||||
SUBDIRS = src progs
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
default: $(TOP)/configs/current
 | 
			
		||||
	@for dir in $(SUBDIRS) ; do \
 | 
			
		||||
		(cd $$dir ; $(MAKE)) || exit 1 ; \
 | 
			
		||||
	done
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
doxygen:
 | 
			
		||||
	(cd doxygen ; make) ; \
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	@for dir in $(SUBDIRS) ; do \
 | 
			
		||||
		(cd $$dir ; $(MAKE) clean) ; \
 | 
			
		||||
	done
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
realclean:
 | 
			
		||||
	touch $(TOP)/configs/current
 | 
			
		||||
	$(MAKE) clean
 | 
			
		||||
	-rm -rf lib*
 | 
			
		||||
	-rm -f $(TOP)/configs/current
 | 
			
		||||
	-rm -f `find . -name \*.o`
 | 
			
		||||
	-rm -f `find . -name \*.a`
 | 
			
		||||
	-rm -f `find . -name \*.so`
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
install:
 | 
			
		||||
	@echo "Installing"
 | 
			
		||||
	$(TOP)/bin/installmesa $(DESTDIR)
 | 
			
		||||
 | 
			
		||||
# DirectFBGL module installation
 | 
			
		||||
linux-directfb-install:
 | 
			
		||||
	cd src/mesa/drivers/directfb && $(MAKE) install
 | 
			
		||||
 | 
			
		||||
# If there's no current configuration file
 | 
			
		||||
$(TOP)/configs/current:
 | 
			
		||||
	@echo
 | 
			
		||||
	@echo
 | 
			
		||||
	@echo "Please choose a configuration from the following list:"
 | 
			
		||||
	@ls -1 $(TOP)/configs | grep -v "current\|default\|CVS"
 | 
			
		||||
	@echo
 | 
			
		||||
	@echo "Then type 'make <config>' (ex: 'make linux-x86')"
 | 
			
		||||
	@echo "(ignore the following error message)"
 | 
			
		||||
	@exit 1
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Rules to set/install a specific build configuration
 | 
			
		||||
aix \
 | 
			
		||||
aix-64 \
 | 
			
		||||
aix-gcc \
 | 
			
		||||
aix-static \
 | 
			
		||||
beos \
 | 
			
		||||
darwin \
 | 
			
		||||
darwin-static \
 | 
			
		||||
freebsd \
 | 
			
		||||
freebsd-dri \
 | 
			
		||||
freebsd-dri-x86 \
 | 
			
		||||
hpux10 \
 | 
			
		||||
hpux10-gcc \
 | 
			
		||||
hpux10-static \
 | 
			
		||||
hpux11-32 \
 | 
			
		||||
hpux11-32-static \
 | 
			
		||||
hpux11-32-static-nothreads \
 | 
			
		||||
hpux11-64 \
 | 
			
		||||
hpux11-64-static \
 | 
			
		||||
hpux9 \
 | 
			
		||||
hpux9-gcc \
 | 
			
		||||
irix6-64 \
 | 
			
		||||
irix6-64-static \
 | 
			
		||||
irix6-n32 \
 | 
			
		||||
irix6-n32-static \
 | 
			
		||||
irix6-o32 \
 | 
			
		||||
irix6-o32-static \
 | 
			
		||||
linux \
 | 
			
		||||
linux-alpha \
 | 
			
		||||
linux-alpha-static \
 | 
			
		||||
linux-debug \
 | 
			
		||||
linux-directfb \
 | 
			
		||||
linux-dri \
 | 
			
		||||
linux-dri-x86 \
 | 
			
		||||
linux-dri-x86-64 \
 | 
			
		||||
linux-dri-ppc \
 | 
			
		||||
linux-glide \
 | 
			
		||||
linux-icc \
 | 
			
		||||
linux-icc-static \
 | 
			
		||||
linux-osmesa16 \
 | 
			
		||||
linux-osmesa16-static \
 | 
			
		||||
linux-osmesa32 \
 | 
			
		||||
linux-ppc \
 | 
			
		||||
linux-ppc-static \
 | 
			
		||||
linux-solo \
 | 
			
		||||
linux-solo-x86 \
 | 
			
		||||
linux-solo-ia64 \
 | 
			
		||||
linux-sparc \
 | 
			
		||||
linux-sparc5 \
 | 
			
		||||
linux-static \
 | 
			
		||||
linux-ultrasparc \
 | 
			
		||||
linux-tcc \
 | 
			
		||||
linux-x86 \
 | 
			
		||||
linux-x86-debug \
 | 
			
		||||
linux-x86-32 \
 | 
			
		||||
linux-x86-64 \
 | 
			
		||||
linux-x86-64-static \
 | 
			
		||||
linux-x86-glide \
 | 
			
		||||
linux-x86-static \
 | 
			
		||||
netbsd \
 | 
			
		||||
openbsd \
 | 
			
		||||
osf1 \
 | 
			
		||||
solaris-x86 \
 | 
			
		||||
solaris-x86-gcc \
 | 
			
		||||
sunos4 \
 | 
			
		||||
sunos4-gcc \
 | 
			
		||||
sunos4-static \
 | 
			
		||||
sunos5 \
 | 
			
		||||
sunos5-gcc \
 | 
			
		||||
sunos5-smp \
 | 
			
		||||
ultrix-gcc:
 | 
			
		||||
	(cd configs && rm -f current && ln -s $@ current)
 | 
			
		||||
	$(MAKE) default
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Rules for making release tarballs
 | 
			
		||||
 | 
			
		||||
DIRECTORY = Mesa-6.3
 | 
			
		||||
LIB_NAME = MesaLib-6.3
 | 
			
		||||
DEMO_NAME = MesaDemos-6.3
 | 
			
		||||
 | 
			
		||||
LIB_FILES =	\
 | 
			
		||||
	$(DIRECTORY)/Makefile*						\
 | 
			
		||||
	$(DIRECTORY)/descrip.mms					\
 | 
			
		||||
	$(DIRECTORY)/mms-config.					\
 | 
			
		||||
	$(DIRECTORY)/Mesa.dsw						\
 | 
			
		||||
	$(DIRECTORY)/bin/mklib						\
 | 
			
		||||
	$(DIRECTORY)/bin/installmesa					\
 | 
			
		||||
	$(DIRECTORY)/configs/[a-z]*					\
 | 
			
		||||
	$(DIRECTORY)/docs/*.html					\
 | 
			
		||||
	$(DIRECTORY)/docs/COPYING					\
 | 
			
		||||
	$(DIRECTORY)/docs/INSTALL.GNU					\
 | 
			
		||||
	$(DIRECTORY)/docs/README.*					\
 | 
			
		||||
	$(DIRECTORY)/docs/RELNOTES*					\
 | 
			
		||||
	$(DIRECTORY)/docs/VERSIONS					\
 | 
			
		||||
	$(DIRECTORY)/docs/*.spec					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/internal/glcore.h			\
 | 
			
		||||
	$(DIRECTORY)/include/GL/dmesa.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/amesa.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/fxmesa.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/ggimesa.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/gl.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glext.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/gl_mangle.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glu.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glu_mangle.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glx.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glxext.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glx_mangle.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/mesa_wgl.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/mglmesa.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/osmesa.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/svgamesa.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/ugl*.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/vms_x_fix.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/wmesa.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/xmesa.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/xmesa_x.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/xmesa_xf86.h				\
 | 
			
		||||
	$(DIRECTORY)/src/Makefile					\
 | 
			
		||||
	$(DIRECTORY)/src/descrip.mms					\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/Makefile*					\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/sources					\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/descrip.mms				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/depend					\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/main/*.[chS]				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/main/main.dsp				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/main/descrip.mms				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/glapi/*.[chS]				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/glapi/glapi.dsp				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/glapi/descrip.mms				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/array_cache/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/array_cache/array_cache.dsp		\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/array_cache/descrip.mms			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/math/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/math/math.dsp				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/math/descrip.mms				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/shader/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/shader/shader.dsp				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/shader/descrip.mms			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/swrast/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/swrast/swrast.dsp				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/swrast/descrip.mms			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/swrast_setup/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/swrast_setup/swrast_setup.dsp		\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/swrast_setup/descrip.mms			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/tnl/*.[chS]				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/tnl/tnl.dsp				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/tnl/descrip.mms				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/tnl_dd/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/tnl_dd/imm/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/tnl_dd/imm/NOTES.imm			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/beos/*.cpp			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/beos/Makefile			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/common/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/common/descrip.mms		\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/directfb/*.[ch]		\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/directfb/Makefile		\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/dos/*.[chS]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/dri/common/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/fbdev/glfbdev.c			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/glide/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/glide/*.def			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/ggi/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/ggi/ggimesa.conf.in		\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/ggi/default/*.c			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/ggi/default/genkgi.conf.in	\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/ggi/display/*.c			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/ggi/display/fbdev.conf.in		\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/ggi/include/ggi/mesa/*.h		\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/osmesa/Makefile.win		\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/osmesa/descrip.mms		\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.def			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/osmesa/osmesa.dsp			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/osmesa/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/svga/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/windows/*/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/windows/*/*.def			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/windows/*/*.dsp			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/x11/descrip.mms			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/x11/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/sparc/*.[chS]				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/x86/Makefile				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/x86/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/x86/*.S					\
 | 
			
		||||
	$(DIRECTORY)/src/glu/Makefile					\
 | 
			
		||||
	$(DIRECTORY)/src/glu/descrip.mms				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/Makefile				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/Makefile.win				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/Makefile.DJ				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/cc*.txt				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/glu.def				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/glu.dsp				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/dummy.cc				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/descrip.mms				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/mesaglu.opt				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/include/gluos.h			\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/libnurbs/interface/*.h			\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/libnurbs/interface/*.cc		\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/libnurbs/internals/*.h			\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/libnurbs/internals/*.cc		\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/libnurbs/nurbtess/*.h			\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/libnurbs/nurbtess/*.cc			\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/libtess/README				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/libtess/alg-outline			\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/libtess/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/sgi/libutil/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/mesa/README[12]				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/mesa/Makefile*				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/mesa/descrip.mms				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/mesa/mms_depend				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/mesa/*.def					\
 | 
			
		||||
	$(DIRECTORY)/src/glu/mesa/depend				\
 | 
			
		||||
	$(DIRECTORY)/src/glu/mesa/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/glw/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/glw/Makefile*					\
 | 
			
		||||
	$(DIRECTORY)/src/glw/README					\
 | 
			
		||||
	$(DIRECTORY)/src/glw/depend					\
 | 
			
		||||
	$(DIRECTORY)/progs/Makefile					\
 | 
			
		||||
	$(DIRECTORY)/progs/util/README					\
 | 
			
		||||
	$(DIRECTORY)/progs/util/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/progs/util/sampleMakefile				\
 | 
			
		||||
	$(DIRECTORY)/vms/analyze_map.com				\
 | 
			
		||||
	$(DIRECTORY)/vms/xlib.opt					\
 | 
			
		||||
	$(DIRECTORY)/vms/xlib_share.opt
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
GLUT_FILES = \
 | 
			
		||||
	$(DIRECTORY)/include/GL/glut.h			\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glutf90.h		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/glx/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/glx/depend		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/glx/*def			\
 | 
			
		||||
	$(DIRECTORY)/src/glut/glx/descrip.mms		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/glx/mms_depend		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/glx/glut.dsp		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/glx/*.[ch]		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/beos/*.[ch]		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/beos/*.cpp		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/beos/Makefile		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/dos/*.[ch]		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/dos/Makefile.DJ		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/dos/PC_HW/*.[chS]		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/ggi/*.[ch]		\
 | 
			
		||||
	$(DIRECTORY)/src/glut/ggi/Makefile
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
DEMO_FILES = \
 | 
			
		||||
	$(DIRECTORY)/progs/beos/*.cpp			\
 | 
			
		||||
	$(DIRECTORY)/progs/beos/Makefile		\
 | 
			
		||||
	$(DIRECTORY)/progs/images/*.rgb			\
 | 
			
		||||
	$(DIRECTORY)/progs/images/*.rgba		\
 | 
			
		||||
	$(DIRECTORY)/progs/demos/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/progs/demos/descrip.mms		\
 | 
			
		||||
	$(DIRECTORY)/progs/demos/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/progs/demos/*.cxx			\
 | 
			
		||||
	$(DIRECTORY)/progs/demos/*.dat			\
 | 
			
		||||
	$(DIRECTORY)/progs/demos/README			\
 | 
			
		||||
	$(DIRECTORY)/progs/demos/Windows/*.dsp		\
 | 
			
		||||
	$(DIRECTORY)/progs/demos/Windows/*.dsw		\
 | 
			
		||||
	$(DIRECTORY)/progs/xdemos/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/progs/xdemos/descrip.mms		\
 | 
			
		||||
	$(DIRECTORY)/progs/xdemos/*.[chf]		\
 | 
			
		||||
	$(DIRECTORY)/progs/redbook/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/progs/redbook/README		\
 | 
			
		||||
	$(DIRECTORY)/progs/redbook/*.[ch]		\
 | 
			
		||||
	$(DIRECTORY)/progs/samples/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/progs/samples/README		\
 | 
			
		||||
	$(DIRECTORY)/progs/samples/*.c			\
 | 
			
		||||
	$(DIRECTORY)/progs/windml/Makefile.ugl		\
 | 
			
		||||
	$(DIRECTORY)/progs/windml/*.c			\
 | 
			
		||||
	$(DIRECTORY)/progs/windml/*.bmp			\
 | 
			
		||||
	$(DIRECTORY)/progs/ggi/*.c
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
DRI_FILES = \
 | 
			
		||||
	$(DIRECTORY)/src/glx/Makefile					\
 | 
			
		||||
	$(DIRECTORY)/src/glx/mini/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/glx/mini/example.miniglx.conf			\
 | 
			
		||||
	$(DIRECTORY)/src/glx/mini/NOTES					\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/dri/Makefile			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/dri/Makefile.template		\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/dri/common/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/dri/dri_client/imports/*.h	\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/dri/*/*.[ch]			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/dri/*/depend			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/dri/*/Makefile			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/dri/*/Doxyfile			\
 | 
			
		||||
	$(DIRECTORY)/src/mesa/drivers/dri/*/server/*.[ch]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Everything for new a Mesa release:
 | 
			
		||||
tarballs: lib_gz demo_gz lib_bz2 demo_bz2 lib_zip demo_zip md5
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
lib_gz:
 | 
			
		||||
	rm -f configs/current ; \
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	tar -cvf $(LIB_NAME).tar $(LIB_FILES) ; \
 | 
			
		||||
	gzip $(LIB_NAME).tar ; \
 | 
			
		||||
	mv $(LIB_NAME).tar.gz $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
demo_gz:
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	tar -cvf $(DEMO_NAME).tar $(DEMO_FILES) $(GLUT_FILES) ; \
 | 
			
		||||
	gzip $(DEMO_NAME).tar ; \
 | 
			
		||||
	mv $(DEMO_NAME).tar.gz $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
lib_bz2:
 | 
			
		||||
	rm -f configs/current ; \
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	tar -cvf $(LIB_NAME).tar $(LIB_FILES) ; \
 | 
			
		||||
	bzip2 $(LIB_NAME).tar ; \
 | 
			
		||||
	mv $(LIB_NAME).tar.bz2 $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
demo_bz2:
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	tar -cvf $(DEMO_NAME).tar $(DEMO_FILES) $(GLUT_FILES) ; \
 | 
			
		||||
	bzip2 $(DEMO_NAME).tar ; \
 | 
			
		||||
	mv $(DEMO_NAME).tar.bz2 $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
lib_zip:
 | 
			
		||||
	rm -f configs/current ; \
 | 
			
		||||
	-rm $(LIB_NAME).zip ; \
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	zip -r $(LIB_NAME).zip $(LIB_FILES) ; \
 | 
			
		||||
	mv $(LIB_NAME).zip $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
demo_zip:
 | 
			
		||||
	-rm $(DEMO_NAME).zip ; \
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	zip -r $(DEMO_NAME).zip $(DEMO_FILES) $(GLUT_FILES) ; \
 | 
			
		||||
	mv $(DEMO_NAME).zip $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
md5:
 | 
			
		||||
	@-md5sum $(LIB_NAME).tar.gz
 | 
			
		||||
	@-md5sum $(LIB_NAME).tar.bz2
 | 
			
		||||
	@-md5sum $(LIB_NAME).zip
 | 
			
		||||
	@-md5sum $(DEMO_NAME).tar.gz
 | 
			
		||||
	@-md5sum $(DEMO_NAME).tar.bz2
 | 
			
		||||
	@-md5sum $(DEMO_NAME).zip
 | 
			
		||||
							
								
								
									
										97
									
								
								Makefile.DJ
									
									
									
									
									
								
							
							
						
						
									
										97
									
								
								Makefile.DJ
									
									
									
									
									
								
							@@ -1,97 +0,0 @@
 | 
			
		||||
# Mesa 3-D graphics library
 | 
			
		||||
# Version:  4.0
 | 
			
		||||
# 
 | 
			
		||||
# Copyright (C) 1999  Brian Paul   All Rights Reserved.
 | 
			
		||||
# 
 | 
			
		||||
# Permission is hereby granted, free of charge, to any person obtaining a
 | 
			
		||||
# copy of this software and associated documentation files (the "Software"),
 | 
			
		||||
# to deal in the Software without restriction, including without limitation
 | 
			
		||||
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
 | 
			
		||||
# and/or sell copies of the Software, and to permit persons to whom the
 | 
			
		||||
# Software is furnished to do so, subject to the following conditions:
 | 
			
		||||
# 
 | 
			
		||||
# The above copyright notice and this permission notice shall be included
 | 
			
		||||
# in all copies or substantial portions of the Software.
 | 
			
		||||
# 
 | 
			
		||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 | 
			
		||||
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 | 
			
		||||
# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
 | 
			
		||||
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 | 
			
		||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
			
		||||
 | 
			
		||||
# DOS/DJGPP makefile v1.6 for Mesa
 | 
			
		||||
#
 | 
			
		||||
#  Copyright (C) 2002 - Daniel Borca
 | 
			
		||||
#  Email : dborca@users.sourceforge.net
 | 
			
		||||
#  Web   : http://www.geocities.com/dborca
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
#  Available options:
 | 
			
		||||
#
 | 
			
		||||
#    Environment variables:
 | 
			
		||||
#	CPU		optimize for the given processor.
 | 
			
		||||
#			default = pentium
 | 
			
		||||
#	GLU=[mesa|sgi]	specify GLU directory; can be `sgi' (requires GNU/C++)
 | 
			
		||||
#			or `mesa'.
 | 
			
		||||
#			default = mesa
 | 
			
		||||
#	GLIDE		path to Glide3 SDK; used with FX.
 | 
			
		||||
#			default = $(TOP)/glide3
 | 
			
		||||
#	FX=1		build for 3dfx Glide3. Note that this disables
 | 
			
		||||
#			compilation of most DMesa code and requires fxMesa.
 | 
			
		||||
#			As a consequence, you'll need the DJGPP Glide3
 | 
			
		||||
#			library to build any application.
 | 
			
		||||
#			default = no
 | 
			
		||||
#	X86=1		optimize for x86 (if possible, use MMX, SSE, 3DNow).
 | 
			
		||||
#			default = no
 | 
			
		||||
#
 | 
			
		||||
#    Targets:
 | 
			
		||||
#	all:		build everything
 | 
			
		||||
#	libgl:		build GL
 | 
			
		||||
#	libglu:		build GLU
 | 
			
		||||
#	libglut:	build GLUT
 | 
			
		||||
#	clean:		remove object files
 | 
			
		||||
#	realclean:	remove all generated files
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.PHONY : all libgl libglu libglut clean realclean
 | 
			
		||||
 | 
			
		||||
CPU ?= pentium
 | 
			
		||||
 | 
			
		||||
GLU ?= mesa
 | 
			
		||||
 | 
			
		||||
CFLAGS = -Wall -W -pedantic
 | 
			
		||||
CFLAGS += -O2 -ffast-math -mtune=$(CPU)
 | 
			
		||||
 | 
			
		||||
export CFLAGS
 | 
			
		||||
 | 
			
		||||
ifeq ($(wildcard $(addsuffix /rm.exe,$(subst ;, ,$(PATH)))),)
 | 
			
		||||
UNLINK = del $(subst /,\,$(1))
 | 
			
		||||
else
 | 
			
		||||
UNLINK = $(RM) $(1)
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
all: libgl libglu libglut
 | 
			
		||||
 | 
			
		||||
libgl: lib
 | 
			
		||||
	$(MAKE) -f Makefile.DJ -C src/mesa
 | 
			
		||||
libglu: lib
 | 
			
		||||
	$(MAKE) -f Makefile.DJ -C src/glu/$(GLU)
 | 
			
		||||
libglut: lib
 | 
			
		||||
	$(MAKE) -f Makefile.DJ -C src/glut/dos
 | 
			
		||||
 | 
			
		||||
lib:
 | 
			
		||||
	mkdir lib
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	$(MAKE) -f Makefile.DJ clean -C src/mesa
 | 
			
		||||
	$(MAKE) -f Makefile.DJ clean -C src/glu/mesa
 | 
			
		||||
	$(MAKE) -f Makefile.DJ clean -C src/glu/sgi
 | 
			
		||||
	$(MAKE) -f Makefile.DJ clean -C src/glut/dos
 | 
			
		||||
 | 
			
		||||
realclean: clean
 | 
			
		||||
	-$(call UNLINK,lib/*.a)
 | 
			
		||||
	-$(call UNLINK,lib/*.dxe)
 | 
			
		||||
							
								
								
									
										763
									
								
								Makefile.X11
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										763
									
								
								Makefile.X11
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,763 @@
 | 
			
		||||
# $Id: Makefile.X11,v 1.56.2.3 2001/12/14 17:11:46 kschultz Exp $
 | 
			
		||||
 | 
			
		||||
# Mesa 3-D graphics library
 | 
			
		||||
# Version:  4.0
 | 
			
		||||
# 
 | 
			
		||||
# Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
 | 
			
		||||
# 
 | 
			
		||||
# Permission is hereby granted, free of charge, to any person obtaining a
 | 
			
		||||
# copy of this software and associated documentation files (the "Software"),
 | 
			
		||||
# to deal in the Software without restriction, including without limitation
 | 
			
		||||
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
 | 
			
		||||
# and/or sell copies of the Software, and to permit persons to whom the
 | 
			
		||||
# Software is furnished to do so, subject to the following conditions:
 | 
			
		||||
# 
 | 
			
		||||
# The above copyright notice and this permission notice shall be included
 | 
			
		||||
# in all copies or substantial portions of the Software.
 | 
			
		||||
# 
 | 
			
		||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 | 
			
		||||
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 | 
			
		||||
# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
 | 
			
		||||
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 | 
			
		||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Top-level makefile for Mesa
 | 
			
		||||
# To add a new configuration for your system add it to the list below
 | 
			
		||||
# then update the Make-config file.
 | 
			
		||||
 | 
			
		||||
SHELL = /bin/sh
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
default:
 | 
			
		||||
	@echo "Type one of the following:"
 | 
			
		||||
	@echo "  make aix                  for IBM RS/6000 with AIX"
 | 
			
		||||
	@echo "  make aix-sl               for IBM RS/6000, make shared libs"
 | 
			
		||||
	@echo "  make amiwin               for Amiga with SAS/C and AmiWin"
 | 
			
		||||
	@echo "  make amix                 for Amiga 3000 UX  SVR4 v2.1 systems"
 | 
			
		||||
	@echo "  make beos-r4              for BeOS R4"
 | 
			
		||||
	@echo "  make bsdos                for BSD/OS from BSDI using GCC"
 | 
			
		||||
	@echo "  make bsdos4               for BSD/OS 4.x, dynamic libraries"
 | 
			
		||||
	@echo "  make cygnus               for Win95/NT using Cygnus-Win32"
 | 
			
		||||
	@echo "  make cygnus-linux         for Win95/NT using Cygnus-Win32 under Linux"
 | 
			
		||||
	@echo "  make darwin               for Darwin - Mac OS X"
 | 
			
		||||
	@echo "  make dgux                 for Data General"
 | 
			
		||||
	@echo "  make freebsd              for FreeBSD systems with GCC"
 | 
			
		||||
	@echo "  make freebsd-386          for FreeBSD systems with GCC, w/ Intel assembly"
 | 
			
		||||
	@echo "  make gcc                  for a generic system with GCC"
 | 
			
		||||
	@echo "  make hpux9                for HP systems with HPUX 9.x"
 | 
			
		||||
	@echo "  make hpux9-sl             for HP systems with HPUX 9.x, make shared libs"
 | 
			
		||||
	@echo "  make hpux9-gcc            for HP systems with HPUX 9.x using GCC"
 | 
			
		||||
	@echo "  make hpux9-gcc-sl         for HP systems with HPUX 9.x, GCC, make shared libs"
 | 
			
		||||
	@echo "  make hpux10               for HP systems with HPUX 10.x"
 | 
			
		||||
	@echo "  make hpux10-sl            for HP systems with HPUX 10.x, shared libs"
 | 
			
		||||
	@echo "  make hpux10-gcc           for HP systems with HPUX 10.x w/ GCC"
 | 
			
		||||
	@echo "  make hpux10-gcc-sl        for HP systems with HPUX 10.x w/ GCC, shared libs"
 | 
			
		||||
	@echo "  make irix4                for SGI systems with IRIX 4.x"
 | 
			
		||||
	@echo "  make irix5                for SGI systems with IRIX 5.x"
 | 
			
		||||
	@echo "  make irix5-gcc            for SGI systems with IRIX 5.x using GCC"
 | 
			
		||||
	@echo "  make irix5-dso            for SGI systems with IRIX 5.x, make DSOs"
 | 
			
		||||
	@echo "  make irix6-o32            for SGI systems with IRIX 6.x, make o32-bit libs"
 | 
			
		||||
	@echo "  make irix6-o32-dso        for SGI systems with IRIX 6.x, make o32-bit DSOs"
 | 
			
		||||
	@echo "  make irix6-n32            for SGI systems with IRIX 6.x, make n32-bit libs"
 | 
			
		||||
	@echo "  make irix6-n32-dso        for SGI systems with IRIX 6.x, make n32-bit DSOs"
 | 
			
		||||
	@echo "  make irix6-gcc-n32-sl     for SGI systems with IRIX 6.x, GCC, make n32 DSOs"
 | 
			
		||||
	@echo "  make irix6-64             for SGI systems with IRIX 6.x, make 64-bit libs"
 | 
			
		||||
	@echo "  make irix6-64-dso         for SGI systems with IRIX 6.x, make 64-bit DSOs"
 | 
			
		||||
 | 
			
		||||
	@echo "  make linux                for Linux systems, make shared .so libs"
 | 
			
		||||
	@echo "  make linux-static         for Linux systems, make static .a libs"
 | 
			
		||||
	@echo "  make linux-trace          for Linux systems, with API trace extension"
 | 
			
		||||
	@echo "  make linux-x86            for Linux on Intel, make shared .so libs"
 | 
			
		||||
	@echo "  make linux-x86-static     for Linux on Intel, make static .a libs"
 | 
			
		||||
	@echo "  make linux-ggi            for Linux systems with libggi"
 | 
			
		||||
	@echo "  make linux-386-ggi        for Linux systems with libggi w/ Intel assembly"
 | 
			
		||||
	@echo "  make linux-glide          for Linux w/ 3Dfx Glide driver"
 | 
			
		||||
	@echo "  make linux-386-glide      for Linux w/ 3Dfx Glide driver, Intel assembly"
 | 
			
		||||
	@echo "  make linux-386-opt-glide  for Linux with 3Dfx Voodoo1 for GLQuake"
 | 
			
		||||
	@echo "  make linux-x86-glide      for Linux w/ all x86 asm for Glide"
 | 
			
		||||
	@echo "  make linux-alpha          for Linux on Alpha systems"
 | 
			
		||||
	@echo "  make linux-alpha-static   for Linux on Alpha systems, static libs"
 | 
			
		||||
	@echo "  make linux-ppc            for Linux on PowerPC systems"
 | 
			
		||||
	@echo "  make linux-ppc-static     for Linux on PowerPC systems, static libs"
 | 
			
		||||
	@echo "  make linux-sparc          for Linux on Sparc systems"
 | 
			
		||||
	@echo "  make linux-sparc5-elf     for Sparc5 systems, make ELF shared libs"
 | 
			
		||||
	@echo "  make linux-sparc-ultra    for UltraSparc systems, make ELF shared libs"
 | 
			
		||||
	@echo "  make linux-osmesa16       for 16-bit/channel OSMesa"
 | 
			
		||||
	@echo "  make linux-osmesa32       for 32-bit/channel OSMesa"
 | 
			
		||||
	@echo "  make lynxos               for LynxOS systems with GCC"
 | 
			
		||||
	@echo "  make macintosh            for Macintosh"
 | 
			
		||||
	@echo "  make machten-2.2          for Macs w/ MachTen 2.2 (68k w/ FPU)"
 | 
			
		||||
	@echo "  make machten-4.0          for Macs w/ MachTen 4.0.1 or newer with GNU make"
 | 
			
		||||
	@echo "  make mklinux              for Linux on Power Macintosh"
 | 
			
		||||
	@echo "  make netbsd               for NetBSD 1.0 systems with GCC"
 | 
			
		||||
	@echo "  make next                 for NeXT systems with NEXTSTEP 3.3"
 | 
			
		||||
	@echo "  make openbsd              for OpenBSD systems"
 | 
			
		||||
	@echo "  make openstep             for OpenStep/MacOSX Server systems"
 | 
			
		||||
	@echo "  make os2-x11              for OS/2 with XFree86"
 | 
			
		||||
	@echo "  make osf1                 for DEC Alpha systems with OSF/1"
 | 
			
		||||
	@echo "  make osf1-sl              for DEC Alpha systems with OSF/1, make shared libs"
 | 
			
		||||
	@echo "  make pgi-cygnus           for Cygnus with Portland Group, Inc. compiler"
 | 
			
		||||
	@echo "  make pgi-mingw32          for mingW32 with Portland Group, Inc. compiler"
 | 
			
		||||
	@echo "  make qnx                  for QNX V4 systems with Watcom compiler"
 | 
			
		||||
	@echo "  make sco                  for SCO Unix systems with ODT"
 | 
			
		||||
	@echo "  make sco5                 for SCO 5.0.5 OpenServer Unix"
 | 
			
		||||
	@echo "  make solaris-x86          for PCs with Solaris"
 | 
			
		||||
	@echo "  make solaris-x86-gcc      for PCs with Solaris using GCC"
 | 
			
		||||
	@echo "  make sunos4               for Suns with SunOS 4.x"
 | 
			
		||||
	@echo "  make sunos4-sl            for Suns with SunOS 4.x, make shared libs"
 | 
			
		||||
	@echo "  make sunos4-gcc           for Suns with SunOS 4.x and GCC"
 | 
			
		||||
	@echo "  make sunos4-gcc-sl        for Suns with SunOS 4.x, GCC, make shared libs"
 | 
			
		||||
	@echo "  make sunos5               for Suns with SunOS 5.x"
 | 
			
		||||
	@echo "  make sunos5-sl            for Suns with SunOS 5.x, make shared libs"
 | 
			
		||||
	@echo "  make sunos5-ultra         for Sun UltraSPARCs with SunOS 5.x"
 | 
			
		||||
	@echo "  make sunos5-ultra-sl      for Sun UltraSPARCs with SunOS 5.x, make shared libs"
 | 
			
		||||
	@echo "  make sunos5-thread        for Suns with SunOS 5.x, using Solaris threads"
 | 
			
		||||
	@echo "  make sunos5-pthread       for Suns with SunOS 5.[56] using POSIX threads"
 | 
			
		||||
	@echo "  make sunos5-gcc-thread    for Suns with SunOS 5.x and GCC, using Solaris threads"
 | 
			
		||||
	@echo "  make sunos5-gcc-pthread   for Suns with SunOS 5.[56] and GCC, using POSIX threads"
 | 
			
		||||
	@echo "  make sunos5-gcc           for Suns with SunOS 5.x and GCC"
 | 
			
		||||
	@echo "  make sunos5-gcc-sl        for Suns with SunOS 5.x, GCC, make shared libs"
 | 
			
		||||
	@echo "  make sunos5-x11r6-gcc-sl  for Suns with X11R6, GCC, make shared libs"
 | 
			
		||||
	@echo "  make sunos5-gcc-thread    for Suns with SunOS 5.x and GCC, using Solaris threads"
 | 
			
		||||
	@echo "  make sunos5-gcc-pthread   for Suns with SunOS 5.[56] and GCC, using POSIX threads"
 | 
			
		||||
	@echo "  make sunSolaris-CC        for Solaris using C++ compiler"
 | 
			
		||||
	@echo "  make ultrix-gcc           for DEC systems with Ultrix and GCC"
 | 
			
		||||
	@echo "  make unicos               for Cray C90 (and other?) systems"
 | 
			
		||||
	@echo "  make unixware             for PCs running UnixWare"
 | 
			
		||||
	@echo "  make unixware-shared      for PCs running UnixWare, shared libs"
 | 
			
		||||
	@echo "  make uwin                 for Windows NT with AT&T/Wipro UWIN"
 | 
			
		||||
	@echo "  make vistra               for Stardent Vistra systems"
 | 
			
		||||
	@echo "  make clean                remove .o files"
 | 
			
		||||
	@echo "  make realclean            remove .o, library and executable files"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# XXX we may have to split up this group of targets into those that
 | 
			
		||||
# have a C++ compiler and those that don't for the SI-GLU library.
 | 
			
		||||
 | 
			
		||||
aix aix-sl amix bsdos bsdos4 darwin dgux freebsd freebsd-386 gcc \
 | 
			
		||||
hpux9 hpux9-sl hpux9-gcc hpux9-gcc-sl \
 | 
			
		||||
hpux10 hpux10-sl hpux10-gcc hpux10-gcc-sl \
 | 
			
		||||
irix4 irix5 irix5-gcc irix5-dso \
 | 
			
		||||
linux linux-static linux-debug linux-x11-debug linux-static-debug linux-prof \
 | 
			
		||||
linux-x86 linux-x86-static linux-x86-debug \
 | 
			
		||||
linux-glide linux-386-glide linux-386-opt-glide \
 | 
			
		||||
linux-x86-glide linux-glide-debug linux-glide-prof \
 | 
			
		||||
linux-alpha-static linux-alpha \
 | 
			
		||||
linux-ppc-static linux-ppc \
 | 
			
		||||
linux-sparc \
 | 
			
		||||
linux-sparc5-elf \
 | 
			
		||||
linux-sparc-ultra \
 | 
			
		||||
lynxos machten-2.2 machten-4.0 \
 | 
			
		||||
mklinux netbsd osf1 osf1-sl openbsd qnx sco sco5 \
 | 
			
		||||
solaris-x86 solaris-x86-gcc sunSolaris-CC \
 | 
			
		||||
sunos4 sunos4-sl sunos4-gcc sunos4-gcc-sl sunos4-gcc-x11r6-sl \
 | 
			
		||||
sunos5 sunos5-sl sunos5-ultra sunos5-ultra-sl sunos5-gcc sunos5-gcc-sl \
 | 
			
		||||
sunos5-thread sunos5-pthread sunos5-gcc-thread sunos5-gcc-pthread \
 | 
			
		||||
sunos5-x11r6-gcc-sl ultrix-gcc unicos unixware uwin vistra:
 | 
			
		||||
	-mkdir lib
 | 
			
		||||
	if [ -d src      ] ; then touch src/depend      ; fi
 | 
			
		||||
	if [ -d si-glu   ] ; then touch si-glu/depend  ; fi
 | 
			
		||||
	if [ -d src-glut ] ; then touch src-glut/depend ; fi
 | 
			
		||||
	if [ -d widgets-sgi ] ; then touch widgets-sgi/depend ; fi
 | 
			
		||||
	if [ -d src      ] ; then cd src      ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d si-glu   ] ; then cd si-glu   ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d src-glut ] ; then cd src-glut ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d demos    ] ; then cd demos    ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d xdemos   ] ; then cd xdemos   ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d samples  ] ; then cd samples  ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d book     ] ; then cd book     ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d widgets-sgi ] ; then cd widgets-sgi; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
 | 
			
		||||
irix6-o32 irix6-o32-dso irix6-n32 irix6-n32-dso irix6-gcc-n32-sl irix-debug:
 | 
			
		||||
	-mkdir lib32
 | 
			
		||||
	if [ -d src      ] ; then touch src/depend      ; fi
 | 
			
		||||
	if [ -d src-glu  ] ; then touch src-glu/depend  ; fi
 | 
			
		||||
	if [ -d src-glut ] ; then touch src-glut/depend ; fi
 | 
			
		||||
	if [ -d widgets-sgi ] ; then touch widgets-sgi/depend ; fi
 | 
			
		||||
	if [ -d src      ] ; then cd src      ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d src-glu  ] ; then cd src-glu  ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d src-glut ] ; then cd src-glut ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d demos    ] ; then cd demos    ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d xdemos   ] ; then cd xdemos   ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d samples  ] ; then cd samples  ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d book     ] ; then cd book     ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d widgets-sgi ] ; then cd widgets-sgi; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
irix6-64 irix6-64-dso:
 | 
			
		||||
	-mkdir lib64
 | 
			
		||||
	touch src/depend
 | 
			
		||||
	touch src-glu/depend
 | 
			
		||||
	if [ -d src-glut ] ; then touch src-glut/depend ; fi
 | 
			
		||||
	if [ -d widgets-sgi ] ; then touch widgets-sgi/depend ; fi
 | 
			
		||||
	if [ -d src      ] ; then cd src      ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d src-glu  ] ; then cd src-glu  ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d src-glut ] ; then cd src-glut ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d demos    ] ; then cd demos    ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d xdemos   ] ; then cd xdemos   ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d samples  ] ; then cd samples  ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d book     ] ; then cd book     ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d widgets-sgi ] ; then cd widgets-sgi; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
amiwin:
 | 
			
		||||
	bin/mklib.amiwin
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
beos-r4:
 | 
			
		||||
	-mkdir lib
 | 
			
		||||
	-rm src/depend
 | 
			
		||||
	touch src/depend
 | 
			
		||||
	-rm src-glu/depend
 | 
			
		||||
	touch src-glu/depend
 | 
			
		||||
	if [ -d src     ] ; then cd src     ; $(MAKE) -f Makefile.BeOS-R4 $@ ; fi
 | 
			
		||||
	if [ -d src-glu ] ; then cd src-glu ; $(MAKE) -f Makefile.BeOS-R4 $@ ; fi
 | 
			
		||||
	if [ -d BeOS    ] ; then cd BeOS    ; $(MAKE)                        ; fi
 | 
			
		||||
	if [ -d src-glut.beos ] ; then cd src-glut.beos ; $(MAKE)            ; fi
 | 
			
		||||
	if [ -d src-glut.beos ] ; then cp src-glut.beos/obj*/libglut.so lib  ; fi
 | 
			
		||||
	if [ -d demos   ] ; then cd demos   ; $(MAKE) -f Makefile.BeOS-R4 $@ ; fi
 | 
			
		||||
	if [ -d samples ] ; then cd samples ; $(MAKE) -f Makefile.BeOS-R4 $@ ; fi
 | 
			
		||||
	if [ -d book    ] ; then cd book    ; $(MAKE) -f Makefile.BeOS-R4 $@ ; fi
 | 
			
		||||
 | 
			
		||||
pgi-cygnus pgi-mingw32 \
 | 
			
		||||
cygnus cygnus-linux:
 | 
			
		||||
	-mkdir lib
 | 
			
		||||
	touch src/depend
 | 
			
		||||
	touch src-glu/depend
 | 
			
		||||
	if [ -d widgets-sgi ] ; then touch widgets-sgi/depend ; fi
 | 
			
		||||
	if [ -d src      ] ; then cd src      ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d src-glu  ] ; then cd src-glu  ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d src-glut ] ; then cd src-glut ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d demos    ] ; then cd demos    ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d xdemos   ] ; then cd xdemos   ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d widgets-sgi ] ; then cd widgets-sgi; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
 | 
			
		||||
macintosh:
 | 
			
		||||
	@echo "See the README file for Macintosh intallation information"
 | 
			
		||||
 | 
			
		||||
next:
 | 
			
		||||
	-mkdir lib
 | 
			
		||||
	cd src ; $(MAKE) -f Makefile.X11 "MYCC=${CC}" $@
 | 
			
		||||
	cd src-glu ; $(MAKE) -f Makefile.X11 "MYCC=${CC}" $@
 | 
			
		||||
 | 
			
		||||
openstep:
 | 
			
		||||
	-mkdir lib
 | 
			
		||||
	cd src ; $(MAKE) -f Makefile.X11 "MYCC=${CC}" $@
 | 
			
		||||
	cd src-glu ; $(MAKE) -f Makefile.X11 "MYCC=${CC}" $@
 | 
			
		||||
 | 
			
		||||
os2-x11:
 | 
			
		||||
	if not EXIST .\lib md lib
 | 
			
		||||
	touch src/depend
 | 
			
		||||
	touch src-glu/depend
 | 
			
		||||
	if exist src-glut touch src-glut/depend
 | 
			
		||||
	cd src     & make -f Makefile.X11 $@
 | 
			
		||||
	cd src-glu & make -f Makefile.X11 $@
 | 
			
		||||
	if exist src-glut  cd src-glut & make -f Makefile.X11 $@
 | 
			
		||||
	if exist demos     cd demos    & make -f Makefile.X11 $@
 | 
			
		||||
	if exist xdemos    cd xdemos   & make -f Makefile.X11 $@
 | 
			
		||||
	if exist samples   cd samples  & make -f Makefile.X11 $@
 | 
			
		||||
	if exist book      cd book     & make -f Makefile.X11 $@
 | 
			
		||||
 | 
			
		||||
linux-ggi linux-386-ggi:
 | 
			
		||||
	-mkdir lib
 | 
			
		||||
	touch src/depend
 | 
			
		||||
	touch si-glu/depend
 | 
			
		||||
	if [ -d src-glut        ] ; then touch src-glut/depend ; fi
 | 
			
		||||
	if [ -d widgets-sgi     ] ; then touch widgets-sgi/depend ; fi
 | 
			
		||||
	if [ -d ggi             ] ; then touch ggi/depend      ; fi
 | 
			
		||||
	if [ -d src             ] ; then cd src ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d src/GGI/default ] ; then cd src/GGI/default ; $(MAKE)      ; fi
 | 
			
		||||
	if [ -d src/GGI/display ] ; then cd src/GGI/display ; $(MAKE)      ; fi
 | 
			
		||||
	if [ -d si-glu ]   ; then cd si-glu   ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
#	if [ -d src-glut ] ; then cd src-glut ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d ggi ]      ; then cd ggi      ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d ggi ]      ; then cd ggi/demos; $(MAKE)                    ; fi
 | 
			
		||||
	if [ -d demos ]    ; then cd demos    ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d xdemos ]   ; then cd xdemos   ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d samples ]  ; then cd samples  ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d book ]     ; then cd book     ; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
	if [ -d widgets-sgi ] ; then cd widgets-sgi; $(MAKE) -f Makefile.X11 $@ ; fi
 | 
			
		||||
 | 
			
		||||
# if you change GGI_DEST please change it in ggimesa.conf, too.
 | 
			
		||||
DESTDIR=/usr/local
 | 
			
		||||
GGI_DEST=lib/ggi/mesa
 | 
			
		||||
 | 
			
		||||
linux-ggi-install linux-386-ggi-install:
 | 
			
		||||
	install -d $(DESTDIR)/$(GGI_DEST)/default $(DESTDIR)/$(GGI_DEST)/display $(DESTDIR)/etc/ggi
 | 
			
		||||
	install -m 0755 src/GGI/default/*.so $(DESTDIR)/$(GGI_DEST)/default
 | 
			
		||||
	install -m 0755 src/GGI/display/*.so $(DESTDIR)/$(GGI_DEST)/display
 | 
			
		||||
	install -m 0644 src/GGI/ggimesa.conf $(DESTDIR)/etc/ggi
 | 
			
		||||
#	if [ -z "`grep ggimesa $(DESTDIR)/etc/ggi/libggi.conf`" ]; then \
 | 
			
		||||
#	echo ".include $(DESTDIR)/etc/ggi/ggimesa.conf" >> $(DESTDIR)/etc/ggi/libggi.conf ; \
 | 
			
		||||
#	fi
 | 
			
		||||
 | 
			
		||||
linux-osmesa16 linux-osmesa32:
 | 
			
		||||
	-mkdir lib
 | 
			
		||||
	if [ -d src ] ; then touch src/depend ; fi
 | 
			
		||||
	if [ -d src ] ; then cd src ; $(MAKE) -f Makefile.OSMesa16 $@ ; fi
 | 
			
		||||
 | 
			
		||||
# Remove .o files, emacs backup files, etc.
 | 
			
		||||
clean:
 | 
			
		||||
	-rm -f ggi/*~ *.o
 | 
			
		||||
	-rm -f src/GGI/default/*~ *.so
 | 
			
		||||
	-rm -f src/GGI/display/*~ *.so
 | 
			
		||||
	-rm -f include/*~
 | 
			
		||||
	-rm -f include/GL/*~
 | 
			
		||||
	-rm -f src/*.o src/*~ src/*.a src/*/*.o src/*/*~
 | 
			
		||||
	-rm -f src-glu/*.o src-glu/*~ src-glu/*.a
 | 
			
		||||
	-rm -f si-glu/*/*.o si-glu/*/*/*.o
 | 
			
		||||
	-rm -f src-glut/*.o
 | 
			
		||||
	-rm -f demos/*.o
 | 
			
		||||
	-rm -f book/*.o book/*~
 | 
			
		||||
	-rm -f xdemos/*.o xdemos/*~
 | 
			
		||||
	-rm -f samples/*.o samples/*~
 | 
			
		||||
	-rm -f ggi/*.o ggi/demos/*.o ggi/*.a
 | 
			
		||||
	-rm -f widgets-sgi/*.o
 | 
			
		||||
	-rm -f widgets-mesa/*/*.o
 | 
			
		||||
 | 
			
		||||
# Remove everything that can be remade
 | 
			
		||||
realclean: clean
 | 
			
		||||
	-rm -fr lib lib32 lib64
 | 
			
		||||
	cd demos       && $(MAKE) -f Makefile.X11 realclean || true
 | 
			
		||||
	cd xdemos      && $(MAKE) -f Makefile.X11 realclean || true
 | 
			
		||||
	cd book        && $(MAKE) -f Makefile.X11 realclean || true
 | 
			
		||||
	cd samples     && $(MAKE) -f Makefile.X11 realclean || true
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
DIRECTORY = Mesa-4.0
 | 
			
		||||
LIB_NAME = MesaLib-4.0
 | 
			
		||||
DEMO_NAME = MesaDemos-4.0
 | 
			
		||||
GLU_NAME = MesaGLU-4.0
 | 
			
		||||
GLUT_NAME = GLUT-3.7
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
LIB_FILES =	\
 | 
			
		||||
	$(DIRECTORY)/Makefile*						\
 | 
			
		||||
	$(DIRECTORY)/Make-config					\
 | 
			
		||||
	$(DIRECTORY)/acconfig.h						\
 | 
			
		||||
	$(DIRECTORY)/acinclude.m4					\
 | 
			
		||||
	$(DIRECTORY)/aclocal.m4						\
 | 
			
		||||
	$(DIRECTORY)/common_rules.make					\
 | 
			
		||||
	$(DIRECTORY)/conf.h.in						\
 | 
			
		||||
	$(DIRECTORY)/config.guess					\
 | 
			
		||||
	$(DIRECTORY)/config.sub						\
 | 
			
		||||
	$(DIRECTORY)/configure						\
 | 
			
		||||
	$(DIRECTORY)/configure.in					\
 | 
			
		||||
	$(DIRECTORY)/install-sh						\
 | 
			
		||||
	$(DIRECTORY)/ltconfig						\
 | 
			
		||||
	$(DIRECTORY)/ltmain.sh						\
 | 
			
		||||
	$(DIRECTORY)/missing						\
 | 
			
		||||
	$(DIRECTORY)/mkinstalldirs					\
 | 
			
		||||
	$(DIRECTORY)/stamp-h.in						\
 | 
			
		||||
	$(DIRECTORY)/docs/CONFIG					\
 | 
			
		||||
	$(DIRECTORY)/docs/CONFORM					\
 | 
			
		||||
	$(DIRECTORY)/docs/COPYING					\
 | 
			
		||||
	$(DIRECTORY)/docs/COPYRIGHT					\
 | 
			
		||||
	$(DIRECTORY)/docs/DEVINFO					\
 | 
			
		||||
	$(DIRECTORY)/docs/IAFA-PACKAGE					\
 | 
			
		||||
	$(DIRECTORY)/docs/INSTALL					\
 | 
			
		||||
	$(DIRECTORY)/docs/INSTALL.GNU					\
 | 
			
		||||
	$(DIRECTORY)/docs/README					\
 | 
			
		||||
	$(DIRECTORY)/docs/README.*					\
 | 
			
		||||
	$(DIRECTORY)/docs/RELNOTES*					\
 | 
			
		||||
	$(DIRECTORY)/docs/VERSIONS					\
 | 
			
		||||
	$(DIRECTORY)/docs/*.spec					\
 | 
			
		||||
	$(DIRECTORY)/bin/README						\
 | 
			
		||||
	$(DIRECTORY)/bin/mklib*						\
 | 
			
		||||
	$(DIRECTORY)/descrip.mms					\
 | 
			
		||||
	$(DIRECTORY)/mms-config						\
 | 
			
		||||
	$(DIRECTORY)/m4/*.m4						\
 | 
			
		||||
	$(DIRECTORY)/xlib.opt						\
 | 
			
		||||
	$(DIRECTORY)/mesawin32.mak					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/internal/glcore.h			\
 | 
			
		||||
	$(DIRECTORY)/include/GL/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/dosmesa.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/amesa.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/fxmesa.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/ggimesa.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/gl.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glext.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/gl_mangle.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glu.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glu_mangle.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glx.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glxext.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glx_mangle.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/mesa_wgl.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/mglmesa.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/osmesa.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/svgamesa.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/ugl*.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/vms_x_fix.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/wmesa.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/xmesa.h					\
 | 
			
		||||
	$(DIRECTORY)/include/GL/xmesa_x.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/xmesa_xf86.h				\
 | 
			
		||||
	$(DIRECTORY)/include/GLView.h					\
 | 
			
		||||
	$(DIRECTORY)/include/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/include/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/src/Makefile*					\
 | 
			
		||||
	$(DIRECTORY)/src/libGL_la_SOURCES				\
 | 
			
		||||
	$(DIRECTORY)/src/descrip.mms					\
 | 
			
		||||
	$(DIRECTORY)/src/mesa.conf					\
 | 
			
		||||
	$(DIRECTORY)/src/*.def						\
 | 
			
		||||
	$(DIRECTORY)/src/depend						\
 | 
			
		||||
	$(DIRECTORY)/src/*.[chS]					\
 | 
			
		||||
	$(DIRECTORY)/src/array_cache/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/array_cache/Makefile*				\
 | 
			
		||||
	$(DIRECTORY)/src/array_cache/libMesaAC_la_SOURCES		\
 | 
			
		||||
	$(DIRECTORY)/src/math/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/math/Makefile*					\
 | 
			
		||||
	$(DIRECTORY)/src/swrast/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/swrast/Makefile*				\
 | 
			
		||||
	$(DIRECTORY)/src/swrast/libMesaSwrast_la_SOURCES		\
 | 
			
		||||
	$(DIRECTORY)/src/swrast_setup/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/swrast_setup/Makefile*				\
 | 
			
		||||
	$(DIRECTORY)/src/tnl/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/tnl/Makefile*					\
 | 
			
		||||
	$(DIRECTORY)/src/tnl/libMesaTnl_la_SOURCES			\
 | 
			
		||||
	$(DIRECTORY)/src/tnl_dd/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/tnl_dd/imm/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/src/tnl_dd/imm/NOTES.imm				\
 | 
			
		||||
	$(DIRECTORY)/src/windml/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/windml/tornado/*.c				\
 | 
			
		||||
	$(DIRECTORY)/src/windml/tornado/*.cdf				\
 | 
			
		||||
	$(DIRECTORY)/src/windml/man3/*.3				\
 | 
			
		||||
	$(DIRECTORY)/src/windml/man3/*.html				\
 | 
			
		||||
	$(DIRECTORY)/src/BeOS/*.cpp					\
 | 
			
		||||
	$(DIRECTORY)/src/FX/Makefile.am					\
 | 
			
		||||
	$(DIRECTORY)/src/FX/Makefile.in					\
 | 
			
		||||
	$(DIRECTORY)/src/FX/libMesaFX_la_SOURCES			\
 | 
			
		||||
	$(DIRECTORY)/src/FX/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/FX/*.def					\
 | 
			
		||||
	$(DIRECTORY)/src/FX/X86/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/src/FX/X86/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/src/FX/X86/*.[Shc]					\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/ggimesa.conf.in				\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/default/*.c				\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/default/Makefile.am			\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/default/Makefile.in			\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/default/genkgi.conf.in			\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/display/*.c				\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/display/Makefile.am			\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/display/Makefile.in			\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/display/fbdev.conf.in			\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/include/Makefile.am			\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/include/Makefile.in			\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/include/ggi/Makefile.am			\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/include/ggi/Makefile.in			\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/include/ggi/mesa/Makefile.am		\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/include/ggi/mesa/Makefile.in		\
 | 
			
		||||
	$(DIRECTORY)/src/GGI/include/ggi/mesa/*.h			\
 | 
			
		||||
	$(DIRECTORY)/src/KNOWN_BUGS					\
 | 
			
		||||
	$(DIRECTORY)/src/OSmesa/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/src/OSmesa/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/src/OSmesa/Makefile.win				\
 | 
			
		||||
	$(DIRECTORY)/src/OSmesa/osmesa.def				\
 | 
			
		||||
	$(DIRECTORY)/src/OSmesa/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/SPARC/*.[chS]					\
 | 
			
		||||
	$(DIRECTORY)/src/SPARC/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/src/SPARC/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/src/SVGA/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/src/SVGA/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/src/SVGA/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/Trace/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/Trace/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/src/Trace/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/src/Windows/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/Windows/*.def					\
 | 
			
		||||
	$(DIRECTORY)/src/X/Makefile.am					\
 | 
			
		||||
	$(DIRECTORY)/src/X/Makefile.in					\
 | 
			
		||||
	$(DIRECTORY)/src/X/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/X86/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/X86/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/src/X86/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/src/X86/*.S					\
 | 
			
		||||
	$(DIRECTORY)/si-glu/Makefile.am					\
 | 
			
		||||
	$(DIRECTORY)/si-glu/Makefile.in					\
 | 
			
		||||
	$(DIRECTORY)/si-glu/Makefile.X11				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/Makefile.win				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/glu.def					\
 | 
			
		||||
	$(DIRECTORY)/si-glu/dummy.cc					\
 | 
			
		||||
	$(DIRECTORY)/si-glu/descrip.mms					\
 | 
			
		||||
	$(DIRECTORY)/si-glu/mesaglu.opt					\
 | 
			
		||||
	$(DIRECTORY)/si-glu/include/gluos.h				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/include/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/include/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/Makefile.am			\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/Makefile.in			\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/interface/*.h			\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/interface/*.cc			\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/interface/libNIFac_la_SOURCES	\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/interface/Makefile.am		\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/interface/Makefile.in		\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/internals/*.h			\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/internals/*.cc			\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/internals/libNInt_la_SOURCES	\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/internals/Makefile.am		\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/internals/Makefile.in		\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/nurbtess/*.h			\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/nurbtess/*.cc			\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/nurbtess/libNTess_la_SOURCES	\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/nurbtess/Makefile.am		\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/nurbtess/Makefile.in		\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libtess/README				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libtess/alg-outline				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libtess/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libtess/libtess_la_SOURCES			\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libtess/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libtess/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libutil/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libutil/libutil_la_SOURCES			\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libutil/Makefile.am				\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libutil/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/src-glu/README[12]					\
 | 
			
		||||
	$(DIRECTORY)/src-glu/Makefile*					\
 | 
			
		||||
	$(DIRECTORY)/src-glu/descrip.mms				\
 | 
			
		||||
	$(DIRECTORY)/src-glu/mms_depend					\
 | 
			
		||||
	$(DIRECTORY)/src-glu/*.def					\
 | 
			
		||||
	$(DIRECTORY)/src-glu/depend					\
 | 
			
		||||
	$(DIRECTORY)/src-glu/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/ChangeLog				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/INSTALL				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/Makefile.in				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/README				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/TODO					\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/configure				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/configure.in				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/demos/ChangeLog			\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/demos/Cube				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/demos/Ed				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/demos/Makefile.in			\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/demos/Mcube				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/demos/Tea				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/demos/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/demos/events				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/include/GL/ChangeLog			\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/include/GL/*.h			\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/include/GL/Makefile.in		\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/man/ChangeLog				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/man/GL*				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/man/Makefile.in			\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/man/Mesa*				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/src/ChangeLog				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/src/*.c				\
 | 
			
		||||
	$(DIRECTORY)/widgets-mesa/src/Makefile.in			\
 | 
			
		||||
	$(DIRECTORY)/widgets-sgi/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/widgets-sgi/Makefile*				\
 | 
			
		||||
	$(DIRECTORY)/widgets-sgi/README					\
 | 
			
		||||
	$(DIRECTORY)/util/README					\
 | 
			
		||||
	$(DIRECTORY)/util/Makefile.am					\
 | 
			
		||||
	$(DIRECTORY)/util/Makefile.in					\
 | 
			
		||||
	$(DIRECTORY)/util/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/util/sampleMakefile				\
 | 
			
		||||
	$(DIRECTORY)/vms/analyze_map.com				\
 | 
			
		||||
	$(DIRECTORY)/vms/xlib.opt					\
 | 
			
		||||
	$(DIRECTORY)/vms/xlib_share.opt					\
 | 
			
		||||
	$(DIRECTORY)/BeOS/Makefile					\
 | 
			
		||||
	$(DIRECTORY)/BeOS/*.cpp
 | 
			
		||||
 | 
			
		||||
OBSOLETE_LIB_FILES = \
 | 
			
		||||
	$(DIRECTORY)/src/Allegro/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/D3D/*.cpp					\
 | 
			
		||||
	$(DIRECTORY)/src/D3D/*.CPP					\
 | 
			
		||||
	$(DIRECTORY)/src/D3D/*.h					\
 | 
			
		||||
	$(DIRECTORY)/src/D3D/*.H					\
 | 
			
		||||
	$(DIRECTORY)/src/D3D/*.c					\
 | 
			
		||||
	$(DIRECTORY)/src/D3D/*.C					\
 | 
			
		||||
	$(DIRECTORY)/src/D3D/MAKEFILE					\
 | 
			
		||||
	$(DIRECTORY)/src/D3D/*bat					\
 | 
			
		||||
	$(DIRECTORY)/src/D3D/*DEF					\
 | 
			
		||||
	$(DIRECTORY)/src/DOS/DEPEND.DOS					\
 | 
			
		||||
	$(DIRECTORY)/src/DOS/*.c					\
 | 
			
		||||
	$(DIRECTORY)/src/S3/*.[ch]					\
 | 
			
		||||
	$(DIRECTORY)/src/S3/*.def					\
 | 
			
		||||
	$(DIRECTORY)/src/S3/*.mak					\
 | 
			
		||||
	$(DIRECTORY)/src/S3/*.rc					\
 | 
			
		||||
	$(DIRECTORY)/macos/README					\
 | 
			
		||||
	$(DIRECTORY)/macos/gli_api/*.h					\
 | 
			
		||||
	$(DIRECTORY)/macos/cglpane/CGLPane.*				\
 | 
			
		||||
	$(DIRECTORY)/macos/include-mac/*.h				\
 | 
			
		||||
	$(DIRECTORY)/macos/libraries/*.stub				\
 | 
			
		||||
	$(DIRECTORY)/macos/libraries/*Stub				\
 | 
			
		||||
	$(DIRECTORY)/macos/projects/*.mcp				\
 | 
			
		||||
	$(DIRECTORY)/macos/projects/*.exp				\
 | 
			
		||||
	$(DIRECTORY)/macos/projects/*.h					\
 | 
			
		||||
	$(DIRECTORY)/macos/resources/*.c				\
 | 
			
		||||
	$(DIRECTORY)/macos/resources/*.r				\
 | 
			
		||||
	$(DIRECTORY)/macos/resources/*.rsrc				\
 | 
			
		||||
	$(DIRECTORY)/macos/src-agl/*.exp				\
 | 
			
		||||
	$(DIRECTORY)/macos/src-agl/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/macos/src-gli/*.[ch]				\
 | 
			
		||||
	$(DIRECTORY)/OpenStep
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
DEMO_FILES =	\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glut.h		\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glutf90.h	\
 | 
			
		||||
	$(DIRECTORY)/src-glut/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/src-glut/depend		\
 | 
			
		||||
	$(DIRECTORY)/src-glut/*def		\
 | 
			
		||||
	$(DIRECTORY)/src-glut/descrip.mms	\
 | 
			
		||||
	$(DIRECTORY)/src-glut/mms_depend	\
 | 
			
		||||
	$(DIRECTORY)/src-glut/*.[ch]		\
 | 
			
		||||
	$(DIRECTORY)/images/*			\
 | 
			
		||||
	$(DIRECTORY)/demos/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/demos/descrip.mms		\
 | 
			
		||||
	$(DIRECTORY)/demos/*.[ch]		\
 | 
			
		||||
	$(DIRECTORY)/demos/*.cxx		\
 | 
			
		||||
	$(DIRECTORY)/demos/*.dat		\
 | 
			
		||||
	$(DIRECTORY)/demos/README		\
 | 
			
		||||
	$(DIRECTORY)/xdemos/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/xdemos/descrip.mms		\
 | 
			
		||||
	$(DIRECTORY)/xdemos/*.[cf]		\
 | 
			
		||||
	$(DIRECTORY)/book/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/book/README		\
 | 
			
		||||
	$(DIRECTORY)/book/*.[ch]		\
 | 
			
		||||
	$(DIRECTORY)/samples/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/samples/README		\
 | 
			
		||||
	$(DIRECTORY)/samples/*.c		\
 | 
			
		||||
	$(DIRECTORY)/mtdemos			\
 | 
			
		||||
	$(DIRECTORY)/windmldemos/Makefile.ugl	\
 | 
			
		||||
	$(DIRECTORY)/windmldemos/*.c		\
 | 
			
		||||
	$(DIRECTORY)/windmldemos/*.bmp		\
 | 
			
		||||
	$(DIRECTORY)/ggi
 | 
			
		||||
 | 
			
		||||
OBSOLETE_DEMO_FILES = \
 | 
			
		||||
	$(DIRECTORY)/include/GL/glut_h.dja	\
 | 
			
		||||
	$(DIRECTORY)/src-glut.dja/*		\
 | 
			
		||||
	$(DIRECTORY)/src-glut.beos/Makefile	\
 | 
			
		||||
	$(DIRECTORY)/src-glut.beos/*.cpp	\
 | 
			
		||||
	$(DIRECTORY)/src-glut.beos/*.h		\
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
SI_GLU_FILES = \
 | 
			
		||||
	$(DIRECTORY)/Makefile*				\
 | 
			
		||||
	$(DIRECTORY)/Make-config			\
 | 
			
		||||
	$(DIRECTORY)/bin/mklib*				\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glu.h			\
 | 
			
		||||
	$(DIRECTORY)/si-glu/Makefile.X11		\
 | 
			
		||||
	$(DIRECTORY)/si-glu/include/gluos.h		\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/interface/*.h	\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/interface/*.cc	\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/internals/*.h	\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/internals/*.cc	\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/nurbstess/*.h	\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libnurbs/nurbstess/*.cc	\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libtess/README		\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libtess/alg-outline		\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libtess/*.[ch]		\
 | 
			
		||||
	$(DIRECTORY)/si-glu/libutil/*.[ch]
 | 
			
		||||
 | 
			
		||||
GLU_FILES = \
 | 
			
		||||
	$(DIRECTORY)/Makefile*			\
 | 
			
		||||
	$(DIRECTORY)/Make-config		\
 | 
			
		||||
	$(DIRECTORY)/bin/mklib*			\
 | 
			
		||||
	$(DIRECTORY)/include/GL/gl.h		\
 | 
			
		||||
	$(DIRECTORY)/include/GL/gl_mangle.h	\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glext.h		\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glu.h		\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glu_mangle.h	\
 | 
			
		||||
	$(DIRECTORY)/src-glu/README[12]		\
 | 
			
		||||
	$(DIRECTORY)/src-glu/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/src-glu/descrip.mms	\
 | 
			
		||||
	$(DIRECTORY)/src-glu/mms_depend		\
 | 
			
		||||
	$(DIRECTORY)/src-glu/*.def		\
 | 
			
		||||
	$(DIRECTORY)/src-glu/depend		\
 | 
			
		||||
	$(DIRECTORY)/src-glu/*.[ch]
 | 
			
		||||
 | 
			
		||||
GLUT_FILES = \
 | 
			
		||||
	$(DIRECTORY)/Makefile*			\
 | 
			
		||||
	$(DIRECTORY)/Make-config		\
 | 
			
		||||
	$(DIRECTORY)/bin/mklib*			\
 | 
			
		||||
	$(DIRECTORY)/include/GL/gl.h		\
 | 
			
		||||
	$(DIRECTORY)/include/GL/gl_mangle.h	\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glext.h		\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glu.h		\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glu_mangle.h	\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glut.h		\
 | 
			
		||||
	$(DIRECTORY)/include/GL/glutf90.h	\
 | 
			
		||||
	$(DIRECTORY)/src-glut/Makefile*		\
 | 
			
		||||
	$(DIRECTORY)/src-glut/depend		\
 | 
			
		||||
	$(DIRECTORY)/src-glut/*def		\
 | 
			
		||||
	$(DIRECTORY)/src-glut/descrip.mms	\
 | 
			
		||||
	$(DIRECTORY)/src-glut/mms_depend	\
 | 
			
		||||
	$(DIRECTORY)/src-glut/*.[ch]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
OBSOLETE_GLUT_FILES = \
 | 
			
		||||
	$(DIRECTORY)/include/GL/glut_h.dja	\
 | 
			
		||||
	$(DIRECTORY)/src-glut.dja/*		\
 | 
			
		||||
	$(DIRECTORY)/src-glut.beos/Makefile	\
 | 
			
		||||
	$(DIRECTORY)/src-glut.beos/*.cpp	\
 | 
			
		||||
	$(DIRECTORY)/src-glut.beos/*.h
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
lib_tar:
 | 
			
		||||
	cp Makefile.X11 Makefile ; \
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	tar -cvf $(LIB_NAME).tar $(LIB_FILES) ; \
 | 
			
		||||
	gzip $(LIB_NAME).tar ; \
 | 
			
		||||
	mv $(LIB_NAME).tar.gz $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
demo_tar:
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	tar -cvf $(DEMO_NAME).tar $(DEMO_FILES) ; \
 | 
			
		||||
	gzip $(DEMO_NAME).tar ; \
 | 
			
		||||
	mv $(DEMO_NAME).tar.gz $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
glu_tar:
 | 
			
		||||
	cp Makefile.X11 Makefile ; \
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	tar -cvf $(GLU_NAME).tar $(GLU_FILES) ; \
 | 
			
		||||
	gzip $(GLU_NAME).tar ; \
 | 
			
		||||
	mv $(GLU_NAME).tar.gz $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
glut_tar:
 | 
			
		||||
	cp Makefile.X11 Makefile ; \
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	tar -cvf $(GLUT_NAME).tar $(GLUT_FILES) ; \
 | 
			
		||||
	gzip $(GLUT_NAME).tar ; \
 | 
			
		||||
	mv $(GLUT_NAME).tar.gz $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
lib_zip:
 | 
			
		||||
	-rm $(LIB_NAME).zip ; \
 | 
			
		||||
	cp Makefile.X11 Makefile ; \
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	zip -r $(LIB_NAME).zip $(LIB_FILES) ; \
 | 
			
		||||
	mv $(LIB_NAME).zip $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
demo_zip:
 | 
			
		||||
	-rm $(DEMO_NAME).zip ; \
 | 
			
		||||
	cd .. ; \
 | 
			
		||||
	zip -r $(DEMO_NAME).zip $(DEMO_FILES) ; \
 | 
			
		||||
	mv $(DEMO_NAME).zip $(DIRECTORY)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
SRC_FILES =	\
 | 
			
		||||
	RELNOTES		\
 | 
			
		||||
	src/Makefile*		\
 | 
			
		||||
	src/depend		\
 | 
			
		||||
	src/*.[chS]		\
 | 
			
		||||
	src/*/*.[ch]		\
 | 
			
		||||
	include/GL/*.h
 | 
			
		||||
 | 
			
		||||
srctar:
 | 
			
		||||
	tar -cvf src.tar $(SRC_FILES) ; \
 | 
			
		||||
	gzip src.tar
 | 
			
		||||
 | 
			
		||||
srctar.zip:
 | 
			
		||||
	-rm src.zip
 | 
			
		||||
	zip -r src.zip $(SRC_FILES) ; \
 | 
			
		||||
							
								
								
									
										92
									
								
								Makefile.mgw
									
									
									
									
									
								
							
							
						
						
									
										92
									
								
								Makefile.mgw
									
									
									
									
									
								
							@@ -1,92 +0,0 @@
 | 
			
		||||
# Mesa 3-D graphics library
 | 
			
		||||
# Version:  4.0
 | 
			
		||||
# 
 | 
			
		||||
# Copyright (C) 1999  Brian Paul   All Rights Reserved.
 | 
			
		||||
# 
 | 
			
		||||
# Permission is hereby granted, free of charge, to any person obtaining a
 | 
			
		||||
# copy of this software and associated documentation files (the "Software"),
 | 
			
		||||
# to deal in the Software without restriction, including without limitation
 | 
			
		||||
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
 | 
			
		||||
# and/or sell copies of the Software, and to permit persons to whom the
 | 
			
		||||
# Software is furnished to do so, subject to the following conditions:
 | 
			
		||||
# 
 | 
			
		||||
# The above copyright notice and this permission notice shall be included
 | 
			
		||||
# in all copies or substantial portions of the Software.
 | 
			
		||||
# 
 | 
			
		||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 | 
			
		||||
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 | 
			
		||||
# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
 | 
			
		||||
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 | 
			
		||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 | 
			
		||||
 | 
			
		||||
# MinGW makefile v1.2 for Mesa
 | 
			
		||||
#
 | 
			
		||||
#  Copyright (C) 2002 - Daniel Borca
 | 
			
		||||
#  Email : dborca@users.sourceforge.net
 | 
			
		||||
#  Web   : http://www.geocities.com/dborca
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
#  Available options:
 | 
			
		||||
#
 | 
			
		||||
#    Environment variables:
 | 
			
		||||
#	CPU		optimize for the given processor.
 | 
			
		||||
#			default = pentium
 | 
			
		||||
#	GLIDE		path to Glide3 SDK; used with FX.
 | 
			
		||||
#			default = $(TOP)/glide3
 | 
			
		||||
#	FX=1		build for 3dfx Glide3. Note that this disables
 | 
			
		||||
#			compilation of most WMesa code and requires fxMesa.
 | 
			
		||||
#			As a consequence, you'll need the Win32 Glide3
 | 
			
		||||
#			library to build any application.
 | 
			
		||||
#			default = no
 | 
			
		||||
#	ICD=1		build the installable client driver interface
 | 
			
		||||
#			(windows opengl driver interface)
 | 
			
		||||
#			default = no
 | 
			
		||||
#	X86=1		optimize for x86 (if possible, use MMX, SSE, 3DNow).
 | 
			
		||||
#			default = no
 | 
			
		||||
#
 | 
			
		||||
#    Targets:
 | 
			
		||||
#	all:		build everything
 | 
			
		||||
#	libgl:		build GL
 | 
			
		||||
#	clean:		remove object files
 | 
			
		||||
#	realclean:	remove all generated files
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.PHONY : all libgl clean realclean
 | 
			
		||||
 | 
			
		||||
CPU ?= pentium
 | 
			
		||||
 | 
			
		||||
ifeq ($(ICD),1)
 | 
			
		||||
  # when -std=c99 mingw will not define WIN32
 | 
			
		||||
  CFLAGS = -Wall -W -Werror
 | 
			
		||||
else
 | 
			
		||||
  # I love c89
 | 
			
		||||
  CFLAGS = -Wall -W -pedantic
 | 
			
		||||
endif
 | 
			
		||||
CFLAGS += -O2 -ffast-math -mtune=$(CPU)
 | 
			
		||||
 | 
			
		||||
export CFLAGS
 | 
			
		||||
 | 
			
		||||
ifeq ($(wildcard $(addsuffix /rm.exe,$(subst ;, ,$(PATH)))),)
 | 
			
		||||
UNLINK = del $(subst /,\,$(1))
 | 
			
		||||
else
 | 
			
		||||
UNLINK = $(RM) $(1)
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
all: libgl
 | 
			
		||||
 | 
			
		||||
libgl: lib
 | 
			
		||||
	$(MAKE) -f Makefile.mgw -C src/mesa
 | 
			
		||||
 | 
			
		||||
lib:
 | 
			
		||||
	mkdir lib
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	$(MAKE) -f Makefile.mgw clean -C src/mesa
 | 
			
		||||
 | 
			
		||||
realclean: clean
 | 
			
		||||
	-$(call UNLINK,lib/*.a)
 | 
			
		||||
	-$(call UNLINK,lib/*.dll)
 | 
			
		||||
							
								
								
									
										179
									
								
								Mesa.dsw
									
									
									
									
									
								
							
							
						
						
									
										179
									
								
								Mesa.dsw
									
									
									
									
									
								
							@@ -1,179 +0,0 @@
 | 
			
		||||
Microsoft Developer Studio Workspace File, Format Version 6.00
 | 
			
		||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "array_cache"=".\SRC\MESA\array_cache\array_cache.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "gdi"=".\src\mesa\drivers\windows\gdi\gdi.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name array_cache
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name main
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name math
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name swrast_setup
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name swrast
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name tnl
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name glapi
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name shader
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "glapi"=".\SRC\MESA\glapi\glapi.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "glu"=".\src\glu\sgi\glu.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name gdi
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "main"=".\SRC\MESA\main\main.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "math"=".\SRC\MESA\math\math.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "osmesa"=".\SRC\MESA\DRIVERS\osmesa\osmesa.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
    Begin Project Dependency
 | 
			
		||||
    Project_Dep_Name gdi
 | 
			
		||||
    End Project Dependency
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "shader"=".\SRC\MESA\shader\shader.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "swrast"=".\SRC\MESA\swrast\swrast.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "swrast_setup"=".\SRC\MESA\swrast_setup\swrast_setup.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Project: "tnl"=".\SRC\MESA\tnl\tnl.dsp" - Package Owner=<4>
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<4>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
Global:
 | 
			
		||||
 | 
			
		||||
Package=<5>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
Package=<3>
 | 
			
		||||
{{{
 | 
			
		||||
}}}
 | 
			
		||||
 | 
			
		||||
###############################################################################
 | 
			
		||||
 | 
			
		||||
@@ -1,60 +0,0 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Simple shell script for installing Mesa's header and library files.
 | 
			
		||||
# If the copy commands below don't work on a particular system (i.e. the
 | 
			
		||||
# -f or -d flags), we may need to branch on `uname` to do the right thing.
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
TOP=.
 | 
			
		||||
 | 
			
		||||
INCLUDE_DIR="/usr/local/include"
 | 
			
		||||
LIB_DIR="/usr/local/lib"
 | 
			
		||||
 | 
			
		||||
if [ x$# == "x0" ] ; then
 | 
			
		||||
echo
 | 
			
		||||
echo "***** Mesa installation - You may need root privileges to do this *****"
 | 
			
		||||
echo
 | 
			
		||||
echo "Default directory for header files is:" ${INCLUDE_DIR}
 | 
			
		||||
echo "Enter new directory or press <Enter> to accept this default."
 | 
			
		||||
 | 
			
		||||
read INPUT
 | 
			
		||||
if [ x${INPUT} != "x" ] ; then
 | 
			
		||||
	INCLUDE_DIR=${INPUT}
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
echo
 | 
			
		||||
echo "Default directory for library files is:" ${LIB_DIR}
 | 
			
		||||
echo "Enter new directory or press <Enter> to accept this default."
 | 
			
		||||
 | 
			
		||||
read INPUT
 | 
			
		||||
if [ x${INPUT} != "x" ] ; then
 | 
			
		||||
	LIB_DIR=${INPUT}
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
echo
 | 
			
		||||
echo "About to install Mesa header files (GL/*.h) in: " ${INCLUDE_DIR}/GL
 | 
			
		||||
echo "and Mesa library files (libGL.*, etc) in: " ${LIB_DIR}
 | 
			
		||||
echo "Press <Enter> to continue, or <ctrl>-C to abort."
 | 
			
		||||
 | 
			
		||||
read INPUT
 | 
			
		||||
 | 
			
		||||
else
 | 
			
		||||
INCLUDE_DIR=$1/include
 | 
			
		||||
LIB_DIR=$1/lib
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# flags:
 | 
			
		||||
#  -f = force
 | 
			
		||||
#  -d = preserve symlinks
 | 
			
		||||
 | 
			
		||||
set -v
 | 
			
		||||
 | 
			
		||||
mkdir ${INCLUDE_DIR}
 | 
			
		||||
mkdir ${INCLUDE_DIR}/GL
 | 
			
		||||
mkdir ${LIB_DIR}
 | 
			
		||||
cp -f ${TOP}/include/GL/*.h ${INCLUDE_DIR}/GL
 | 
			
		||||
cp -fd ${TOP}/lib*/lib* ${LIB_DIR}
 | 
			
		||||
 | 
			
		||||
echo "Done."
 | 
			
		||||
							
								
								
									
										638
									
								
								bin/mklib
									
									
									
									
									
								
							
							
						
						
									
										638
									
								
								bin/mklib
									
									
									
									
									
								
							@@ -1,638 +0,0 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
# Make a shared library.
 | 
			
		||||
# Basically do a switch/case depending on the OS and make a shared (or static)
 | 
			
		||||
# library conforming to that OS.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Usage:
 | 
			
		||||
#   mklib [options] objects ...
 | 
			
		||||
# Options:
 | 
			
		||||
#   -o LIBRARY    specifies the name of resulting library
 | 
			
		||||
#                 ("-o GL" for example, might result in "libGL.so" being made)
 | 
			
		||||
#   -major N      specifies major version number (default is 1)
 | 
			
		||||
#   -minor N      specifies minor version number (default is 0)
 | 
			
		||||
#   -patch N      specifies patch version number (default is 0)
 | 
			
		||||
#   -lLIBRARY     specifies a dependency on LIBRARY
 | 
			
		||||
#   -LDIR         search in DIR for library dependencies
 | 
			
		||||
#   -cplusplus    link with C++ runtime
 | 
			
		||||
#   -static       make a static library (default is dynamic/shared)
 | 
			
		||||
#   -install DIR  move resulting library file(s) to DIR
 | 
			
		||||
#   -arch ARCH    override using `uname` to determine architecture
 | 
			
		||||
#   -archopt OPT  specify an extra achitecture-specific option OPT
 | 
			
		||||
#   -noprefix     don't prefix library name with "lib" or any suffix
 | 
			
		||||
#   -exports FILE only export the symbols listed in FILE
 | 
			
		||||
#
 | 
			
		||||
# The library name should just be "GL" or "GLU", etc.  The 'lib' prefix
 | 
			
		||||
# will be added here if needed, as well as the ".so" or ".a" suffix,
 | 
			
		||||
# etc (unless the -noprefix option is used).
 | 
			
		||||
#
 | 
			
		||||
# objects should be:  foo.o bar.o etc.o
 | 
			
		||||
#
 | 
			
		||||
# Environment variables recognized:
 | 
			
		||||
#   CC   C compiler command
 | 
			
		||||
#   CXX  C++ compiler command
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Option defaults
 | 
			
		||||
#
 | 
			
		||||
LIBNAME=""
 | 
			
		||||
MAJOR=1
 | 
			
		||||
MINOR=0
 | 
			
		||||
PATCH=""
 | 
			
		||||
DEPS=""
 | 
			
		||||
CPLUSPLUS=0
 | 
			
		||||
STATIC=0
 | 
			
		||||
INSTALLDIR="."
 | 
			
		||||
ARCH="auto"
 | 
			
		||||
ARCHOPT=""
 | 
			
		||||
NOPREFIX=0
 | 
			
		||||
EXPORTS=""
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Parse arguments
 | 
			
		||||
#
 | 
			
		||||
while true
 | 
			
		||||
do
 | 
			
		||||
    case $1 in
 | 
			
		||||
	'-o')         shift 1; LIBNAME=$1;;
 | 
			
		||||
	'-major')     shift 1; MAJOR=$1;;
 | 
			
		||||
	'-minor')     shift 1; MINOR=$1;;
 | 
			
		||||
	'-patch')     shift 1; PATCH=$1;;
 | 
			
		||||
	-l*)          DEPS="$DEPS $1";;
 | 
			
		||||
	-L*)          DEPS="$DEPS $1";;
 | 
			
		||||
	'-cplusplus') CPLUSPLUS=1;;
 | 
			
		||||
	'-static')    STATIC=1;;
 | 
			
		||||
	'-install')   shift 1; INSTALLDIR=$1;;
 | 
			
		||||
	'-arch')      shift 1; ARCH=$1;;
 | 
			
		||||
	'-archopt')   shift 1; ARCHOPT=$1;;
 | 
			
		||||
	'-noprefix')  NOPREFIX=1;;
 | 
			
		||||
	'-exports')   shift 1; EXPORTS=$1;;
 | 
			
		||||
	-*)           echo "mklib: Unknown option: " $1 ; exit 1;;
 | 
			
		||||
	*) break
 | 
			
		||||
    esac
 | 
			
		||||
    shift 1
 | 
			
		||||
done
 | 
			
		||||
OBJECTS=$@
 | 
			
		||||
 | 
			
		||||
if [ ${ARCH} = "auto" ] ; then
 | 
			
		||||
    ARCH=`uname`
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Error checking
 | 
			
		||||
#
 | 
			
		||||
if [ "x${LIBNAME}" = "x" ] ; then
 | 
			
		||||
    echo "mklib: Error: no library name specified"
 | 
			
		||||
    exit 1
 | 
			
		||||
fi
 | 
			
		||||
if [ "x${OBJECTS}" = "x" ] ; then
 | 
			
		||||
    echo "mklib: Error: no object files specified"
 | 
			
		||||
    exit 1
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Debugging info
 | 
			
		||||
#
 | 
			
		||||
if [  ]  ; then
 | 
			
		||||
    echo "-----------------"
 | 
			
		||||
    echo ARCH is $ARCH
 | 
			
		||||
    echo LIBNAME is $LIBNAME
 | 
			
		||||
    echo MAJOR is $MAJOR
 | 
			
		||||
    echo MINOR is $MINOR
 | 
			
		||||
    echo PATCH is $PATCH
 | 
			
		||||
    echo DEPS are $DEPS
 | 
			
		||||
    echo "EXPORTS in" $EXPORTS
 | 
			
		||||
    echo "-----------------"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# OK, make the library now
 | 
			
		||||
#
 | 
			
		||||
case $ARCH in
 | 
			
		||||
 | 
			
		||||
    'Linux' | 'OpenBSD')
 | 
			
		||||
	# we assume gcc
 | 
			
		||||
 | 
			
		||||
	# Set default compilers if env vars not set
 | 
			
		||||
	if [ "x$CXX" = "x" ] ; then
 | 
			
		||||
	    CXX=g++
 | 
			
		||||
	fi
 | 
			
		||||
	if [ "x$CC" = "x" ] ; then
 | 
			
		||||
	    CC=gcc
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
	if [ $NOPREFIX = 1 ] ; then
 | 
			
		||||
	    # No "lib" or ".so" part
 | 
			
		||||
	    echo "mklib: Making" $ARCH "shared library: " ${LIBNAME}
 | 
			
		||||
	    #OPTS="-shared -Wl,-soname,${LIBNAME}"  # soname???
 | 
			
		||||
	    OPTS="-shared"
 | 
			
		||||
            if [ $CPLUSPLUS = 1 ] ; then
 | 
			
		||||
                LINK=$CXX
 | 
			
		||||
            else
 | 
			
		||||
                LINK=$CC
 | 
			
		||||
            fi
 | 
			
		||||
            rm -f ${LIBNAME}
 | 
			
		||||
 | 
			
		||||
            # make lib
 | 
			
		||||
            ${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
 | 
			
		||||
            # finish up
 | 
			
		||||
            FINAL_LIBS="${LIBNAME}"
 | 
			
		||||
        elif [ $STATIC = 1 ] ; then
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}"     # prefix with "lib"
 | 
			
		||||
            echo "mklib: Making" $ARCH "static library: " ${LIBNAME}.a
 | 
			
		||||
            LINK="ar"
 | 
			
		||||
            OPTS="-ru"
 | 
			
		||||
            # make lib
 | 
			
		||||
            ${LINK} ${OPTS} ${LIBNAME}.a ${OBJECTS}
 | 
			
		||||
	    ranlib ${LIBNAME}.a
 | 
			
		||||
            # finish up
 | 
			
		||||
            FINAL_LIBS=${LIBNAME}.a
 | 
			
		||||
        else
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}"     # prefix with "lib"
 | 
			
		||||
	    if [ $ARCH = 'Linux' ] ; then
 | 
			
		||||
		OPTS="-Xlinker -Bsymbolic -shared -Wl,-soname,${LIBNAME}.so.${MAJOR}"
 | 
			
		||||
	    else
 | 
			
		||||
		OPTS="-shared -Wl,-soname,${LIBNAME}.so.${MAJOR}"
 | 
			
		||||
	    fi
 | 
			
		||||
	    if [ $EXPORTS ] ; then
 | 
			
		||||
		#OPTS="${OPTS} -Xlinker --retain-symbols-file ${EXPORTS}"
 | 
			
		||||
		# Make the 'exptmp' file for --version-script option
 | 
			
		||||
		echo "VERSION_${MAJOR}.${MINOR} {" > exptmp
 | 
			
		||||
		echo "global:" >> exptmp
 | 
			
		||||
		sed 's/$/;/' ${EXPORTS} >> exptmp
 | 
			
		||||
		echo "local:" >> exptmp
 | 
			
		||||
		echo "*;" >> exptmp
 | 
			
		||||
		echo "};" >> exptmp
 | 
			
		||||
		OPTS="${OPTS} -Xlinker --version-script=exptmp"
 | 
			
		||||
		# exptmp is removed below
 | 
			
		||||
	    fi
 | 
			
		||||
 | 
			
		||||
	    # Check if objects are 32-bit and we're running in 64-bit
 | 
			
		||||
	    # environment.  If so, pass -m32 flag to linker.
 | 
			
		||||
	    set ${OBJECTS}
 | 
			
		||||
	    ABI32=`file $1 | grep 32-bit`
 | 
			
		||||
	    if [ "${ABI32}" -a `uname -m` = "x86_64" ] ; then
 | 
			
		||||
		OPTS="-m32 ${OPTS}"
 | 
			
		||||
	    fi
 | 
			
		||||
 | 
			
		||||
	    if [ x${PATCH} = "x" ] ; then
 | 
			
		||||
		VERSION="${MAJOR}.${MINOR}"
 | 
			
		||||
	    else
 | 
			
		||||
		VERSION="${MAJOR}.${MINOR}.${PATCH}"
 | 
			
		||||
	    fi
 | 
			
		||||
 | 
			
		||||
            echo "mklib: Making" $ARCH "shared library: " ${LIBNAME}.so.${VERSION}
 | 
			
		||||
 | 
			
		||||
            if [ $CPLUSPLUS = 1 ] ; then
 | 
			
		||||
                LINK=$CXX
 | 
			
		||||
            else
 | 
			
		||||
                LINK=$CC
 | 
			
		||||
            fi
 | 
			
		||||
 | 
			
		||||
            # rm any old libs
 | 
			
		||||
            rm -f ${LIBNAME}.so.${VERSION}
 | 
			
		||||
            rm -f ${LIBNAME}.so.${MAJOR}
 | 
			
		||||
            rm -f ${LIBNAME}.so
 | 
			
		||||
 | 
			
		||||
            # make lib
 | 
			
		||||
            ${LINK} ${OPTS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS}
 | 
			
		||||
            # make usual symlinks
 | 
			
		||||
            ln -s ${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR}
 | 
			
		||||
            ln -s ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so
 | 
			
		||||
            # finish up
 | 
			
		||||
            FINAL_LIBS="${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so"
 | 
			
		||||
#	    rm -f exptmp
 | 
			
		||||
        fi
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'SunOS')
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	    echo "mklib: Making SunOS static library: " ${LIBNAME}
 | 
			
		||||
	    rm -f ${LIBNAME}
 | 
			
		||||
	    ar -ruv ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	    FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	else
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.so"
 | 
			
		||||
	    echo "mklib: Making SunOS shared library: " ${LIBNAME}
 | 
			
		||||
	    # XXX OPTS for gcc should be -shared, but that doesn't work.
 | 
			
		||||
	    # Using -G does work though.
 | 
			
		||||
	    if [ $CPLUSPLUS = 1 ] ; then
 | 
			
		||||
		# determine linker and options for C++ code
 | 
			
		||||
		if [ "x${CXX}" = "xg++" ] ; then
 | 
			
		||||
		    # use g++
 | 
			
		||||
		    LINK="g++"
 | 
			
		||||
		    OPTS="-G"
 | 
			
		||||
		elif [ "x${CXX}" = "xCC" ] ; then
 | 
			
		||||
		    # use Sun CC
 | 
			
		||||
		    LINK="CC"
 | 
			
		||||
		    OPTS="-G"
 | 
			
		||||
		elif [ "x${CXX}" = "xc++" ] ; then
 | 
			
		||||
		    # use Sun c++
 | 
			
		||||
		    LINK="c++"
 | 
			
		||||
		    OPTS="-G"
 | 
			
		||||
		elif [ `which c++` ] ; then
 | 
			
		||||
		    # use Sun c++
 | 
			
		||||
		    LINK="c++"
 | 
			
		||||
		    OPTS="-G"
 | 
			
		||||
		elif [ `type g++` ] ; then
 | 
			
		||||
		    # use g++
 | 
			
		||||
		    LINK="g++"
 | 
			
		||||
		    OPTS="-G"
 | 
			
		||||
		else
 | 
			
		||||
		    echo "mklib: warning: can't find C++ comiler, trying CC."
 | 
			
		||||
		    LINK="CC"
 | 
			
		||||
		    OPTS="-G"
 | 
			
		||||
		fi
 | 
			
		||||
	    elif [ "x${CC}" = "xgcc" ] ; then
 | 
			
		||||
		# use gcc for linking
 | 
			
		||||
		LINK="gcc"
 | 
			
		||||
		OPTS="-G"
 | 
			
		||||
	    else
 | 
			
		||||
		# use native Sun linker
 | 
			
		||||
		LINK="ld"
 | 
			
		||||
		OPTS="-G"
 | 
			
		||||
	    fi
 | 
			
		||||
	    echo "mklib: linker is" ${LINK} ${OPTS}
 | 
			
		||||
	    rm -f ${LIBNAME}.${MAJOR} ${LIBNAME}
 | 
			
		||||
	    ${LINK} ${OPTS} -o ${LIBNAME}.${MAJOR} ${OBJECTS} ${DEPS}
 | 
			
		||||
	    ln -s ${LIBNAME}.${MAJOR} ${LIBNAME}
 | 
			
		||||
	    FINAL_LIBS="${LIBNAME}.${MAJOR} ${LIBNAME}"
 | 
			
		||||
	fi
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'FreeBSD')
 | 
			
		||||
	if [ $NOPREFIX = 1 ] ; then
 | 
			
		||||
	    # No "lib" or ".so" part
 | 
			
		||||
	    echo "mklib: Making FreeBSD shared library: " ${LIBNAME}
 | 
			
		||||
	    rm -f ${LIBNAME}
 | 
			
		||||
	    ld -Bshareable -o ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	    FINAL_LIBS=${LIBNAME}
 | 
			
		||||
        elif [ $STATIC = 1 ] ; then
 | 
			
		||||
	    STLIB="lib${LIBNAME}.a"
 | 
			
		||||
	    echo "mklib: Making FreeBSD static library: " ${STLIB}
 | 
			
		||||
	    rm -f ${STLIB}
 | 
			
		||||
	    ar cq ${STLIB} ${OBJECTS}
 | 
			
		||||
	    ranlib ${STLIB}
 | 
			
		||||
	    FINAL_LIBS=${STLIB}
 | 
			
		||||
	else
 | 
			
		||||
	    SHLIB="lib${LIBNAME}.so.${MAJOR}.${MINOR}"
 | 
			
		||||
	    echo "mklib: Making FreeBSD shared library: " ${SHLIB}
 | 
			
		||||
	    rm -f ${SHLIB}
 | 
			
		||||
	    ld -Bshareable -o ${SHLIB} ${OBJECTS}
 | 
			
		||||
	    # XXX make lib${LIBNAME}.so.${MAJOR} symlink?
 | 
			
		||||
	    FINAL_LIBS=${SHLIB}
 | 
			
		||||
	fi
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'NetBSD')
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}_pic.a"
 | 
			
		||||
	    echo "mklib: Making NetBSD PIC static library: " ${LIBNAME}
 | 
			
		||||
	    rm -f ${LIBNAME}
 | 
			
		||||
	    ar cq ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	    ranlib ${LIBNAME}
 | 
			
		||||
	    FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	else
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.so.${MAJOR}.${MINOR}"
 | 
			
		||||
	    echo "mklib: Making NetBSD PIC shared library: " ${LIBNAME}
 | 
			
		||||
	    rm -f ${LIBNAME}
 | 
			
		||||
	    ld -x -Bshareable -Bforcearchive -o ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	    FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	fi
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'IRIX' | 'IRIX64')
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	    rm -f ${LIBNAME}
 | 
			
		||||
	    ar rc ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	    FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	else
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.so"  # prefix with "lib", suffix with ".so"
 | 
			
		||||
	    if [ $ARCHOPT = "64" ] ; then
 | 
			
		||||
		# 64-bit ABI
 | 
			
		||||
		OPTS="-64 -shared -all"
 | 
			
		||||
		echo "mklib: Making IRIX 64-bit shared library: " ${LIBNAME}
 | 
			
		||||
	    elif [ $ARCHOPT = "o32" ] ; then
 | 
			
		||||
		# old 32-bit ABI
 | 
			
		||||
		OPTS="-32 -shared -all"
 | 
			
		||||
		echo "mklib: Making IRIX o32-bit shared library: " ${LIBNAME}
 | 
			
		||||
	    else
 | 
			
		||||
		# new 32-bit ABI
 | 
			
		||||
		OPTS="-n32 -shared -all"
 | 
			
		||||
		echo "mklib: Making IRIX n32-bit shared library: " ${LIBNAME}
 | 
			
		||||
	    fi
 | 
			
		||||
	    if [ $CPLUSPLUS = 1 ] ; then
 | 
			
		||||
		LINK="CC"
 | 
			
		||||
	    else
 | 
			
		||||
		LINK="ld"
 | 
			
		||||
	    fi
 | 
			
		||||
	    ${LINK} ${OPTS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
 | 
			
		||||
	    FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	fi
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'linux-cygwin')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making linux-cygwin library: " ${LIBNAME}
 | 
			
		||||
	rm -f ${LIBNAME}
 | 
			
		||||
	gnuwin32ar ruv ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'HP-UX')
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	    echo "mklib: Making HP-UX static library: " ${LIBNAME}
 | 
			
		||||
	    rm -f ${LIBNAME}
 | 
			
		||||
	    ar -ruv ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	    FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	else
 | 
			
		||||
	    RUNLIB="lib${LIBNAME}.${MAJOR}"
 | 
			
		||||
	    DEVLIB="lib${LIBNAME}.sl"
 | 
			
		||||
	    echo "mklib: Making HP-UX shared library: " ${RUNLIB} ${DEVLIB}
 | 
			
		||||
	    ld -b -o ${RUNLIB} +b ${RUNLIB} ${OBJECTS} ${DEPS}
 | 
			
		||||
	    ln -s ${RUNLIB} ${DEVLIB}
 | 
			
		||||
	    FINAL_LIBS="${RUNLIB} ${DEVLIB}"
 | 
			
		||||
	fi
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'AIX' | 'AIX64')
 | 
			
		||||
	if [ $ARCH = "AIX64" ] ; then
 | 
			
		||||
	    X64="-X64"
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
            LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
            echo "mklib: Making AIX static library: " ${LIBNAME}
 | 
			
		||||
            ar -ruv ${X64} ${LIBNAME} ${OBJECTS}
 | 
			
		||||
            FINAL_LIBS=${LIBNAME}
 | 
			
		||||
        else
 | 
			
		||||
	    EXPFILE="lib${LIBNAME}.exp"
 | 
			
		||||
	    OFILE=shr.o  #Want to be consistent with the IBM libGL.a
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.a"  # shared objects are still stored in the .a libraries
 | 
			
		||||
	    if [ $ARCH = "AIX64" ] ; then
 | 
			
		||||
		OPTS="-bE:${EXPFILE} -bM:SRE -bnoentry -q64"
 | 
			
		||||
	    else
 | 
			
		||||
		OPTS="-bE:${EXPFILE} -bM:SRE -bnoentry"
 | 
			
		||||
	    fi
 | 
			
		||||
	    rm -f ${EXPFILE} ${OFILE}
 | 
			
		||||
	    NM="/bin/nm -eC ${X64}"
 | 
			
		||||
	    echo "#! /usr/lib/${LIBNAME}" > ${EXPFILE}
 | 
			
		||||
	    ${NM} ${OBJECTS} | awk '{
 | 
			
		||||
	    if ((($2 == "T") || ($2 == "D") || ($2 == "B")) \
 | 
			
		||||
	    && ( substr($1,1,1) != ".")) {
 | 
			
		||||
		    if (substr ($1, 1, 7) != "__sinit" &&
 | 
			
		||||
			    substr ($1, 1, 7) != "__sterm") {
 | 
			
		||||
			    if (substr ($1, 1, 5) == "__tf1")
 | 
			
		||||
				print (substr ($1, 7))
 | 
			
		||||
			    else if (substr ($1, 1, 5) == "__tf9")
 | 
			
		||||
				print (substr ($1, 15))
 | 
			
		||||
			    else
 | 
			
		||||
				print $1
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	    }' | sort -u >> ${EXPFILE}
 | 
			
		||||
	    cc ${OPTS} -o ${OFILE} ${OBJECTS} ${DEPS}
 | 
			
		||||
	    ar ${X64} -r ${LIBNAME} ${OFILE}
 | 
			
		||||
            FINAL_LIBS="${LIBNAME}"
 | 
			
		||||
        fi
 | 
			
		||||
        ;;
 | 
			
		||||
 | 
			
		||||
    'OpenSTEP')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making OpenSTEP static library: " ${LIBNAME}
 | 
			
		||||
	libtool -static -o ${LIBNAME} - ${OBJECTS}
 | 
			
		||||
	FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'OSF1')
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	    echo "mklib: Making OSF/1 static library: " ${LIBNAME}
 | 
			
		||||
	    rm -f ${LIBNAME}
 | 
			
		||||
	    ar -ruv ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	    FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	else
 | 
			
		||||
	    VERSION="${MAJOR}.${MINOR}"
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.so"
 | 
			
		||||
	    echo "mklib: Making OSF/1 shared library: " ${LIBNAME}
 | 
			
		||||
	    if [ $CPLUSPLUS = 1 ] ; then
 | 
			
		||||
		LINK=$CXX
 | 
			
		||||
	    else
 | 
			
		||||
		LINK=$CC
 | 
			
		||||
	    fi
 | 
			
		||||
	    rm -f ${LIBNAME}.${VERSION}
 | 
			
		||||
	    ${LINK} -o ${LIBNAME}.${VERSION} -shared -set_version ${VERSION} -soname ${LIBNAME}.${VERSION} -expect_unresolved \* -all ${OBJECTS} ${DEPS}
 | 
			
		||||
	    ln -sf ${LIBNAME}.${VERSION} ${LIBNAME}
 | 
			
		||||
	    FINAL_LIBS="${LIBNAME} ${LIBNAME}.${VERSION}"
 | 
			
		||||
	fi
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'Darwin')
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
            LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
            echo "mklib: Making Darwin static library: " ${LIBNAME}
 | 
			
		||||
            LINK="ar"
 | 
			
		||||
            OPTS="-ruv"
 | 
			
		||||
            ${LINK} ${OPTS} ${LIBNAME} ${OBJECTS}
 | 
			
		||||
            FINAL_LIBS=${LIBNAME}
 | 
			
		||||
        else
 | 
			
		||||
            LIBNAME="${LIBNAME}.dylib"
 | 
			
		||||
            echo "mklib: Making Darwin shared library: " ${LIBNAME}
 | 
			
		||||
            FLAGS="-dynamiclib -multiply_defined suppress"
 | 
			
		||||
	    if [ $CPLUSPLUS = 1 ] ; then
 | 
			
		||||
		LINK="g++"
 | 
			
		||||
	    else
 | 
			
		||||
		LINK="cc"
 | 
			
		||||
	    fi
 | 
			
		||||
            ${LINK} ${FLAGS} -o ${LIBNAME} ${OBJECTS} ${DEPS}
 | 
			
		||||
            FINAL_LIBS=${LIBNAME}
 | 
			
		||||
        fi
 | 
			
		||||
        ;;
 | 
			
		||||
 | 
			
		||||
    'LynxOS')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making LynxOS static library: " ${LIBNAME}
 | 
			
		||||
	rm -f ${LIBNAME}
 | 
			
		||||
	ar ru ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'BeOS')
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
            LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
            echo "mklib: Making BeOS static library: " ${LIBNAME}
 | 
			
		||||
            ar -cru "${LIBNAME}" ${OBJECTS}
 | 
			
		||||
        else
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.so"
 | 
			
		||||
	    echo "mklib: Making BeOS shared library: " ${LIBNAME}
 | 
			
		||||
	    gcc -nostart -Xlinker "-soname=${LIBNAME}" -L/Be/develop/lib/x86 -lbe ${DEPS} ${OBJECTS} -o "${LIBNAME}"
 | 
			
		||||
	    mimeset -f "${LIBNAME}"
 | 
			
		||||
	    setversion "${LIBNAME}" -app ${MAJOR} ${MINOR} ${PATCH} -short "Powered by Mesa3D!" -long "Powered by Mesa3D!"
 | 
			
		||||
	fi
 | 
			
		||||
	FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'QNX')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making QNX library: " ${LIBNAME}
 | 
			
		||||
	wlib ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'MorphOS')
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making MorphOS library: " ${LIBNAME}
 | 
			
		||||
	ppc-morphos-ar rc ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	FINAL_LIBS="${LIBNAME}"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'icc')
 | 
			
		||||
	# Intel C compiler
 | 
			
		||||
	LIBNAME="lib${LIBNAME}"     # prefix with "lib"
 | 
			
		||||
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
            echo "mklib: Making Intel ICC static library: " ${LIBNAME}.a
 | 
			
		||||
            LINK="ar"
 | 
			
		||||
            OPTS="-ruv"
 | 
			
		||||
            # make lib
 | 
			
		||||
            ${LINK} ${OPTS} ${LIBNAME}.a ${OBJECTS}
 | 
			
		||||
            # finish up
 | 
			
		||||
            FINAL_LIBS="${LIBNAME}.a"
 | 
			
		||||
        else
 | 
			
		||||
            OPTS="-shared"
 | 
			
		||||
            VERSION="${MAJOR}.${MINOR}.${PATCH}"
 | 
			
		||||
            echo "mklib: Making Intel ICC shared library: " ${LIBNAME}.so.${VERSION}
 | 
			
		||||
 | 
			
		||||
            if [ $CPLUSPLUS = 1 ] ; then
 | 
			
		||||
                LINK="icc"
 | 
			
		||||
            else
 | 
			
		||||
                LINK="icc"
 | 
			
		||||
            fi
 | 
			
		||||
            # rm any old libs
 | 
			
		||||
            rm -f ${LIBNAME}.so.${VERSION}
 | 
			
		||||
            rm -f ${LIBNAME}.so.${MAJOR}
 | 
			
		||||
            rm -f ${LIBNAME}.so
 | 
			
		||||
            # make lib
 | 
			
		||||
            ${LINK} ${OPTS} -o ${LIBNAME}.so.${VERSION} ${OBJECTS} ${DEPS}
 | 
			
		||||
            # make usual symlinks
 | 
			
		||||
            ln -s ${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR}
 | 
			
		||||
            ln -s ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so
 | 
			
		||||
            # finish up
 | 
			
		||||
            FINAL_LIBS="${LIBNAME}.so.${VERSION} ${LIBNAME}.so.${MAJOR} ${LIBNAME}.so"
 | 
			
		||||
        fi
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'aix-gcc')
 | 
			
		||||
	# AIX with gcc
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	    echo "mklib: Making AIX GCC static library: " ${LIBNAME}
 | 
			
		||||
	    rm -f ${LIBNAME}
 | 
			
		||||
	    ar ru ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	    FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	else
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.so"  # prefix with "lib", suffix with ".so"
 | 
			
		||||
	    echo "mklib: Making AIX GCC shared library: " ${LIBNAME}
 | 
			
		||||
	    # remove old lib
 | 
			
		||||
	    rm -f ${LIBNAME}
 | 
			
		||||
	    # make the lib
 | 
			
		||||
	    gcc -shared -Wl,-G ${OBJECTS} ${DEPS} -o ${LIBNAME}
 | 
			
		||||
	    # NOTE: the application linking with this library must specify
 | 
			
		||||
	    # the -Wl,-brtl flags to gcc
 | 
			
		||||
	    FINAL_LIBS=${LIBNAME}
 | 
			
		||||
	fi
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'ultrix')
 | 
			
		||||
	# XXX untested
 | 
			
		||||
        if [ $STATIC = 0 ] ; then
 | 
			
		||||
	    echo "mklib: Warning shared libs not supported on Ultrix"
 | 
			
		||||
	fi
 | 
			
		||||
	LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	echo "mklib: Making static library for Ultrix: " ${LIBNAME}
 | 
			
		||||
	rm -f ${LIBNAME}
 | 
			
		||||
	ar ru ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	FINAL_LIBS="${LIBNAME}"
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
     CYGWIN*)
 | 
			
		||||
	# GCC-based environment
 | 
			
		||||
	CYGNAME="cyg${LIBNAME}"     # prefix with "cyg"
 | 
			
		||||
	LIBNAME="lib${LIBNAME}"     # prefix with "lib"
 | 
			
		||||
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
            echo "mklib: Making" $ARCH "static library: " ${LIBNAME}.a
 | 
			
		||||
            LINK="ar"
 | 
			
		||||
            OPTS="-ru"
 | 
			
		||||
            # make lib
 | 
			
		||||
            ${LINK} ${OPTS} ${LIBNAME}.a ${OBJECTS}
 | 
			
		||||
	    ranlib ${LIBNAME}.a
 | 
			
		||||
            # finish up
 | 
			
		||||
            FINAL_LIBS=${LIBNAME}.a
 | 
			
		||||
        else
 | 
			
		||||
	    OPTS="-shared -Wl,-export-all -Wl,--out-implib=${LIBNAME}-${MAJOR}.dll.a"
 | 
			
		||||
            echo "mklib: Making" $ARCH "shared library: " ${LIBNAME}-${MAJOR}.dll
 | 
			
		||||
 | 
			
		||||
            if [ $CPLUSPLUS = 1 ] ; then
 | 
			
		||||
                LINK="g++"
 | 
			
		||||
            else
 | 
			
		||||
                LINK="gcc"
 | 
			
		||||
            fi
 | 
			
		||||
 | 
			
		||||
            # rm any old libs
 | 
			
		||||
            rm -f ${LIBNAME}-${MAJOR}.dll
 | 
			
		||||
            rm -f ${LIBNAME}.dll.a
 | 
			
		||||
            rm -f ${LIBNAME}.a
 | 
			
		||||
 | 
			
		||||
            # make lib
 | 
			
		||||
            ${LINK} ${OPTS} -o ${CYGNAME}-${MAJOR}.dll ${OBJECTS} ${DEPS}
 | 
			
		||||
            # make usual symlinks
 | 
			
		||||
            ln -s ${LIBNAME}-${MAJOR}.dll.a ${LIBNAME}.dll.a
 | 
			
		||||
            # finish up
 | 
			
		||||
            FINAL_LIBS="${LIBNAME}-${MAJOR}.dll.a ${LIBNAME}.dll.a"
 | 
			
		||||
	    # special case for installing in bin
 | 
			
		||||
            FINAL_BINS="${CYGNAME}-${MAJOR}.dll"
 | 
			
		||||
        fi
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    'example')
 | 
			
		||||
	# If you're adding support for a new architecture, you can
 | 
			
		||||
	# start with this:
 | 
			
		||||
        if [ $STATIC = 1 ] ; then
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.a"
 | 
			
		||||
	    echo "mklib: Making static library for example arch: " ${LIBNAME}
 | 
			
		||||
	    rm -f ${LIBNAME}
 | 
			
		||||
	    ar rv ${LIBNAME} ${OBJECTS}
 | 
			
		||||
	    FINAL_LIBS="${LIBNAME}"
 | 
			
		||||
	else
 | 
			
		||||
	    LIBNAME="lib${LIBNAME}.so"  # prefix with "lib"
 | 
			
		||||
	    echo "mklib: Making shared library for example arch: " ${LIBNAME}
 | 
			
		||||
	    ld -o ${LIBNAME} ${OBJECTS} ${DEPS}
 | 
			
		||||
	    FINAL_LIBS="${LIBNAME}"
 | 
			
		||||
	fi
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    *)
 | 
			
		||||
	echo "mklib: ERROR: Don't know how to make a static/shared library for" ${ARCH}
 | 
			
		||||
	echo "mklib: Please add necessary commands to mklib script."
 | 
			
		||||
	;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Put library files into installation directory if specified.
 | 
			
		||||
#
 | 
			
		||||
if [ ${INSTALLDIR} != "." ] ; then
 | 
			
		||||
    echo "mklib: Installing" ${FINAL_LIBS} "in" ${INSTALLDIR}
 | 
			
		||||
    mv ${FINAL_LIBS} ${INSTALLDIR}/
 | 
			
		||||
fi
 | 
			
		||||
							
								
								
									
										153
									
								
								bin/mklib.aix
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										153
									
								
								bin/mklib.aix
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,153 @@
 | 
			
		||||
#!/bin/ksh
 | 
			
		||||
 | 
			
		||||
# Make an AIX shared library (tricky!!!)
 | 
			
		||||
# Based on a script from Athanasios G. Gaitatzes (gaitat@vnet.ibm.com)
 | 
			
		||||
# Improved by Greg Thompson <gregt@visix.com> -gt
 | 
			
		||||
 | 
			
		||||
#--identification------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
# $Id: mklib.aix,v 1.2 1999/09/15 15:10:20 brianp Exp $
 | 
			
		||||
 | 
			
		||||
# $Log: mklib.aix,v $
 | 
			
		||||
# Revision 1.2  1999/09/15 15:10:20  brianp
 | 
			
		||||
# added third, tiny version number to arguments
 | 
			
		||||
#
 | 
			
		||||
# Revision 1.1  1999/08/19 13:52:56  brianp
 | 
			
		||||
# initial check-in (post-crash)
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#--common--------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
LIBRARY=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
MAJOR=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
MINOR=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
TINY=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
OBJECTS=$*
 | 
			
		||||
 | 
			
		||||
#--platform------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
# BASENAME = LIBRARY without .a suffix
 | 
			
		||||
BASENAME=`echo ${LIBRARY} | sed "s/\.a//g"`
 | 
			
		||||
 | 
			
		||||
# Name of exports file
 | 
			
		||||
EXPFILE=${BASENAME}.exp
 | 
			
		||||
 | 
			
		||||
# Name of temporary shared lib file
 | 
			
		||||
OFILE=shr.o
 | 
			
		||||
####OFILE=${BASENAME}.o
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Remove any old files from previous make
 | 
			
		||||
rm -f ${LIBRARY} ${EXPFILE} ${OFILE}
 | 
			
		||||
 | 
			
		||||
# Pick a way to use nm -gt
 | 
			
		||||
NM=${NM-/bin/nm -eC}
 | 
			
		||||
 | 
			
		||||
# Determine which version of AIX this is
 | 
			
		||||
AIXVERSION=`uname -v`
 | 
			
		||||
 | 
			
		||||
# Pick a way to tell the linker there's no entrypoint -gt
 | 
			
		||||
case ${AIXVERSION}
 | 
			
		||||
{
 | 
			
		||||
	3*)
 | 
			
		||||
		ENTRY='-e _nostart'
 | 
			
		||||
		;;
 | 
			
		||||
	4*)
 | 
			
		||||
		ENTRY=-bnoentry
 | 
			
		||||
		;;
 | 
			
		||||
	*)
 | 
			
		||||
		echo "Error in mklib.aix!"
 | 
			
		||||
		exit 1
 | 
			
		||||
		;;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Other libraries which we may be dependent on.  Since we make the libraries
 | 
			
		||||
# in the order libGL.a, libaGLU.a, libglut.a just depends on its predecessor.
 | 
			
		||||
# modified to make otherlibs in the form of -lfoo -gt
 | 
			
		||||
OTHERLIBS=`ls ../lib/*.a | sed "s/..\/lib\/lib/-l/g" | sed "s/\.a//g"`
 | 
			
		||||
 | 
			
		||||
##echo OTHERLIBS are ${OTHERLIBS}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Make exports (.exp) file header
 | 
			
		||||
echo "#! ${LIBRARY}" > ${EXPFILE}
 | 
			
		||||
 | 
			
		||||
# Append list of exported symbols to exports file -gt
 | 
			
		||||
case ${AIXVERSION}
 | 
			
		||||
{
 | 
			
		||||
    3*)
 | 
			
		||||
	${NM} ${OBJECTS} | awk -F'|' '{
 | 
			
		||||
	    if ($3 != "extern" || substr($7,1,1) == " ") continue
 | 
			
		||||
	    sub ("  *", "", $1); sub ("  *", "", $7)
 | 
			
		||||
	    if ( (($7 == ".text") || ($7 == ".data") || ($7 == ".bss"))  \
 | 
			
		||||
		    && ( substr($1,1,1) != ".")) {
 | 
			
		||||
		if (substr ($1, 1, 7) != "__sinit" &&
 | 
			
		||||
			substr ($1, 1, 7) != "__sterm") {
 | 
			
		||||
		    if (substr ($1, 1, 5) == "__tf1")
 | 
			
		||||
			print (substr ($1, 7))
 | 
			
		||||
		    else if (substr ($1, 1, 5) == "__tf9")
 | 
			
		||||
			print (substr ($1, 15))
 | 
			
		||||
		    else
 | 
			
		||||
			print $1
 | 
			
		||||
		}
 | 
			
		||||
	    }
 | 
			
		||||
	}' | sort -u >> ${EXPFILE}
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    4*)
 | 
			
		||||
	${NM} ${OBJECTS} | awk '{
 | 
			
		||||
	    if ((($2 == "T") || ($2 == "D") || ($2 == "B")) \
 | 
			
		||||
		    && ( substr($1,1,1) != ".")) {
 | 
			
		||||
		if (substr ($1, 1, 7) != "__sinit" &&
 | 
			
		||||
			substr ($1, 1, 7) != "__sterm") {
 | 
			
		||||
		    if (substr ($1, 1, 5) == "__tf1")
 | 
			
		||||
			print (substr ($1, 7))
 | 
			
		||||
		    else if (substr ($1, 1, 5) == "__tf9")
 | 
			
		||||
			print (substr ($1, 15))
 | 
			
		||||
		    else
 | 
			
		||||
			print $1
 | 
			
		||||
		}
 | 
			
		||||
	    }
 | 
			
		||||
	}' | sort -u >> ${EXPFILE}
 | 
			
		||||
	;;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# This next line is a hack to allow full compatibility with IBM's OpenGL
 | 
			
		||||
# libraries.  IBM mistakenly exports glLoadIdentity from the libGLU.a
 | 
			
		||||
# library.  We have to do the same thing.  Problem reported by Yemi Adesanya
 | 
			
		||||
# (adesanya@afsmail.cern.ch) and Patrick Brown (pbrown@austin.ibm.com)
 | 
			
		||||
if [ "${BASENAME}" = libGLU ] ; then
 | 
			
		||||
    echo "glLoadIdentity" >> ${EXPFILE}
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Make the shared lib file
 | 
			
		||||
cc -o ${OFILE} ${OBJECTS} -L../lib ${OTHERLIBS} -lX11 -lXext -lXmu -lXi -lm -lc -bE:${EXPFILE} -bM:SRE ${ENTRY}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Make the .a file
 | 
			
		||||
ar ruv ${LIBRARY} ${OFILE}
 | 
			
		||||
 | 
			
		||||
# Put exports file in Mesa lib directory
 | 
			
		||||
mv ${EXPFILE} ../lib
 | 
			
		||||
 | 
			
		||||
# Remove OFILE
 | 
			
		||||
rm -f ${OFILE}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#NOTES
 | 
			
		||||
# AIX 4.x /usr/bin/nm -B patch from ssclift@mach.me.queensu.ca (Simon Clift)
 | 
			
		||||
# Robustified symbol extraction for AIX 3 and 4
 | 
			
		||||
#   Greg Thompson <gregt@visix.com>
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										38
									
								
								bin/mklib.ar-ruv
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										38
									
								
								bin/mklib.ar-ruv
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,38 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
# Make a standard Unix .a library file with 'ar ruv'
 | 
			
		||||
 | 
			
		||||
#--identification------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
# $Id: mklib.ar-ruv,v 1.2 1999/09/15 15:10:20 brianp Exp $
 | 
			
		||||
 | 
			
		||||
# $Log: mklib.ar-ruv,v $
 | 
			
		||||
# Revision 1.2  1999/09/15 15:10:20  brianp
 | 
			
		||||
# added third, tiny version number to arguments
 | 
			
		||||
#
 | 
			
		||||
# Revision 1.1  1999/08/19 13:52:57  brianp
 | 
			
		||||
# initial check-in (post-crash)
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#--common--------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
LIBRARY=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
MAJOR=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
MINOR=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
TINY=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
OBJECTS=$*
 | 
			
		||||
 | 
			
		||||
#--platform-------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
#ar ruv $LIBRARY $OBJECTS
 | 
			
		||||
ar ru $LIBRARY $OBJECTS
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										52
									
								
								bin/mklib.solaris
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								bin/mklib.solaris
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,52 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
# Make a Solaris shared library
 | 
			
		||||
# contributed by Arno Hahma (arno@nitro.pp.utu.fi)
 | 
			
		||||
 | 
			
		||||
#--identification------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
# $Id: mklib.solaris,v 1.2 1999/09/15 15:10:20 brianp Exp $
 | 
			
		||||
 | 
			
		||||
# $Log: mklib.solaris,v $
 | 
			
		||||
# Revision 1.2  1999/09/15 15:10:20  brianp
 | 
			
		||||
# added third, tiny version number to arguments
 | 
			
		||||
#
 | 
			
		||||
# Revision 1.1  1999/08/19 13:53:06  brianp
 | 
			
		||||
# initial check-in (post-crash)
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#--common--------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
LIBRARY=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
MAJOR=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
MINOR=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
TINY=$1
 | 
			
		||||
shift 1
 | 
			
		||||
 | 
			
		||||
OBJECTS=$*
 | 
			
		||||
 | 
			
		||||
#--platform-------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
set -x
 | 
			
		||||
 | 
			
		||||
LIBRARY=`basename $LIBRARY .a`
 | 
			
		||||
 | 
			
		||||
VERSION=$MAJOR.$MINOR
 | 
			
		||||
 | 
			
		||||
echo "Building shared object $LIBRARY.so.$VERSION and the archive library $LIBRARY.a"
 | 
			
		||||
rm -f ${LIBRARY}.a ${LIBRARY}.so.${VERSION}
 | 
			
		||||
ar ruv ${LIBRARY}.a ${OBJECTS}
 | 
			
		||||
 | 
			
		||||
ld -G -o ${LIBRARY}.so.${VERSION} ${OBJECTS}
 | 
			
		||||
 | 
			
		||||
cp ${LIBRARY}.a ${LIBRARY}.so.${VERSION} ../lib
 | 
			
		||||
cd ../lib
 | 
			
		||||
ln -s ${LIBRARY}.so.${VERSION} ${LIBRARY}.so
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										28
									
								
								configs/aix
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								configs/aix
									
									
									
									
									
								
							@@ -1,28 +0,0 @@
 | 
			
		||||
# Configuration for AIX, dynamic libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = aix
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = xlC
 | 
			
		||||
 | 
			
		||||
CFLAGS = -O -DAIXV3
 | 
			
		||||
CXXFLAGS = -O -DAIXV3
 | 
			
		||||
MKLIB_OPTIONS =
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -lX11 -lXext -lm
 | 
			
		||||
GLU_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lm -lC
 | 
			
		||||
GLUT_LIB_DEPS = -L$(TOP)/lib -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu -lX11 -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lXt -lX11
 | 
			
		||||
OSMESA_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB)
 | 
			
		||||
APP_LIB_DEPS = -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lC
 | 
			
		||||
 | 
			
		||||
@@ -1,28 +0,0 @@
 | 
			
		||||
# Configuration for AIX 64-bit, dynamic libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = aix-64
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = xlc
 | 
			
		||||
CXX = xlC
 | 
			
		||||
 | 
			
		||||
CFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3
 | 
			
		||||
CXXFLAGS = -q64 -qmaxmem=16384 -O -DAIXV3
 | 
			
		||||
MKLIB_OPTIONS = -arch AIX64
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -lX11 -lXext -lm
 | 
			
		||||
GLU_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lm -lC
 | 
			
		||||
GLUT_LIB_DEPS = -L$(TOP)/lib -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu -lX11 -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB) -lXt -lX11
 | 
			
		||||
OSMESA_LIB_DEPS = -L$(TOP)/lib -l$(GL_LIB)
 | 
			
		||||
APP_LIB_DEPS = -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm -lC
 | 
			
		||||
 | 
			
		||||
@@ -1,19 +0,0 @@
 | 
			
		||||
# Configuration for AIX with gcc
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = aix-gcc
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS = -O2 -DAIXV3
 | 
			
		||||
CXXFLAGS = -O2 -DAIXV3
 | 
			
		||||
 | 
			
		||||
MKLIB_OPTIONS = -arch aix-gcc
 | 
			
		||||
GL_LIB_DEPS = -lX11 -lXext -lm
 | 
			
		||||
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR -l$(GLU_LIB) -l$(GL_LIB) -lXi -lXmu
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -Wl,-brtl -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lX11 -lXext -lXmu -lXi
 | 
			
		||||
 | 
			
		||||
@@ -1,23 +0,0 @@
 | 
			
		||||
# Configuration for AIX, static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = aix-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = xlC
 | 
			
		||||
 | 
			
		||||
CFLAGS = -O -DAIXV3
 | 
			
		||||
CXXFLAGS = -O -DAIXV3
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										99
									
								
								configs/beos
									
									
									
									
									
								
							
							
						
						
									
										99
									
								
								configs/beos
									
									
									
									
									
								
							@@ -1,99 +0,0 @@
 | 
			
		||||
# Configuration for BeOS
 | 
			
		||||
# Written by Philippe Houdoin
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = beos
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
DEFINES = 	\
 | 
			
		||||
	-DBEOS_THREADS 
 | 
			
		||||
 | 
			
		||||
MACHINE=$(shell uname -m)
 | 
			
		||||
ifeq ($(MACHINE), BePC)
 | 
			
		||||
	CPU = x86
 | 
			
		||||
else
 | 
			
		||||
	CPU = ppc
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
ifeq ($(CPU), x86)
 | 
			
		||||
	# BeOS x86 settings
 | 
			
		||||
 | 
			
		||||
	DEFINES += \
 | 
			
		||||
		-DGNU_ASSEMBLER \
 | 
			
		||||
		-DUSE_X86_ASM \
 | 
			
		||||
		-DUSE_MMX_ASM \
 | 
			
		||||
		-DUSE_3DNOW_ASM \
 | 
			
		||||
		-DUSE_SSE_ASM
 | 
			
		||||
	
 | 
			
		||||
	ASM_SOURCES = $(X86_SOURCES) $(X86_API)
 | 
			
		||||
 | 
			
		||||
	CC = gcc
 | 
			
		||||
	CXX = g++
 | 
			
		||||
	LD = gcc
 | 
			
		||||
	
 | 
			
		||||
	CFLAGS = \
 | 
			
		||||
		-Wall -Wno-multichar -Wno-ctor-dtor-privacy \
 | 
			
		||||
		$(DEFINES)
 | 
			
		||||
 | 
			
		||||
	CXXFLAGS = $(CFLAGS)
 | 
			
		||||
 | 
			
		||||
	LDFLAGS += -Xlinker
 | 
			
		||||
 | 
			
		||||
	ifdef DEBUG
 | 
			
		||||
		CFLAGS   += -g -O0
 | 
			
		||||
		LDFLAGS += -g
 | 
			
		||||
		DEFINES += -DDEBUG
 | 
			
		||||
	else
 | 
			
		||||
		CFLAGS   += -O3
 | 
			
		||||
	endif
 | 
			
		||||
 | 
			
		||||
	GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
else
 | 
			
		||||
	# BeOS PPC settings
 | 
			
		||||
 | 
			
		||||
	CC = mwcc
 | 
			
		||||
	CXX = $(CC)
 | 
			
		||||
	LD = mwldppc
 | 
			
		||||
 | 
			
		||||
	CFLAGS = \
 | 
			
		||||
		-w on -requireprotos \
 | 
			
		||||
		$(DEFINES)
 | 
			
		||||
 | 
			
		||||
	CXXFLAGS = $(CFLAGS)
 | 
			
		||||
 | 
			
		||||
	LDFLAGS += \
 | 
			
		||||
		-export pragma \
 | 
			
		||||
		-init _init_routine_ \
 | 
			
		||||
		-term _term_routine_ \
 | 
			
		||||
		-lroot \
 | 
			
		||||
		/boot/develop/lib/ppc/glue-noinit.a \
 | 
			
		||||
		/boot/develop/lib/ppc/init_term_dyn.o \
 | 
			
		||||
		/boot/develop/lib/ppc/start_dyn.o 
 | 
			
		||||
 | 
			
		||||
	ifdef DEBUG
 | 
			
		||||
		CFLAGS   += -g -O0
 | 
			
		||||
		CXXFLAGS += -g -O0
 | 
			
		||||
		LDFLAGS += -g
 | 
			
		||||
	else
 | 
			
		||||
		CFLAGS   += -O7
 | 
			
		||||
		CXXFLAGS += -O7
 | 
			
		||||
	endif
 | 
			
		||||
 | 
			
		||||
	GLUT_CFLAGS = -fexceptions
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
SRC_DIRS = mesa glu glut/beos
 | 
			
		||||
GLU_DIRS = sgi
 | 
			
		||||
DRIVER_DIRS = beos
 | 
			
		||||
PROGRAM_DIRS = beos samples redbook demos tests
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
GL_LIB_DEPS = 
 | 
			
		||||
OSMESA_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB)
 | 
			
		||||
GLU_LIB_DEPS =  
 | 
			
		||||
GLUT_LIB_DEPS = -lgame -L$(LIB_DIR) -l$(GL_LIB)
 | 
			
		||||
APP_LIB_DEPS = -lbe -L$(LIB_DIR) -l$(GL_LIB) -l$(GLUT_LIB)
 | 
			
		||||
 | 
			
		||||
@@ -1,25 +0,0 @@
 | 
			
		||||
# Configuration for Darwin / MacOS X, making dynamic libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = darwin
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = cc
 | 
			
		||||
CFLAGS = -I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
 | 
			
		||||
CXXFLAGS = -I/usr/X11R6/include -O3 -fPIC -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.dylib
 | 
			
		||||
GLU_LIB_NAME = libGLU.dylib
 | 
			
		||||
GLUT_LIB_NAME = libglut.dylib
 | 
			
		||||
GLW_LIB_NAME = libGLw.dylib
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.dylib
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
OSMESA_LIB_DEPS = $(TOP)/lib/GL.dylib
 | 
			
		||||
GLU_LIB_DEPS = $(TOP)/lib/GL.dylib
 | 
			
		||||
GLUT_LIB_DEPS = 
 | 
			
		||||
GLW_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXt $(TOP)/lib/GL.dylib
 | 
			
		||||
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
@@ -1,24 +0,0 @@
 | 
			
		||||
# Configuration for Darwin / MacOS X, making static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/darwin
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = darwin-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CFLAGS = -I/usr/X11R6/include -O3 -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
 | 
			
		||||
CXXFLAGS = -I/usr/X11R6/include -O3 -fno-common -ffast-math -funroll-loops -fexpensive-optimizations -no-cpp-precomp -dynamic -Ddarwin
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
OSMESA_LIB_DEPS = 
 | 
			
		||||
GLU_LIB_DEPS = 
 | 
			
		||||
GLUT_LIB_DEPS = 
 | 
			
		||||
GLW_LIB_DEPS = 
 | 
			
		||||
APP_LIB_DEPS = -L$(TOP)/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
@@ -1,68 +0,0 @@
 | 
			
		||||
# Default/template configuration
 | 
			
		||||
 | 
			
		||||
# This is included by other config files which may override some
 | 
			
		||||
# of these variables.
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = default
 | 
			
		||||
 | 
			
		||||
# Version info
 | 
			
		||||
MESA_MAJOR=6
 | 
			
		||||
MESA_MINOR=3
 | 
			
		||||
MESA_TINY=0
 | 
			
		||||
 | 
			
		||||
# external projects
 | 
			
		||||
DRM_SOURCE_PATH=$(TOP)/../drm
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = CC
 | 
			
		||||
CFLAGS = -O
 | 
			
		||||
CXXFLAGS = -O
 | 
			
		||||
GLU_CFLAGS = 
 | 
			
		||||
 | 
			
		||||
# Misc tools and flags
 | 
			
		||||
MKLIB_OPTIONS = 
 | 
			
		||||
MKDEP = makedepend
 | 
			
		||||
MKDEP_OPTIONS = -fdepend
 | 
			
		||||
MAKE = make
 | 
			
		||||
 | 
			
		||||
# Library names (base name)
 | 
			
		||||
GL_LIB = GL
 | 
			
		||||
GLU_LIB = GLU
 | 
			
		||||
GLUT_LIB = glut
 | 
			
		||||
GLW_LIB = GLw
 | 
			
		||||
OSMESA_LIB = OSMesa
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = lib$(GL_LIB).so
 | 
			
		||||
GLU_LIB_NAME = lib$(GLU_LIB).so
 | 
			
		||||
GLUT_LIB_NAME = lib$(GLUT_LIB).so
 | 
			
		||||
GLW_LIB_NAME = lib$(GLW_LIB).so
 | 
			
		||||
OSMESA_LIB_NAME = lib$(OSMesa).so
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Optional assembly language optimization files for libGL
 | 
			
		||||
ASM_SOURCES = 
 | 
			
		||||
 | 
			
		||||
# GLw widget sources (Append "GLwMDrawA.c" here and add -lXm to GLW_LIB_DEPS in
 | 
			
		||||
# order to build the Motif widget too)
 | 
			
		||||
GLW_SOURCES = GLwDrawA.c
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
LIB_DIR = $(TOP)/lib
 | 
			
		||||
INSTALL_PREFIX = /usr/local
 | 
			
		||||
SRC_DIRS = mesa glu glut/glx glw
 | 
			
		||||
GLU_DIRS = sgi
 | 
			
		||||
DRIVER_DIRS = x11 osmesa
 | 
			
		||||
PROGRAM_DIRS = demos redbook samples xdemos
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
GL_LIB_DEPS = -lX11 -lXext -lm -lpthread
 | 
			
		||||
OSMESA_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB)
 | 
			
		||||
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
@@ -1,17 +0,0 @@
 | 
			
		||||
# Configuration for FreeBSD
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = FreeBSD
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
MAKE = gmake
 | 
			
		||||
 | 
			
		||||
CFLAGS = -O2 -fPIC -pedantic -I/usr/X11R6/include -DUSE_XSHM -DHZ=100
 | 
			
		||||
CXXFLAGS = -O2 -fPIC -pedantic
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
 | 
			
		||||
 | 
			
		||||
@@ -1,41 +0,0 @@
 | 
			
		||||
# -*-makefile-*-
 | 
			
		||||
# Configuration for freebsd-dri: FreeBSD DRI hardware drivers
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/freebsd
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = freebsd-dri
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
WARN_FLAGS = -Wall
 | 
			
		||||
OPT_FLAGS = -O
 | 
			
		||||
 | 
			
		||||
X11_INCLUDES = -I/usr/X11R6/include -I/usr/X11R6/include/X11/extensions
 | 
			
		||||
DEFINES = -DDRI_NEW_INTERFACE_ONLY 
 | 
			
		||||
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99  -Wundef -fPIC -ffast-math -I/usr/local/include $(X11_INCLUDES)
 | 
			
		||||
CXXFLAGS = $(DEFINES) -Wall -g -ansi -pedantic -fPIC
 | 
			
		||||
 | 
			
		||||
ASM_SOURCES = 
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
DRI_LIB_DEPS = -L/usr/local/lib -lm -lpthread -lexpat
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -pthread
 | 
			
		||||
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lGLU -lGL -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lGL -lXt -lXm -lX11
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
SRC_DIRS = mesa glu glut/glx glw glx/x11
 | 
			
		||||
DRIVER_DIRS = dri
 | 
			
		||||
PROGRAM_DIRS = 
 | 
			
		||||
WINDOW_SYSTEM=dri
 | 
			
		||||
 | 
			
		||||
DRM_SOURCE_PATH=$(TOP)/../drm
 | 
			
		||||
 | 
			
		||||
# ffb and gamma are missing because they have not been converted to use the new
 | 
			
		||||
# interface.
 | 
			
		||||
DRI_DIRS = dri_client i810 i830 i915 mach64 mga r128 r200 radeon tdfx \
 | 
			
		||||
	   unichrome savage sis
 | 
			
		||||
 | 
			
		||||
@@ -1,12 +0,0 @@
 | 
			
		||||
# -*-makefile-*-
 | 
			
		||||
# Configuration for freebsd-dri: FreeBSD DRI hardware drivers
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/freebsd-dri
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = freebsd-dri-x86
 | 
			
		||||
 | 
			
		||||
# Unnecessary on x86, generally.
 | 
			
		||||
PIC_FLAGS = 
 | 
			
		||||
 | 
			
		||||
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
 | 
			
		||||
ASM_SOURCES = $(X86_SOURCES)
 | 
			
		||||
@@ -1,14 +0,0 @@
 | 
			
		||||
# Configuration for HPUX v10, shared libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = hpux10
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = aCC
 | 
			
		||||
 | 
			
		||||
CFLAGS = +O3 +DAportable +z -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = +O3 +DAportable +Z -Aa -D_HPUX_SOURCE
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
 | 
			
		||||
@@ -1,16 +0,0 @@
 | 
			
		||||
# Configuration for HPUX v10, with gcc
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = hpux10-gcc
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS = -ansi -O3 -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include  -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -ansi -O3 -D_HPUX_SOURCE
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
 | 
			
		||||
 | 
			
		||||
@@ -1,30 +0,0 @@
 | 
			
		||||
# Configuration for HPUX v10, static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = hpux10-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = aCC
 | 
			
		||||
 | 
			
		||||
CFLAGS = +O3 +DAportable +z -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = +O3 +DAportable +Z -Aa -D_HPUX_SOURCE
 | 
			
		||||
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies (static libs don't have dependencies)
 | 
			
		||||
GL_LIB_DEPS = 
 | 
			
		||||
OSMESA_LIB_DEPS = 
 | 
			
		||||
GLU_LIB_DEPS = 
 | 
			
		||||
GLUT_LIB_DEPS = 
 | 
			
		||||
GLW_LIB_DEPS = 
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm -lstdc++
 | 
			
		||||
@@ -1,26 +0,0 @@
 | 
			
		||||
# Configuration for HPUX v11
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = hpux11-32
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = aCC
 | 
			
		||||
 | 
			
		||||
CFLAGS = +z -Ae +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = +z -Aa +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
 | 
			
		||||
 | 
			
		||||
MKLIB_OPTIONS =
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
 | 
			
		||||
@@ -1,26 +0,0 @@
 | 
			
		||||
# Configuration for HPUX v11, static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = hpux11-32-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = aCC
 | 
			
		||||
 | 
			
		||||
CFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
 | 
			
		||||
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
 | 
			
		||||
@@ -1,26 +0,0 @@
 | 
			
		||||
# Configuration for HPUX v11, static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = hpux11-32-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = aCC
 | 
			
		||||
 | 
			
		||||
CFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = +O3 +DA2.0 -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
 | 
			
		||||
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
 | 
			
		||||
@@ -1,27 +0,0 @@
 | 
			
		||||
# Configuration for HPUX v11, 64-bit
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = hpux11-64
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = aCC
 | 
			
		||||
 | 
			
		||||
CFLAGS = +z -Ae +DD64 +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = +z -Aa +DD64 +O2 +Onolimit +Oaggressive -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
 | 
			
		||||
 | 
			
		||||
MKLIB_OPTIONS =
 | 
			
		||||
 | 
			
		||||
LIBDIR = $(TOP)/lib64
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
 | 
			
		||||
@@ -1,27 +0,0 @@
 | 
			
		||||
# Configuration for HPUX v11, 64-bit, static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = hpux11-64-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = aCC
 | 
			
		||||
 | 
			
		||||
CFLAGS = +O3 +DA2.0W -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM -DPTHREADS
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = +O3 +DA2.0W -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include
 | 
			
		||||
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
LIBDIR = $(TOP)/lib64
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
APP_LIB_DEPS = -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
 | 
			
		||||
@@ -1,16 +0,0 @@
 | 
			
		||||
# Configuration for HPUX v9, shared libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = hpux9
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
# XXX fix this
 | 
			
		||||
CXX = c++
 | 
			
		||||
 | 
			
		||||
CFLAGS = +z +O3 +Olibcalls +ESlit -Aa +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5 -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = +z +O3 +Olibcalls +ESlit -Aa +Onolimit -D_HPUX_SOURCE -I/usr/include/X11R5
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/lib/X11R5 -s -Wl,+s,-B,nonfatal,-B,immediate -lXext -lXmu -lXi -lX11 -lm
 | 
			
		||||
 | 
			
		||||
@@ -1,14 +0,0 @@
 | 
			
		||||
# Configuration for HPUX v10, shared libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = hpux9-gcc
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = aCC
 | 
			
		||||
 | 
			
		||||
CFLAGS = +O3 +DAportable +z -Aa -D_HPUX_SOURCE -I/usr/include/X11R6 -I/usr/contrib/X11R6/include -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = +O3 +DAportable +Z -Aa -D_HPUX_SOURCE
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
 | 
			
		||||
@@ -1,18 +0,0 @@
 | 
			
		||||
# Configuration for IRIX 6.x, make n64 DSOs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = irix6-64
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = CC
 | 
			
		||||
CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -64 -O3 -ansi -woff 1174
 | 
			
		||||
MKLIB_OPTIONS = -archopt 64
 | 
			
		||||
 | 
			
		||||
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
 | 
			
		||||
 | 
			
		||||
LIB_DIR = $(TOP)/lib64
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -64 -rpath $(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lm
 | 
			
		||||
@@ -1,25 +0,0 @@
 | 
			
		||||
# Configuration for IRIX 6.x, make n64 static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = irix6-64-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = CC
 | 
			
		||||
CFLAGS = -64 -O3 -ansi -woff 1068,1069,1174,1185,1209,1474,1552 -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -64 -O3 -ansi -woff 1174
 | 
			
		||||
MKLIB_OPTIONS = -archopt 64 -static
 | 
			
		||||
 | 
			
		||||
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
 | 
			
		||||
 | 
			
		||||
LIB_DIR = $(TOP)/lib64
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -64 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
@@ -1,18 +0,0 @@
 | 
			
		||||
# Configuration for IRIX 6.x, make n32 DSOs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = irix6-n32
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = CC
 | 
			
		||||
CFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1521,1552 -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -n32 -mips3 -O3 -ansi -woff 1174,1552
 | 
			
		||||
MKLIB_OPTIONS = -archopt n32
 | 
			
		||||
 | 
			
		||||
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
 | 
			
		||||
 | 
			
		||||
LIB_DIR = $(TOP)/lib32
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -n32 -rpath $(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXi -lfpe -lm
 | 
			
		||||
@@ -1,25 +0,0 @@
 | 
			
		||||
# Configuration for IRIX 6.x, make n32 static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = irix6-n32-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = CC
 | 
			
		||||
CFLAGS = -n32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -n32 -mips2 -O2 -ansi -woff 3262,3666
 | 
			
		||||
MKLIB_OPTIONS = -archopt n32 -static
 | 
			
		||||
 | 
			
		||||
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
 | 
			
		||||
 | 
			
		||||
LIB_DIR = $(TOP)/lib32
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -n32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
@@ -1,19 +0,0 @@
 | 
			
		||||
# Configuration for IRIX 6.x, make o32 DSOs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = irix6-o32
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = CC
 | 
			
		||||
CFLAGS = -32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -32 -mips2 -O2 -ansi -woff 3262,3666
 | 
			
		||||
MKLIB_OPTIONS = -archopt o32
 | 
			
		||||
 | 
			
		||||
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
 | 
			
		||||
 | 
			
		||||
LIB_DIR = $(TOP)/lib32
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -32 -rpath $(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
 | 
			
		||||
@@ -1,25 +0,0 @@
 | 
			
		||||
# Configuration for IRIX 6.x, make o32 static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = irix6-o32-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = CC
 | 
			
		||||
CFLAGS = -32 -mips2 -O2 -ansi -woff 1521,1552 -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -32 -mips2 -O2 -ansi -woff 3262,3666
 | 
			
		||||
MKLIB_OPTIONS = -archopt o32 -static
 | 
			
		||||
 | 
			
		||||
GLW_SOURCES = GLwDrawA.c GLwMDrawA.c
 | 
			
		||||
 | 
			
		||||
LIB_DIR = $(TOP)/lib32
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -32 -glut -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
@@ -1,20 +0,0 @@
 | 
			
		||||
# Configuration for generic Linux
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
 | 
			
		||||
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
# Need to have -L/usr/X11R6/lib in these:
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
@@ -1,18 +0,0 @@
 | 
			
		||||
# Configuration for Linux on Alpha
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-alpha
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -fPIC -D_XOPEN_SOURCE
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
 | 
			
		||||
@@ -1,27 +0,0 @@
 | 
			
		||||
# Configuration for Linux on Alpha, static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-alpha-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -D_XOPEN_SOURCE -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -D_XOPEN_SOURCE
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -L/usr/X11R6/lib -lX11 -lm
 | 
			
		||||
@@ -1,20 +0,0 @@
 | 
			
		||||
# Configuration for debugging on Linux
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-debug
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = -g -ansi -pedantic -Wall -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG -DMESA_DEBUG
 | 
			
		||||
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
# Need to have -L/usr/X11R6/lib in these:
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lXt -L/usr/X11R6/lib -lX11
 | 
			
		||||
@@ -1,29 +0,0 @@
 | 
			
		||||
# Configuration for DirectFB
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-directfb
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC  = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS   = -Wall -O3 -ffast-math -fPIC -std=c99 -D_GNU_SOURCE -D_POSIX_SOURCE -D_SVID_SOURCE \
 | 
			
		||||
         -D_POSIX_C_SOURCE=199309L -D_BSD_SOURCE -DPTHREADS
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = -Wall -O3 -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE   
 | 
			
		||||
 | 
			
		||||
HAVE_X86 = $(shell uname -m | grep 'i[3-6]86' >/dev/null && echo yes)
 | 
			
		||||
ifeq ($(HAVE_X86), yes)
 | 
			
		||||
     CFLAGS   += -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
 | 
			
		||||
     CXXFLAGS += -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
 | 
			
		||||
     ASM_SOURCES = $(X86_SOURCES) $(X86_API)
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
SRC_DIRS     = mesa glu
 | 
			
		||||
DRIVER_DIRS  = directfb
 | 
			
		||||
PROGRAM_DIRS = # disabled
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
GL_LIB_DEPS  = -lm -lpthread
 | 
			
		||||
@@ -1,53 +0,0 @@
 | 
			
		||||
# -*-makefile-*-
 | 
			
		||||
# Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-dri
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
MKDEP = /usr/X11R6/bin/makedepend
 | 
			
		||||
#MKDEP = gcc -M
 | 
			
		||||
#MKDEP_OPTIONS = -MF depend
 | 
			
		||||
 | 
			
		||||
WARN_FLAGS = -Wall
 | 
			
		||||
OPT_FLAGS = -O -g
 | 
			
		||||
PIC_FLAGS = -fPIC
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE \
 | 
			
		||||
	-D_BSD_SOURCE -D_GNU_SOURCE \
 | 
			
		||||
	-DDRI_NEW_INTERFACE_ONLY -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 
 | 
			
		||||
 | 
			
		||||
X11_INCLUDES = -I/usr/X11R6/include -I/usr/X11R6/include/X11/extensions
 | 
			
		||||
 | 
			
		||||
CFLAGS =  $(WARN_FLAGS) $(OPT_FLAGS) $(ASM_FLAGS) -std=c99 $(PIC_FLAGS) -ffast-math  \
 | 
			
		||||
	$(DEFINES)
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = $(WARN_FLAGS) $(OPT_FLAGS) $(PIC_FLAGS) \
 | 
			
		||||
	$(DEFINES)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ASM_SOURCES = 
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lXxf86vm -lm -lpthread -ldl
 | 
			
		||||
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
SRC_DIRS = mesa glu glut/glx glw glx/x11
 | 
			
		||||
DRIVER_DIRS = dri
 | 
			
		||||
PROGRAM_DIRS = 
 | 
			
		||||
WINDOW_SYSTEM=dri
 | 
			
		||||
 | 
			
		||||
# ffb and gamma are missing because they have not been converted to use the new
 | 
			
		||||
# interface.
 | 
			
		||||
DRI_DIRS = dri_client i810 i830 i915 mach64 mga r128 r200 radeon s3v \
 | 
			
		||||
	savage sis tdfx trident unichrome
 | 
			
		||||
@@ -1,17 +0,0 @@
 | 
			
		||||
# -*-makefile-*-
 | 
			
		||||
# Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/linux-dri
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-dri-ppc
 | 
			
		||||
 | 
			
		||||
OPT_FLAGS = -Os -mcpu=603
 | 
			
		||||
PIC_FLAGS = -fPIC
 | 
			
		||||
 | 
			
		||||
ASM_FLAGS = -DUSE_PPC_ASM -DUSE_VMX_ASM
 | 
			
		||||
ASM_SOURCES = $(PPC_SOURCES)
 | 
			
		||||
 | 
			
		||||
# Build only the drivers for cards that exist on PowerPC.  At some point MGA
 | 
			
		||||
# will be added, but not yet.
 | 
			
		||||
DRI_DIRS = dri_client mach64 r128 r200 radeon tdfx
 | 
			
		||||
 | 
			
		||||
@@ -1,12 +0,0 @@
 | 
			
		||||
# -*-makefile-*-
 | 
			
		||||
# Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/linux-dri
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-dri-x86
 | 
			
		||||
 | 
			
		||||
# Unnecessary on x86, generally.
 | 
			
		||||
PIC_FLAGS = 
 | 
			
		||||
 | 
			
		||||
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
 | 
			
		||||
ASM_SOURCES = $(X86_SOURCES)
 | 
			
		||||
@@ -1,40 +0,0 @@
 | 
			
		||||
# -*-makefile-*-
 | 
			
		||||
# Configuration for linux-dri: Linux DRI hardware drivers for XFree86 & others
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-dri-x86-64
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DPTHREADS -D_GNU_SOURCE 
 | 
			
		||||
 | 
			
		||||
CFLAGS = -m64 -Wmissing-prototypes -g -std=c99  -Wundef -fPIC -ffast-math $(DEFINES)
 | 
			
		||||
CXXFLAGS = -m64 -Wall -g -ansi -pedantic -fPIC $(DEFINES)
 | 
			
		||||
 | 
			
		||||
X11_INCLUDES = -I/usr/X11R6/include -I/usr/X11R6/include/X11/extensions
 | 
			
		||||
 | 
			
		||||
#ASM_SOURCES = $(X86_SOURCES)
 | 
			
		||||
 | 
			
		||||
LIB_DIR = $(TOP)/lib64
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib64 -lX11 -lXext -lXxf86vm -lm -lpthread -ldl
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib64 -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib64 -lXt -lX11
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
SRC_DIRS = mesa glu glut/glx glw glx/x11
 | 
			
		||||
DRIVER_DIRS = dri
 | 
			
		||||
PROGRAM_DIRS = 
 | 
			
		||||
WINDOW_SYSTEM=dri
 | 
			
		||||
 | 
			
		||||
# ffb, gamma, and sis are missing because they have
 | 
			
		||||
# not be converted to use the new interface.  Do i810 & i830 really
 | 
			
		||||
# need to be included here?
 | 
			
		||||
#
 | 
			
		||||
DRI_DIRS = dri_client i810 i830 i915 mach64 mga r128 r200 radeon tdfx unichrome savage
 | 
			
		||||
 | 
			
		||||
@@ -1,20 +0,0 @@
 | 
			
		||||
# Configuration for generic Linux with 3Dfx Glide driver
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-glide
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DFX -I/usr/include/glide -I/usr/local/glide/include
 | 
			
		||||
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -L/usr/local/glide/lib -lglide3x -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/local/glide/lib -lglide3x -lm
 | 
			
		||||
@@ -1,21 +0,0 @@
 | 
			
		||||
# Configuration for Linux with Intel C compiler
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-icc
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = icc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O3 -tpp6 -axK -KPIC -D_GCC_LIMITS_H_ -D__GNUC__ -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
 | 
			
		||||
CXXFLAGS = -O3
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
MKLIB_OPTIONS = -arch icc
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
 | 
			
		||||
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -1,29 +0,0 @@
 | 
			
		||||
# Configuration for Linux with Intel C compiler, static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-icc-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = icc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O3 -tpp6 -axK -D_GCC_LIMITS_H_ -D__GNUC__ -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
 | 
			
		||||
CXXFLAGS = -O3
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
MKLIB_OPTIONS = -static -arch icc
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
MKLIB_OPTIONS = -arch icc
 | 
			
		||||
 | 
			
		||||
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -1,27 +0,0 @@
 | 
			
		||||
# Configuration for 16 bits/channel OSMesa library on Linux
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-osmesa16
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
 | 
			
		||||
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library names
 | 
			
		||||
OSMESA_LIB = OSMesa16
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa16.so
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
SRC_DIRS = mesa glu
 | 
			
		||||
DRIVER_DIRS = osmesa
 | 
			
		||||
PROGRAM_DIRS = 
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Dependencies
 | 
			
		||||
OSMESA_LIB_DEPS = -lm -lpthread
 | 
			
		||||
APP_LIB_DEPS = -lOSMesa16
 | 
			
		||||
@@ -1,28 +0,0 @@
 | 
			
		||||
# Configuration for 16 bits/channel OSMesa library on Linux
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-osmesa16-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
 | 
			
		||||
CXXFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library names
 | 
			
		||||
OSMESA_LIB = OSMesa16
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa16.a
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
SRC_DIRS = mesa glu
 | 
			
		||||
DRIVER_DIRS = osmesa
 | 
			
		||||
PROGRAM_DIRS = 
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Dependencies
 | 
			
		||||
OSMESA_LIB_DEPS = -lm -lpthread
 | 
			
		||||
APP_LIB_DEPS = -lOSMesa16
 | 
			
		||||
@@ -1,27 +0,0 @@
 | 
			
		||||
# Configuration for 32 bits/channel OSMesa library on Linux
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-osmesa32
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
 | 
			
		||||
CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library names
 | 
			
		||||
OSMESA_LIB = OSMesa32
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa32.so
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
SRC_DIRS = mesa glu
 | 
			
		||||
DRIVER_DIRS = osmesa
 | 
			
		||||
PROGRAM_DIRS = 
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Dependencies
 | 
			
		||||
OSMESA_LIB_DEPS = -lm -lpthread
 | 
			
		||||
APP_LIB_DEPS = -lOSMesa32
 | 
			
		||||
@@ -1,18 +0,0 @@
 | 
			
		||||
# Configuration for Linux on PPC
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-ppc
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
 | 
			
		||||
@@ -1,26 +0,0 @@
 | 
			
		||||
# Configuration for Linux on PPC, static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-ppc-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -O3 -mcpu=603 -ansi -pedantic -fPIC -fsigned-char -ffast-math -funroll-loops -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm
 | 
			
		||||
@@ -1,33 +0,0 @@
 | 
			
		||||
# Configuration for linux-solo: Linux DRI hardware drivers for fbdev
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-solo
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE -DUSE_EXTERNAL_DXTN_LIB=1 -DDRM_USE_MALLOC
 | 
			
		||||
 | 
			
		||||
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = $(DEFINES) -Wall -O3 -ansi -pedantic -fPIC
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ASM_SOURCES = $(X86_SOURCES)
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
 | 
			
		||||
GL_LIB_DEPS = -lm -lpthread -ldl
 | 
			
		||||
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
SRC_DIRS = mesa glx/mini glu glut/mini
 | 
			
		||||
DRIVER_DIRS = dri
 | 
			
		||||
PROGRAM_DIRS = miniglx
 | 
			
		||||
 | 
			
		||||
#DRI_DIRS = fb ffb gamma sis savage
 | 
			
		||||
DRI_DIRS = i810 i830 i915 mach64 mga r128 r200 radeon tdfx unichrome
 | 
			
		||||
@@ -1,29 +0,0 @@
 | 
			
		||||
# Configuration for linux-solo-ia64: Linux DRI hardware drivers for fbdev
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-solo-ia64
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE -DDRM_USE_MALLOC
 | 
			
		||||
 | 
			
		||||
CFLAGS = $(DEFINES) -Wmissing-prototypes -g -std=c99 -Wundef -fPIC -ffast-math
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = $(DEFINES) -Wall -O3 -ansi -pedantic -fPIC
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
 | 
			
		||||
GL_LIB_DEPS = -lm -lpthread -ldl
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
SRC_DIRS = mesa glx/mini glu glut/mini
 | 
			
		||||
DRIVER_DIRS = dri
 | 
			
		||||
PROGRAM_DIRS = miniglx
 | 
			
		||||
 | 
			
		||||
DRI_DIRS = fb mach64 mga r128 r200 radeon sis tdfx unichrome
 | 
			
		||||
@@ -1,32 +0,0 @@
 | 
			
		||||
# Configuration for linux-solo: Linux DRI hardware drivers for fbdev
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-solo-x86
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
DEFINES = -DDRI_NEW_INTERFACE_ONLY -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DDRM_USE_MALLOC
 | 
			
		||||
 | 
			
		||||
CFLAGS = $(DEFINES) -Wmissing-prototypes -O3 -g -std=c99 -Wundef -fPIC -ffast-math
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = $(DEFINES) -Wall -O3 -ansi -pedantic -fPIC
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ASM_SOURCES = $(X86_SOURCES)
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
DRI_LIB_DEPS = -lm -lpthread -lexpat -ldl
 | 
			
		||||
GL_LIB_DEPS = -lm -lpthread -ldl
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lpthread
 | 
			
		||||
 | 
			
		||||
# Directories
 | 
			
		||||
SRC_DIRS = mesa glx/mini glu glut/mini
 | 
			
		||||
DRIVER_DIRS = dri
 | 
			
		||||
PROGRAM_DIRS = miniglx
 | 
			
		||||
 | 
			
		||||
#DRI_DIRS = fb ffb gamma sis savage
 | 
			
		||||
DRI_DIRS = i810 i830 i915 mach64 mga r128 r200 radeon tdfx unichrome
 | 
			
		||||
@@ -1,16 +0,0 @@
 | 
			
		||||
# Configuration for Linux on Sparc
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-sparc
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
@@ -1,17 +0,0 @@
 | 
			
		||||
# Configuration for Linux on Sparc5
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-sparc5
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -mcpu=ultrasparc -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -mcpu=ultrasparc -O2 -ffast-math -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
 | 
			
		||||
@@ -1,30 +0,0 @@
 | 
			
		||||
# Configuration for generic Linux, making static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
 | 
			
		||||
CXXFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies (static libs don't have dependencies)
 | 
			
		||||
GL_LIB_DEPS = 
 | 
			
		||||
OSMESA_LIB_DEPS = 
 | 
			
		||||
GLU_LIB_DEPS = 
 | 
			
		||||
GLUT_LIB_DEPS = 
 | 
			
		||||
GLW_LIB_DEPS = 
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
 | 
			
		||||
@@ -1,22 +0,0 @@
 | 
			
		||||
# Configuration for debugging on Linux
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-tcc
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
TCC_DIR=/home/progs/tcc-0.9.20
 | 
			
		||||
 | 
			
		||||
CFLAGS = -g -ansi -pedantic -Wall -Wmissing-prototypes -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM -DPTHREADS -DDEBUG -DMESA_DEBUG -DUSE_TCC -I$(TCC_DIR)
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = -g -ansi -pedantic -Wall -Wundef -fPIC -ffast-math -D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE -DDEBUG -DMESA_DEBUG
 | 
			
		||||
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread -L$(TCC_DIR) -ltcc -ldl
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lXt -L/usr/X11R6/lib -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
@@ -1,17 +0,0 @@
 | 
			
		||||
# Configuration for Linux on UltraSparc
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-ultrasparc
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -mv8 -O2 -mtune=ultrasparc -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE -I/usr/X11R6/include -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -mv8 -O2 -mtune=ultrasparc -ansi -pedantic -fPIC -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR)-l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
@@ -1,24 +0,0 @@
 | 
			
		||||
# Configuration for Linux with x86 optimizations
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-x86
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
@@ -1,13 +0,0 @@
 | 
			
		||||
# To build Linux x86 32-bit in an x86-64 environment
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/linux-x86
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-x86-32
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Other than -m32, these are the same as in linux-x86, which we included above.
 | 
			
		||||
 | 
			
		||||
CFLAGS = -m32 -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = -m32 -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
 | 
			
		||||
@@ -1,28 +0,0 @@
 | 
			
		||||
# Configuration for Linux for 64-bit X86 (Opteron)
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-x86-64
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS = -m64 -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = -m64 -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#ASM_SOURCES = $(X86_SOURCES)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
LIB_DIR = $(TOP)/lib64
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib64 -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib64 -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib64 -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
@@ -1,40 +0,0 @@
 | 
			
		||||
# Configuration for Linux for 64-bit X86 (Opteron), static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-x86-64-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS = -m64 -Wall -O3 -ansi -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = -m64 -Wall -O3 -ansi -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#ASM_SOURCES = $(X86_SOURCES)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
LIB_DIR = $(TOP)/lib64
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies (static libs don't have dependencies)
 | 
			
		||||
GL_LIB_DEPS = 
 | 
			
		||||
OSMESA_LIB_DEPS = 
 | 
			
		||||
GLU_LIB_DEPS = 
 | 
			
		||||
GLUT_LIB_DEPS = 
 | 
			
		||||
GLW_LIB_DEPS = 
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib64 -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
 | 
			
		||||
@@ -1,10 +0,0 @@
 | 
			
		||||
# Configuration for Linux with x86 code, but no gcc optimizations and 
 | 
			
		||||
# debugging enabled.
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/linux-x86
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-x86-debug
 | 
			
		||||
 | 
			
		||||
CFLAGS = -Wall -g -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = -Wall -g -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
@@ -1,24 +0,0 @@
 | 
			
		||||
# Configuration for Linux with 3Dfx Glide driver and x86 optimizations
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-x86-glide
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include -DFX -I/usr/include/glide -I/usr/local/glide/include
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = -Wall -O3 -ansi -pedantic -fPIC -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -L/usr/local/glide/lib -lglide3x -lm -lpthread
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/X11R6/lib -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/local/glide/lib -lglide3x -lm
 | 
			
		||||
@@ -1,37 +0,0 @@
 | 
			
		||||
# Configuration for Linux with x86 optimizations, static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = linux-x86-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
 | 
			
		||||
CFLAGS = -Wall -O3 -ansi -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM -DPTHREADS -I/usr/X11R6/include
 | 
			
		||||
 | 
			
		||||
CXXFLAGS = -Wall -O3 -ansi -pedantic -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 | 
			
		||||
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ASM_SOURCES = $(X86_SOURCES) $(X86_API)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies (static libs don't have dependencies)
 | 
			
		||||
GL_LIB_DEPS = 
 | 
			
		||||
OSMESA_LIB_DEPS = 
 | 
			
		||||
GLU_LIB_DEPS = 
 | 
			
		||||
GLUT_LIB_DEPS = 
 | 
			
		||||
GLW_LIB_DEPS = 
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm -lstdc++
 | 
			
		||||
@@ -1,14 +0,0 @@
 | 
			
		||||
# Configuration for NetBSD
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = netbsd
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O2 -fPIC -DUSE_XSHM -I/usr/X11R6/include -DHZ=100
 | 
			
		||||
CXXFLAGS = -O2 -fPIC
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -lXext -lXmu -lXi -lX11 -lm
 | 
			
		||||
 | 
			
		||||
@@ -1,18 +0,0 @@
 | 
			
		||||
# Configuration for OpenBSD
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = openbsd
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O2 -fPIC -I/usr/X11R6/include -DUSE_XSHM -DHZ=100
 | 
			
		||||
CXXFLAGS = -O2 -fPIC -I/usr/X11R6/include -DHZ=100
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm
 | 
			
		||||
OSMESA_LIB_DEPS = -lm
 | 
			
		||||
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB)
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lm
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/X11R6/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										16
									
								
								configs/osf1
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								configs/osf1
									
									
									
									
									
								
							@@ -1,16 +0,0 @@
 | 
			
		||||
# Configuration for OSF/1
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = osf1
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = cxx
 | 
			
		||||
CFLAGS = -O0 -std1 -ieee_with_no_inexact -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -O2 -std ansi -ieee
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
@@ -1,18 +0,0 @@
 | 
			
		||||
# Configuration for Solaris on x86
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = solaris-x86
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CFLAGS = -Xa -xO3 -xpentium -KPIC -I/usr/openwin/include -DUSE_XSHM
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/openwin/lib -R/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
@@ -1,24 +0,0 @@
 | 
			
		||||
# Configuration for Solaris on x86 with gcc, static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = solaris-x86-gcc
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O3 -m486 -fPIC -I/usr/openwin/include -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -O3 -m486 -fPIC
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lm -lpthread
 | 
			
		||||
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/openwin/lib -lX11 -lXmu -lXt -lXi -lm
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/openwin/lib -R/usr/openwin/lib -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
@@ -1,12 +0,0 @@
 | 
			
		||||
# Configuration for SunOS 4, shared libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = sunos4
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = acc
 | 
			
		||||
CFLAGS = -Kpic -O -I/usr/include/X11R5 -DUSE_XSHM -DSUNOS4
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/lib/X11R5 -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -1,15 +0,0 @@
 | 
			
		||||
# Configuration for SunOS 4, with gcc, shared libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = sunos4-gcc
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -fPIC -O3 -I/usr/openwin/include -I/usr/include/X11R5 -I/usr/include/X11R5 -DUSE_XSHM -DSUNOS4
 | 
			
		||||
CXXFLAGS = -fPIC -O3 -I/usr/openwin/include -DSUNOS4
 | 
			
		||||
GLUT_CFLAGS = -fexceptions -DSOLARIS_2_4_BUG
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
 | 
			
		||||
@@ -1,25 +0,0 @@
 | 
			
		||||
# Configuration for SunOS 4, static libs
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = sunos4-static
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = acc
 | 
			
		||||
CFLAGS = -O -DUSE_XSHM -DSUNOS4
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
# Library names (actual file names)
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
# Library/program dependencies (static libs don't have dependencies)
 | 
			
		||||
GL_LIB_DEPS = 
 | 
			
		||||
OSMESA_LIB_DEPS = 
 | 
			
		||||
GLU_LIB_DEPS = 
 | 
			
		||||
GLUT_LIB_DEPS = 
 | 
			
		||||
GLW_LIB_DEPS = 
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi -lpthread -lm
 | 
			
		||||
@@ -1,18 +0,0 @@
 | 
			
		||||
# Configuration for SunOS 5
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = sunos5
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = c++
 | 
			
		||||
CFLAGS = -KPIC -Xa -O -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM
 | 
			
		||||
CXXFLAGS = -KPIC -Xa -O -I/usr/openwin/include -I/usr/dt/include
 | 
			
		||||
GLUT_CFLAGS = -DSOLARIS_2_4_BUG
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/openwin/lib -L/usr/dt/lib -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/openwin/lib -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -lCrun -lX11 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
@@ -1,21 +0,0 @@
 | 
			
		||||
# Configuration for SunOS 5, with gcc
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = sunos5-gcc
 | 
			
		||||
 | 
			
		||||
ASM_SOURCES = $(SPARC_SOURCES) $(SPARC_API)
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -O3 -I/usr/openwin/include -fPIC -fomit-frame-pointer -D_REENTRANT -DUSE_XSHM -DUSE_SPARC_ASM
 | 
			
		||||
CXXFLAGS = -O3 -I/usr/openwin/include -fPIC -fomit-frame-pointer -D_REENTRANT -DUSE_SPARC_ASM
 | 
			
		||||
GLUT_CFLAGS = -fexceptions -DSOLARIS_2_4_BUG
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/openwin/lib -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -lX11 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
 | 
			
		||||
@@ -1,19 +0,0 @@
 | 
			
		||||
# Configuration for SunOS 5, SMP systems
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = sunos5-smp
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = cc
 | 
			
		||||
CXX = c++
 | 
			
		||||
CFLAGS = -KPIC -Xa -native -fast -xO5 -xlibmil -xsafe=mem -xdepend -I/usr/openwin/include -I/usr/dt/include -DUSE_XSHM -DSOLARIS_2_4_BUG
 | 
			
		||||
CXXFLAGS = -KPIC -Xa -native -fast -xO5 -xlibmil -xsafe=mem -xdepend -I/usr/openwin/include -I/usr/dt/include
 | 
			
		||||
GLUT_CFLAGS = -DSOLARIS_2_4_BUG
 | 
			
		||||
 | 
			
		||||
GL_LIB_DEPS = -L/usr/openwin/lib -lX11 -lXext -lXmu -lXi -lm
 | 
			
		||||
GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
 | 
			
		||||
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -lm
 | 
			
		||||
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -L/usr/openwin/lib -lXt -lX11
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -lX11 -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm -lCrun
 | 
			
		||||
 | 
			
		||||
@@ -1,21 +0,0 @@
 | 
			
		||||
# Configuration for Ultrix, with gcc
 | 
			
		||||
 | 
			
		||||
include $(TOP)/configs/default
 | 
			
		||||
 | 
			
		||||
CONFIG_NAME = ultrix-gcc
 | 
			
		||||
 | 
			
		||||
# Compiler and flags
 | 
			
		||||
CC = gcc
 | 
			
		||||
CXX = g++
 | 
			
		||||
CFLAGS = -pedantic -O2
 | 
			
		||||
CXXFLAGS = -pedantic -O2
 | 
			
		||||
GLUT_CFLAGS = -fexceptions
 | 
			
		||||
MKLIB_OPTIONS = -static
 | 
			
		||||
 | 
			
		||||
GL_LIB_NAME = libGL.a
 | 
			
		||||
GLU_LIB_NAME = libGLU.a
 | 
			
		||||
GLUT_LIB_NAME = libglut.a
 | 
			
		||||
GLW_LIB_NAME = libGLw.a
 | 
			
		||||
OSMESA_LIB_NAME = libOSMesa.a
 | 
			
		||||
 | 
			
		||||
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lXmu -lX11 -lXi -lm
 | 
			
		||||
							
								
								
									
										22
									
								
								descrip.mms
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								descrip.mms
									
									
									
									
									
								
							@@ -1,22 +0,0 @@
 | 
			
		||||
# Makefile for Mesa for VMS
 | 
			
		||||
# contributed by Jouk Jansen  joukj@hrem.stm.tudelft.nl
 | 
			
		||||
 | 
			
		||||
macro : 
 | 
			
		||||
        @ macro=""
 | 
			
		||||
.ifdef NOSHARE
 | 
			
		||||
.else
 | 
			
		||||
	@ if f$getsyi("HW_MODEL") .ge. 1024 then macro= "/MACRO=(SHARE=1)"
 | 
			
		||||
.endif
 | 
			
		||||
	$(MMS)$(MMSQUALIFIERS)'macro' all
 | 
			
		||||
 | 
			
		||||
all :
 | 
			
		||||
	if f$search("lib.dir") .eqs. "" then create/directory [.lib]
 | 
			
		||||
	set default [.src]
 | 
			
		||||
	$(MMS)$(MMSQUALIFIERS)
 | 
			
		||||
	set default [-.progs.util]
 | 
			
		||||
	$(MMS)$(MMSQUALIFIERS)
 | 
			
		||||
	set default [-.demos]
 | 
			
		||||
	$(MMS)$(MMSQUALIFIERS)
 | 
			
		||||
	set default [-.xdemos]
 | 
			
		||||
	$(MMS)$(MMSQUALIFIERS)
 | 
			
		||||
	if f$search("[-]test.DIR") .nes. "" then pipe set default [-.test] ; $(MMS)$(MMSQUALIFIERS)
 | 
			
		||||
@@ -1,95 +0,0 @@
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_agp_offset
 | 
			
		||||
 | 
			
		||||
Name Strings
 | 
			
		||||
 | 
			
		||||
    GLX_MESA_agp_offset
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Brian Paul, Tungsten Graphics, Inc. (brian.paul 'at' tungstengraphics.com)
 | 
			
		||||
    Keith Whitwell, Tungsten Graphics, Inc.  (keith 'at' tungstengraphics.com)
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    Shipping (Mesa 4.0.4 and later.  Only implemented in particular
 | 
			
		||||
    XFree86/DRI drivers.)
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    1.0
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
    TBD
 | 
			
		||||
 | 
			
		||||
Dependencies
 | 
			
		||||
 | 
			
		||||
    OpenGL 1.0 or later is required
 | 
			
		||||
    GLX_NV_vertex_array_range is required.
 | 
			
		||||
    This extensions is written against the OpenGL 1.4 Specification.
 | 
			
		||||
 | 
			
		||||
Overview
 | 
			
		||||
 | 
			
		||||
    This extensions provides a way to convert pointers in an AGP memory
 | 
			
		||||
    region into byte offsets into the AGP aperture.
 | 
			
		||||
    Note, this extension depends on GLX_NV_vertex_array_range, for which
 | 
			
		||||
    no real specification exists.  See GL_NV_vertex_array_range for more
 | 
			
		||||
    information.
 | 
			
		||||
 | 
			
		||||
IP Status
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Issues
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
New Procedures and Functions
 | 
			
		||||
 | 
			
		||||
    unsigned int glXGetAGPOffsetMESA( const void *pointer )
 | 
			
		||||
 | 
			
		||||
New Tokens
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to the OpenGL 1.4 Specification
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 3 the GLX 1.4 Specification (Functions and Errors)
 | 
			
		||||
 | 
			
		||||
    Add a new section, 3.6 as follows:
 | 
			
		||||
 | 
			
		||||
    3.6 AGP Memory Access
 | 
			
		||||
 | 
			
		||||
    On "PC" computers, AGP memory can be allocated with glXAllocateMemoryNV
 | 
			
		||||
    and freed with glXFreeMemoryNV.  Sometimes it's useful to know where a
 | 
			
		||||
    block of AGP memory is located with respect to the start of the AGP
 | 
			
		||||
    aperature.  The function
 | 
			
		||||
 | 
			
		||||
        GLuint glXGetAGPOffsetMESA( const GLvoid *pointer )
 | 
			
		||||
 | 
			
		||||
    Returns the offset of the given memory block from the start of AGP
 | 
			
		||||
    memory in basic machine units (i.e. bytes).  If pointer is invalid
 | 
			
		||||
    the value ~0 will be returned.
 | 
			
		||||
 | 
			
		||||
GLX Protocol
 | 
			
		||||
 | 
			
		||||
    None.  This is a client side-only extension.
 | 
			
		||||
 | 
			
		||||
Errors
 | 
			
		||||
 | 
			
		||||
    glXGetAGPOffsetMESA will return ~0 if the pointer does not point to
 | 
			
		||||
    an AGP memory region.
 | 
			
		||||
 | 
			
		||||
New State
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Revision History
 | 
			
		||||
 | 
			
		||||
    20 September 2002 - Initial draft
 | 
			
		||||
    2 October 2002 - finished GLX chapter 3 additions
 | 
			
		||||
    27 July 2004 - use unsigned int instead of GLuint, void instead of GLvoid
 | 
			
		||||
@@ -8,7 +8,7 @@ Name Strings
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Brian Paul (brian.paul 'at' tungstengraphics.com)
 | 
			
		||||
    Brian Paul (brian 'at' mesa3d.org)
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,138 +0,0 @@
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_pack_invert
 | 
			
		||||
 | 
			
		||||
Name Strings
 | 
			
		||||
 | 
			
		||||
    GL_MESA_pack_invert
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Brian Paul, Tungsten Graphics, Inc. (brian.paul 'at' tungstengraphics.com)
 | 
			
		||||
    Keith Whitwell, Tungsten Graphics, Inc.  (keith 'at' tungstengraphics.com)
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    Shipping (Mesa 4.0.4 and later)
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    1.0
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
    TBD
 | 
			
		||||
 | 
			
		||||
Dependencies
 | 
			
		||||
 | 
			
		||||
    OpenGL 1.0 or later is required
 | 
			
		||||
    This extensions is written against the OpenGL 1.4 Specification.
 | 
			
		||||
 | 
			
		||||
Overview
 | 
			
		||||
 | 
			
		||||
    This extension adds a new pixel storage parameter to indicate that
 | 
			
		||||
    images are to be packed in top-to-bottom order instead of OpenGL's
 | 
			
		||||
    conventional bottom-to-top order.  Only pixel packing can be
 | 
			
		||||
    inverted (i.e. for glReadPixels, glGetTexImage, glGetConvolutionFilter,
 | 
			
		||||
    etc).
 | 
			
		||||
 | 
			
		||||
    Almost all known image file formats store images in top-to-bottom
 | 
			
		||||
    order.  As it is, OpenGL reads images from the frame buffer in
 | 
			
		||||
    bottom-to-top order.  Thus, images usually have to be inverted before
 | 
			
		||||
    writing them to a file with image I/O libraries.  This extension
 | 
			
		||||
    allows images to be read such that inverting isn't needed.
 | 
			
		||||
 | 
			
		||||
IP Status
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Issues
 | 
			
		||||
 | 
			
		||||
    1. Should we also defined UNPACK_INVERT_MESA for glDrawPixels, etc?
 | 
			
		||||
 | 
			
		||||
    Resolved:  No, we're only concerned with pixel packing.  There are other
 | 
			
		||||
    solutions for inverting images when using glDrawPixels (negative Y pixel
 | 
			
		||||
    zoom) or glTexImage (invert the vertex T coordinates).  It would be easy
 | 
			
		||||
    enough to define a complementary extension for pixel packing in the
 | 
			
		||||
    future if needed.
 | 
			
		||||
 | 
			
		||||
New Procedures and Functions
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
New Tokens
 | 
			
		||||
 | 
			
		||||
    Accepted by the <pname> parameter of PixelStorei and PixelStoref
 | 
			
		||||
    and the <pname> parameter of GetIntegerv, GetFloatv, GetDoublev
 | 
			
		||||
    and GetBooleanv:
 | 
			
		||||
 | 
			
		||||
        PACK_INVERT_MESA                   0x8758
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 2 of the OpenGL 1.4 Specification (OpenGL Operation)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 3 of the OpenGL 1.4 Specification (Rasterization)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 4 of the OpenGL 1.4 Specification (Per-Fragment
 | 
			
		||||
Operations and the Frame Buffer)
 | 
			
		||||
 | 
			
		||||
    Add the following entry to table 4.4 (PixelStore parameters) on page 182:
 | 
			
		||||
 | 
			
		||||
    Parameter Name       Type    Initial Value    Valid Range
 | 
			
		||||
    ---------------------------------------------------------
 | 
			
		||||
    PACK_INVERT_MESA     boolean     FALSE        TRUE/FALSE
 | 
			
		||||
 | 
			
		||||
    In the section labeled "Placement in Client Memory" on page 184
 | 
			
		||||
    insert the following text into the paragraph before the sentence
 | 
			
		||||
    that starts with "If the format is RED, GREEN, BLUE...":
 | 
			
		||||
 | 
			
		||||
    "The parameter PACK_INVERT_MESA controls whether the image is packed
 | 
			
		||||
     in bottom-to-top order (the default) or top-to-bottom order.  Equation
 | 
			
		||||
     3.8 is modified as follows:
 | 
			
		||||
 | 
			
		||||
     ... the first element of the Nth row is indicated by
 | 
			
		||||
 | 
			
		||||
         p + Nk,                if PACK_INVERT_MESA is false
 | 
			
		||||
         p + k * (H - 1) - Nk,  if PACK_INVERT_MESA is true, where H is the
 | 
			
		||||
                                image height
 | 
			
		||||
    "
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 5 of the OpenGL 1.4 Specification (Special Functions)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 6 of the OpenGL 1.4 Specification (State and
 | 
			
		||||
State Requests)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Appendix A of the OpenGL 1.4 Specification (Invariance)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to the AGL/GLX/WGL Specifications
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
GLX Protocol
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Errors
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
New State
 | 
			
		||||
 | 
			
		||||
    Add the following entry to table 6.20 (Pixels) on page 235:
 | 
			
		||||
 | 
			
		||||
    Get Value         Type     Get Cmd    Initial Value  Description                Sec    Attribute
 | 
			
		||||
    --------------------------------------------------------------------------------------------------
 | 
			
		||||
    PACK_INVERT_MESA  boolean  GetBoolean  FALSE         Value of PACK_INVERT_MESA  4.3.2  pixel-store
 | 
			
		||||
 | 
			
		||||
Revision History
 | 
			
		||||
 | 
			
		||||
    21 September 2002 - Initial draft
 | 
			
		||||
@@ -1,3 +1,5 @@
 | 
			
		||||
XXX - Not complete yet!!!
 | 
			
		||||
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_packed_depth_stencil
 | 
			
		||||
@@ -13,11 +15,11 @@ Contact
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    Obsolete.
 | 
			
		||||
    Not yet shipping.
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    $Id: MESA_packed_depth_stencil.spec,v 1.2 2003/09/19 14:58:21 brianp Exp $
 | 
			
		||||
    $Id: MESA_packed_depth_stencil.spec,v 1.1 2000/11/03 14:58:45 brianp Exp $
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@ Name Strings
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Brian Paul (brian.paul 'at' tungstengraphics.com)
 | 
			
		||||
    Brian Paul (brian 'at' mesa3d.org)
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,357 +0,0 @@
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_program_debug
 | 
			
		||||
 | 
			
		||||
Name Strings
 | 
			
		||||
 | 
			
		||||
    GL_MESA_program_debug
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Brian Paul (brian.paul 'at' tungstengraphics.com)
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    XXX - Not complete yet!!!
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    Last Modified Date: July 20, 2003
 | 
			
		||||
    Author Revision: 1.0
 | 
			
		||||
    $Date: 2004/03/25 01:42:41 $ $Revision: 1.4 $
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
    TBD
 | 
			
		||||
 | 
			
		||||
Dependencies
 | 
			
		||||
 | 
			
		||||
    OpenGL 1.4 is required
 | 
			
		||||
    The extension is written against the OpenGL 1.4 specification.
 | 
			
		||||
    ARB_vertex_program or ARB_fragment_program or NV_vertex_program
 | 
			
		||||
    or NV_fragment_program is required.
 | 
			
		||||
 | 
			
		||||
Overview
 | 
			
		||||
 | 
			
		||||
    The extension provides facilities for implementing debuggers for
 | 
			
		||||
    vertex and fragment programs.
 | 
			
		||||
 | 
			
		||||
    The concept is that vertex and fragment program debuggers will be
 | 
			
		||||
    implemented outside of the GL as a utility package.  This extension
 | 
			
		||||
    only provides the minimal hooks required to implement a debugger.
 | 
			
		||||
 | 
			
		||||
    There are facilities to do the following:
 | 
			
		||||
    1. Have the GL call a user-specified function prior to executing
 | 
			
		||||
       each vertex or fragment instruction.
 | 
			
		||||
    2. Query the current program string's execution position.
 | 
			
		||||
    3. Query the current values of intermediate program values.
 | 
			
		||||
 | 
			
		||||
    The main feature is the ProgramCallbackMESA function.  It allows the
 | 
			
		||||
    user to register a callback function with the GL.  The callback will
 | 
			
		||||
    be called prior to executing each vertex or fragment program instruction.
 | 
			
		||||
 | 
			
		||||
    From within the callback, the user may issue Get* commands to
 | 
			
		||||
    query current GL state.  The GetProgramRegisterfvMESA function allows
 | 
			
		||||
    current program values to be queried (such as temporaries, input
 | 
			
		||||
    attributes, and result registers).
 | 
			
		||||
 | 
			
		||||
    There are flags for enabling/disabling the program callbacks.
 | 
			
		||||
 | 
			
		||||
    The current execution position (as an offset from the start of the
 | 
			
		||||
    program string) can be queried with
 | 
			
		||||
    GetIntegerv(GL_FRAGMENT_PROGRAM_POSITION_MESA, &pos) or
 | 
			
		||||
    GetIntegerv(GL_VERTEX_PROGRAM_POSITION_MESA, &pos).
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
IP Status
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Issues
 | 
			
		||||
 | 
			
		||||
    1. Is this the right model for a debugger?
 | 
			
		||||
 | 
			
		||||
       It seems prudent to minimize the scope of this extension and leave
 | 
			
		||||
       it up to the developer (or developer community) to write debuggers
 | 
			
		||||
       that layer on top of this extension.
 | 
			
		||||
 | 
			
		||||
       If the debugger were fully implemented within the GL it's not
 | 
			
		||||
       clear how terminal and GUI-based interfaces would work, for
 | 
			
		||||
       example.
 | 
			
		||||
 | 
			
		||||
    2. There aren't any other extensions that register callbacks with
 | 
			
		||||
       the GL.  Isn't there another solution?
 | 
			
		||||
 | 
			
		||||
       If we want to be able to single-step through vertex/fragment
 | 
			
		||||
       programs I don't see another way to do it.
 | 
			
		||||
 | 
			
		||||
    3. How do we prevent the user from doing something crazy in the
 | 
			
		||||
       callback function, like trying to call glBegin (leading to
 | 
			
		||||
       recursion)?
 | 
			
		||||
 | 
			
		||||
       The rule is that the callback function can only issue glGet*()
 | 
			
		||||
       functions and no other GL commands.  It could be difficult to
 | 
			
		||||
       enforce this, however.  Therefore, calling any non-get GL
 | 
			
		||||
       command from within the callback will result in undefined
 | 
			
		||||
       results.    
 | 
			
		||||
 | 
			
		||||
    4. Is this extension amenable to hardware implementation?
 | 
			
		||||
 | 
			
		||||
       Hopefully, but if not, the GL implementation will have to fall
 | 
			
		||||
       back to a software path when debugging.  This may be acceptable
 | 
			
		||||
       for debugging.
 | 
			
		||||
 | 
			
		||||
    5. What's the <data> parameter to ProgramCallbackMESA for?
 | 
			
		||||
 | 
			
		||||
       It's a common programming practice to associate a user-supplied
 | 
			
		||||
       value with callback functions.
 | 
			
		||||
 | 
			
		||||
    6. Debuggers often allow one to modify intermediate program values,
 | 
			
		||||
       then continue.  Does this extension support that?
 | 
			
		||||
 | 
			
		||||
       No.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
New Procedures and Functions (and datatypes)
 | 
			
		||||
 | 
			
		||||
    typedef void (*programcallbackMESA)(enum target, void *data)
 | 
			
		||||
 | 
			
		||||
    void ProgramCallbackMESA(enum target, programcallbackMESA callback,
 | 
			
		||||
                             void *data)
 | 
			
		||||
 | 
			
		||||
    void GetProgramRegisterfvMESA(enum target, sizei len,
 | 
			
		||||
                                  const ubyte *registerName, float *v)
 | 
			
		||||
 | 
			
		||||
New Tokens
 | 
			
		||||
 | 
			
		||||
    Accepted by the <cap> parameter of Enable, Disable, IsEnabled,
 | 
			
		||||
    GetBooleanv, GetDoublev, GetFloatv and GetIntegerv:
 | 
			
		||||
 | 
			
		||||
        FRAGMENT_PROGRAM_CALLBACK_MESA      0x8bb1
 | 
			
		||||
        VERTEX_PROGRAM_CALLBACK_MESA        0x8bb4
 | 
			
		||||
 | 
			
		||||
    Accepted by the <pname> parameter GetBooleanv, GetDoublev,
 | 
			
		||||
    GetFloatv and GetIntegerv:
 | 
			
		||||
 | 
			
		||||
        FRAGMENT_PROGRAM_POSITION_MESA      0x8bb0
 | 
			
		||||
        VERTEX_PROGRAM_POSITION_MESA        0x8bb4
 | 
			
		||||
 | 
			
		||||
    Accepted by the <pname> parameter of GetPointerv:
 | 
			
		||||
 | 
			
		||||
        FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA 0x8bb2
 | 
			
		||||
        FRAGMENT_PROGRAM_CALLBACK_DATA_MESA 0x8bb3
 | 
			
		||||
        VERTEX_PROGRAM_CALLBACK_FUNC_MESA   0x8bb6
 | 
			
		||||
        VERTEX_PROGRAM_CALLBACK_DATA_MESA   0x8bb7
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 2 of the OpenGL 1.4 Specification (OpenGL Operation)
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 3 of the OpenGL 1.4 Specification (Rasterization)
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 4 of the OpenGL 1.4 Specification (Per-Fragment
 | 
			
		||||
Operations and the Frame Buffer)
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 5 of the OpenGL 1.4 Specification (Special Functions)
 | 
			
		||||
 | 
			
		||||
    In section 5.4 "Display Lists", page 202, add the following command
 | 
			
		||||
    to the list of those that are not compiled into display lists:
 | 
			
		||||
 | 
			
		||||
        ProgramCallbackMESA.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    Add a new section 5.7 "Callback Functions"
 | 
			
		||||
 | 
			
		||||
    The function
 | 
			
		||||
 | 
			
		||||
        void ProgramCallbackMESA(enum target, programcallbackMESA callback,
 | 
			
		||||
                                 void *data)
 | 
			
		||||
 | 
			
		||||
    registers a user-defined callback function with the GL.  <target>
 | 
			
		||||
    may be FRAGMENT_PROGRAM_ARB or VERTEX_PROGRAM_ARB.  The enabled
 | 
			
		||||
    callback functions registered with these targets will be called
 | 
			
		||||
    prior to executing each instruction in the current fragment or
 | 
			
		||||
    vertex program, respectively.  The callbacks are enabled and
 | 
			
		||||
    disabled by calling Enable or Disable with <cap>
 | 
			
		||||
    FRAGMENT_PROGRAM_ARB or VERTEX_PROGRAM_ARB.
 | 
			
		||||
 | 
			
		||||
    The callback function's signature must match the typedef
 | 
			
		||||
 | 
			
		||||
        typedef void (*programcallbackMESA)(enum target, void *data)
 | 
			
		||||
 | 
			
		||||
    When the callback function is called, <target> will either be
 | 
			
		||||
    FRAGMENT_PROGRAM_ARB or VERTEX_PROGRAM_ARB to indicate which
 | 
			
		||||
    program is currently executing and <data> will be the value
 | 
			
		||||
    specified when ProgramCallbackMESA was called.
 | 
			
		||||
 | 
			
		||||
    From within the callback function, only the following GL commands
 | 
			
		||||
    may be called:
 | 
			
		||||
 | 
			
		||||
        GetBooleanv
 | 
			
		||||
        GetDoublev
 | 
			
		||||
        GetFloatv
 | 
			
		||||
        GetIntegerv
 | 
			
		||||
        GetProgramLocalParameter
 | 
			
		||||
        GetProgramEnvParameter
 | 
			
		||||
        GetProgramRegisterfvMESA
 | 
			
		||||
        GetProgramivARB
 | 
			
		||||
        GetProgramStringARB
 | 
			
		||||
        GetError
 | 
			
		||||
 | 
			
		||||
    Calling any other command from within the callback results in
 | 
			
		||||
    undefined behaviour.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 6 of the OpenGL 1.4 Specification (State and
 | 
			
		||||
State Requests)
 | 
			
		||||
 | 
			
		||||
    Add a new section 6.1.3 "Program Value Queries":
 | 
			
		||||
 | 
			
		||||
    The command
 | 
			
		||||
 | 
			
		||||
        void GetProgramRegisterfvMESA(enum target, sizei len,
 | 
			
		||||
                                      const ubyte *registerName,
 | 
			
		||||
                                      float *v)
 | 
			
		||||
        
 | 
			
		||||
    Is used to query the value of program variables and registers
 | 
			
		||||
    during program execution.  GetProgramRegisterfvMESA may only be
 | 
			
		||||
    called from within a callback function registered with
 | 
			
		||||
    ProgramCallbackMESA.
 | 
			
		||||
 | 
			
		||||
    <registerName> and <len> specify the name a variable, input
 | 
			
		||||
    attribute, temporary, or result register in the program string.
 | 
			
		||||
    The current value of the named variable is returned as four
 | 
			
		||||
    values in <v>.  If <name> doesn't exist in the program string,
 | 
			
		||||
    the error INVALID_OPERATION is generated.
 | 
			
		||||
 | 
			
		||||
Additions to Appendix A of the OpenGL 1.4 Specification (Invariance)
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
Additions to the AGL/GLX/WGL Specifications
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
GLX Protocol
 | 
			
		||||
 | 
			
		||||
    XXX TBD
 | 
			
		||||
 | 
			
		||||
Dependencies on NV_vertex_program and NV_fragment_program
 | 
			
		||||
 | 
			
		||||
    If NV_vertex_program and/or NV_fragment_program are supported,
 | 
			
		||||
    vertex and/or fragment programs defined by those extensions may
 | 
			
		||||
    be debugged as well.  Register queries will use the syntax used
 | 
			
		||||
    by those extensions (i.e. "v[X]" to query vertex attributes,
 | 
			
		||||
    "o[X]" for vertex outputs, etc.)
 | 
			
		||||
 | 
			
		||||
Errors
 | 
			
		||||
 | 
			
		||||
    INVALID_OPERATION is generated if ProgramCallbackMESA is called
 | 
			
		||||
    between Begin and End.
 | 
			
		||||
 | 
			
		||||
    INVALID_ENUM is generated by ProgramCallbackMESA if <target> is not
 | 
			
		||||
    a supported vertex or fragment program type.
 | 
			
		||||
 | 
			
		||||
    Note: INVALID_OPERAION IS NOT generated by GetProgramRegisterfvMESA,
 | 
			
		||||
    GetBooleanv, GetDoublev, GetFloatv, or GetIntegerv if called between
 | 
			
		||||
    Begin and End when a vertex or fragment program is currently executing.
 | 
			
		||||
 | 
			
		||||
    INVALID_ENUM is generated by ProgramCallbackMESA,
 | 
			
		||||
    GetProgramRegisterfvMESA if <target> is not a program target supported
 | 
			
		||||
    by ARB_vertex_program, ARB_fragment_program (or NV_vertex_program or
 | 
			
		||||
    NV_fragment_program).
 | 
			
		||||
 | 
			
		||||
    INVALID_VALUE is generated by GetProgramRegisterfvMESA if <registerName>
 | 
			
		||||
    does not name a known program register or variable.
 | 
			
		||||
 | 
			
		||||
    INVALID_OPERATION is generated by GetProgramRegisterfvMESA when a
 | 
			
		||||
    register query is attempted for a program target that's not currently
 | 
			
		||||
    being executed.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
New State
 | 
			
		||||
 | 
			
		||||
    XXX finish
 | 
			
		||||
 | 
			
		||||
(table 6.N, p. ###)
 | 
			
		||||
                                                            Initial
 | 
			
		||||
    Get Value                            Type Get Command   Value    Description  Sec.  Attribute
 | 
			
		||||
    ---------                            ---- -----------   -----    -----------  ----  ---------
 | 
			
		||||
    FRAGMENT_PROGRAM_CALLBACK_MESA        B   IsEnabled     FALSE    XXX          XXX   enable
 | 
			
		||||
    VERTEX_PROGRAM_CALLBACK_MESA          B   IsEnabled     FALSE    XXX          XXX   enable
 | 
			
		||||
    FRAGMENT_PROGRAM_POSITION_MESA        Z+  GetIntegerv   -1       XXX          XXX   -
 | 
			
		||||
    VERTEX_PROGRAM_POSITION_MESA          Z+  GetIntegerv   -1       XXX          XXX   -
 | 
			
		||||
    FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA   P   GetPointerv   NULL     XXX          XXX   -
 | 
			
		||||
    VERTEX_PROGRAM_CALLBACK_FUNC_MESA     P   GetPointerv   NULL     XXX          XXX   -
 | 
			
		||||
    FRAGMENT_PROGRAM_CALLBACK_DATA_MESA   P   GetPointerv   NULL     XXX          XXX   -
 | 
			
		||||
    VERTEX_PROGRAM_CALLBACK_DATA_MESA     P   GetPointerv   NULL     XXX          XXX   -
 | 
			
		||||
 | 
			
		||||
    XXX more?
 | 
			
		||||
 | 
			
		||||
New Implementation Dependent State
 | 
			
		||||
 | 
			
		||||
    None.
 | 
			
		||||
 | 
			
		||||
Revision History
 | 
			
		||||
 | 
			
		||||
    8 July 2003
 | 
			
		||||
        Initial draft. (Brian Paul)
 | 
			
		||||
    11 July 2003
 | 
			
		||||
        Second draft. (Brian Paul)
 | 
			
		||||
    20 July 2003
 | 
			
		||||
        Third draft.  Lots of fundamental changes. (Brian Paul)
 | 
			
		||||
    23 July 2003
 | 
			
		||||
        Added chapter 5 and 6 spec language. (Brian Paul)
 | 
			
		||||
 | 
			
		||||
Example Usage
 | 
			
		||||
 | 
			
		||||
   The following is a very simple example of how this extension may
 | 
			
		||||
   be used to print the values of R0, R1, R2 and R3 while executing
 | 
			
		||||
   vertex programs.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    /* This is called by the GL when the vertex program is executing.
 | 
			
		||||
     * We can only make glGet* calls from within this function!
 | 
			
		||||
     */
 | 
			
		||||
    void DebugCallback(GLenum target, GLvoid *data)
 | 
			
		||||
    {
 | 
			
		||||
       GLint pos;
 | 
			
		||||
       GLuint i;
 | 
			
		||||
 | 
			
		||||
       /* Get PC and current instruction string */
 | 
			
		||||
       glGetIntegerv(GL_VERTEX_PROGRAM_POSITION_ARB, &pos);
 | 
			
		||||
 | 
			
		||||
       printf("Current position: %d\n", pos);
 | 
			
		||||
 | 
			
		||||
       printf("Current temporary registers:\n");
 | 
			
		||||
       for (i = 0; i < 4; i++) {
 | 
			
		||||
	  GLfloat v[4];
 | 
			
		||||
	  char s[10];
 | 
			
		||||
	  sprintf(s, "R%d", i);
 | 
			
		||||
	  glGetProgramRegisterfvMESA(GL_VERTEX_PROGRAM_ARB, strlen(s), s, v);
 | 
			
		||||
	  printf("R%d = %g, %g, %g, %g\n", i, v[0], v[1], v[2], v[3]);
 | 
			
		||||
       }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * elsewhere...
 | 
			
		||||
     */
 | 
			
		||||
 | 
			
		||||
    /* Register our debugger callback function */
 | 
			
		||||
    glProgramCallbackMESA(GL_VERTEX_PROGRAM_ARB, DebugCallback, NULL);
 | 
			
		||||
    glEnable(GL_VERTEX_PROGRAM_CALLBACK_MESA);
 | 
			
		||||
 | 
			
		||||
    /* define/bind a vertex program */
 | 
			
		||||
 | 
			
		||||
    glEnable(GL_VERTEX_PROGRAM);
 | 
			
		||||
 | 
			
		||||
    /* render something */
 | 
			
		||||
    glBegin(GL_POINTS);
 | 
			
		||||
    glVertex2f(0, 0);
 | 
			
		||||
    glEnd();
 | 
			
		||||
 | 
			
		||||
@@ -8,7 +8,7 @@ Name Strings
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Brian Paul (brian.paul 'at' tungstengraphics.com)
 | 
			
		||||
    Brian Paul (brian 'at' mesa3d.org)
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@ Name Strings
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Brian Paul (brian.paul 'at' tungstengraphics.com)
 | 
			
		||||
    Brian Paul, brianp 'at' mesa3d.org
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
@@ -16,7 +16,7 @@ Status
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    $Id: MESA_resize_buffers.spec,v 1.3 2004/03/25 01:42:42 brianp Exp $
 | 
			
		||||
    $Id: MESA_resize_buffers.spec,v 1.2 2000/04/04 23:29:32 brianp Exp $
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@ Name Strings
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Brian Paul (brian.paul 'at' tungstengraphics.com)
 | 
			
		||||
    Brian Paul (brian 'at' mesa3d.org)
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +1,5 @@
 | 
			
		||||
XXX - Not complete yet!!!
 | 
			
		||||
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_sprite_point
 | 
			
		||||
@@ -12,11 +14,11 @@ Contact
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    Obsolete - see GL_ARB_point_sprite.
 | 
			
		||||
    Not yet shipping.
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    $Id: MESA_sprite_point.spec,v 1.2 2003/09/19 14:58:21 brianp Exp $
 | 
			
		||||
    $Id: MESA_sprite_point.spec,v 1.1 2000/12/08 00:21:02 brianp Exp $
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,132 +0,0 @@
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_swap_control
 | 
			
		||||
 | 
			
		||||
Name Strings
 | 
			
		||||
 | 
			
		||||
    GLX_MESA_swap_control
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Ian Romanick, IBM, idr at us.ibm.com
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    Deployed in DRI drivers post-XFree86 4.3.
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    Date: 5/1/2003   Revision: 1.1
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
    ???
 | 
			
		||||
 | 
			
		||||
Dependencies
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
    Based on GLX_SGI_swap_control version 1.9 and WGL_EXT_swap_control
 | 
			
		||||
    version 1.5.
 | 
			
		||||
 | 
			
		||||
Overview
 | 
			
		||||
 | 
			
		||||
    This extension allows an application to specify a minimum periodicity
 | 
			
		||||
    of color buffer swaps, measured in video frame periods.
 | 
			
		||||
 | 
			
		||||
Issues
 | 
			
		||||
 | 
			
		||||
    * Should implementations that export GLX_MESA_swap_control also export
 | 
			
		||||
      GL_EXT_swap_control for compatibility with WGL_EXT_swap_control?
 | 
			
		||||
 | 
			
		||||
    UNRESOLVED.
 | 
			
		||||
 | 
			
		||||
New Procedures and Functions
 | 
			
		||||
 | 
			
		||||
    int glXSwapIntervalMESA(int interval)
 | 
			
		||||
    int glXGetSwapIntervalMESA(void)
 | 
			
		||||
 | 
			
		||||
New Tokens
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 2 of the 1.4 GL Specification (OpenGL Operation)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 3 of the 1.4 GL Specification (Rasterization)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 4 of the 1.4 GL Specification (Per-Fragment Operations
 | 
			
		||||
and the Framebuffer)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 5 of the 1.4 GL Specification (Special Functions)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 6 of the 1.4 GL Specification (State and State Requests)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to the GLX 1.3 Specification
 | 
			
		||||
 | 
			
		||||
    [Add the following to Section 3.3.10 of the GLX Specification (Double
 | 
			
		||||
     Buffering)]
 | 
			
		||||
 | 
			
		||||
    glXSwapIntervalMESA specifies the minimum number of video frame periods
 | 
			
		||||
    per buffer swap.  (e.g. a value of two means that the color buffers
 | 
			
		||||
    will be swapped at most every other video frame.)  A return value
 | 
			
		||||
    of zero indicates success; otherwise an error occurred.  The interval
 | 
			
		||||
    takes effect when glXSwapBuffers is first called subsequent to the
 | 
			
		||||
    glXSwapIntervalMESA call.
 | 
			
		||||
 | 
			
		||||
    A video frame period is the time required by the monitor to display a 
 | 
			
		||||
    full frame of video data.  In the case of an interlaced monitor,
 | 
			
		||||
    this is typically the time required to display both the even and odd 
 | 
			
		||||
    fields of a frame of video data.
 | 
			
		||||
 | 
			
		||||
    If <interval> is set to a value of 0, buffer swaps are not synchron-
 | 
			
		||||
    ized to a video frame.  The <interval> value is silently clamped to
 | 
			
		||||
    the maximum implementation-dependent value supported before being
 | 
			
		||||
    stored.
 | 
			
		||||
 | 
			
		||||
    The swap interval is not part of the render context state.  It cannot
 | 
			
		||||
    be pushed or popped.  The current swap interval for the window
 | 
			
		||||
    associated with the current context can be obtained by calling
 | 
			
		||||
    glXGetSwapIntervalMESA.  The default swap interval is 0.
 | 
			
		||||
 | 
			
		||||
    On XFree86, setting the environment variable LIBGL_THROTTLE_REFRESH sets
 | 
			
		||||
    the swap interval to 1.
 | 
			
		||||
 | 
			
		||||
Errors
 | 
			
		||||
 | 
			
		||||
    glXSwapIntervalMESA returns GLX_BAD_VALUE if parameter <interval> is
 | 
			
		||||
    less than zero.
 | 
			
		||||
 | 
			
		||||
    glXSwapIntervalMESA returns GLX_BAD_CONTEXT if there is no current
 | 
			
		||||
    GLXContext.
 | 
			
		||||
 | 
			
		||||
GLX Protocol
 | 
			
		||||
 | 
			
		||||
    None.  This extension only extends to direct rendering contexts.
 | 
			
		||||
 | 
			
		||||
New State
 | 
			
		||||
 | 
			
		||||
    Get Value		Get Command	Type	    Initial Value
 | 
			
		||||
    ---------		-----------	----	    -------------
 | 
			
		||||
    [swap interval]	GetSwapInterval	Z+	    0
 | 
			
		||||
 | 
			
		||||
New Implementation Dependent State
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Revision History
 | 
			
		||||
 | 
			
		||||
    1.1,  5/1/03   Added the issues section and contact information.
 | 
			
		||||
    	  	   Changed the default swap interval to 0.
 | 
			
		||||
    1.0,  3/17/03  Initial version based on GLX_SGI_swap_control and
 | 
			
		||||
                   WGL_EXT_swap_control.
 | 
			
		||||
@@ -1,201 +0,0 @@
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_swap_frame_usage
 | 
			
		||||
 | 
			
		||||
Name Strings
 | 
			
		||||
 | 
			
		||||
    GLX_MESA_swap_frame_usage
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Ian Romanick, IBM, idr at us.ibm.com
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    Deployed in DRI drivers post-XFree86 4.3.
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    Date: 5/1/2003   Revision: 1.1
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
    ???
 | 
			
		||||
 | 
			
		||||
Dependencies
 | 
			
		||||
 | 
			
		||||
    GLX_SGI_swap_control affects the definition of this extension.
 | 
			
		||||
    GLX_MESA_swap_control affects the definition of this extension.
 | 
			
		||||
    GLX_OML_sync_control affects the definition of this extension.
 | 
			
		||||
 | 
			
		||||
    Based on WGL_I3D_swap_frame_usage version 1.3.
 | 
			
		||||
 | 
			
		||||
Overview
 | 
			
		||||
 | 
			
		||||
    This extension allows an application to deterine what portion of the
 | 
			
		||||
    swap period has elapsed since the last swap operation completed.  The
 | 
			
		||||
    "usage" value is a floating point value on the range [0,max] which is
 | 
			
		||||
    calculated as follows:
 | 
			
		||||
 | 
			
		||||
                              td
 | 
			
		||||
                   percent = ----
 | 
			
		||||
                              tf
 | 
			
		||||
 | 
			
		||||
    where td is the time measured from the last completed buffer swap (or
 | 
			
		||||
    call to enable the statistic) to when the next buffer swap completes, tf
 | 
			
		||||
    is the entire time for a frame which may be multiple screen refreshes
 | 
			
		||||
    depending on the swap interval as set by the GLX_SGI_swap_control or
 | 
			
		||||
    GLX_OML_sync_control extensions. 
 | 
			
		||||
 | 
			
		||||
    The value, percent, indicates the amount of time spent between the
 | 
			
		||||
    completion of the two swaps.  If the value is in the range [0,1], the
 | 
			
		||||
    buffer swap occurred within the time period required to maintain a
 | 
			
		||||
    constant frame rate.  If the value is in the range (1,max], a constant
 | 
			
		||||
    frame rate was not achieved.  The value indicates the number of frames
 | 
			
		||||
    required to draw.
 | 
			
		||||
 | 
			
		||||
    This definition of "percent" differs slightly from
 | 
			
		||||
    WGL_I3D_swap_frame_usage.  In WGL_I3D_swap_frame_usage, the measurement
 | 
			
		||||
    is taken from the completion of one swap to the issuance of the next.
 | 
			
		||||
    This representation may not be as useful as measuring between
 | 
			
		||||
    completions, as a significant amount of time may pass between the
 | 
			
		||||
    issuance of a swap and the swap actually occuring.
 | 
			
		||||
 | 
			
		||||
    There is also a mechanism to determine whether a frame swap was
 | 
			
		||||
    missed.
 | 
			
		||||
 | 
			
		||||
New Procedures and Functions
 | 
			
		||||
 | 
			
		||||
    int glXGetFrameUsageMESA(Display *dpy,
 | 
			
		||||
                             GLXDrawable drawable,
 | 
			
		||||
    	                     float *usage)
 | 
			
		||||
 | 
			
		||||
    int glXBeginFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                  GLXDrawable drawable)
 | 
			
		||||
 | 
			
		||||
    int glXEndFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                GLXDrawable drawable)
 | 
			
		||||
 | 
			
		||||
    int glXQueryFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                  GLXDrawable drawable,
 | 
			
		||||
				  int64_t *swapCount,
 | 
			
		||||
                                  int64_t *missedFrames,
 | 
			
		||||
                                  float *lastMissedUsage)
 | 
			
		||||
 | 
			
		||||
New Tokens
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 2 of the 1.4 GL Specification (OpenGL Operation)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 3 of the 1.4 GL Specification (Rasterization)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 4 of the 1.4 GL Specification (Per-Fragment Operations
 | 
			
		||||
and the Framebuffer)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 5 of the 1.4 GL Specification (Special Functions)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 6 of the 1.4 GL Specification (State and State Requests)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to the GLX 1.3 Specification
 | 
			
		||||
 | 
			
		||||
    The frame usage is measured as the percentage of the swap period elapsed
 | 
			
		||||
    between two buffer-swap operations being commited.  In unextened GLX the
 | 
			
		||||
    swap period is the vertical refresh time.  If SGI_swap_control or
 | 
			
		||||
    MESA_swap_control are supported, the swap period is the vertical refresh
 | 
			
		||||
    time multiplied by the swap interval (or one if the swap interval is set
 | 
			
		||||
    to zero).
 | 
			
		||||
    
 | 
			
		||||
    If OML_sync_control is supported, the swap period is the vertical
 | 
			
		||||
    refresh time multiplied by the divisor parameter to
 | 
			
		||||
    glXSwapBuffersMscOML.  The frame usage in this case is less than 1.0 if
 | 
			
		||||
    the swap is commited before target_msc, and is greater than or equal to
 | 
			
		||||
    1.0 otherwise.  The actual usage value is based on the divisor and is
 | 
			
		||||
    never less than 0.0.
 | 
			
		||||
 | 
			
		||||
       int glXBeginFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                     GLXDrawable drawable,
 | 
			
		||||
				     float *usage)
 | 
			
		||||
 | 
			
		||||
    glXGetFrameUsageMESA returns a floating-point value in <usage>
 | 
			
		||||
    that represents the current swap usage, as defined above.
 | 
			
		||||
 | 
			
		||||
    Missed frame swaps can be tracked by calling the following function:
 | 
			
		||||
 | 
			
		||||
       int glXBeginFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                     GLXDrawable drawable)
 | 
			
		||||
 | 
			
		||||
    glXBeginFrameTrackingMESA resets a "missed frame" count and
 | 
			
		||||
    synchronizes with the next frame vertical sync before it returns.
 | 
			
		||||
    If a swap is missed based in the rate control specified by the
 | 
			
		||||
    <interval> set by glXSwapIntervalSGI or the default swap of once
 | 
			
		||||
    per frame, the missed frame count is incremented.
 | 
			
		||||
 | 
			
		||||
    The current missed frame count and total number of swaps since
 | 
			
		||||
    the last call to glXBeginFrameTrackingMESA can be obtained by
 | 
			
		||||
    callling the following function:
 | 
			
		||||
 | 
			
		||||
       int glXQueryFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                     GLXDrawable drawable,
 | 
			
		||||
				     int64_t *swapCount,
 | 
			
		||||
                                     int64_t *missedFrames,
 | 
			
		||||
                                     float *lastMissedUsage)
 | 
			
		||||
 | 
			
		||||
    The location pointed to by <swapCount> will be updated with the
 | 
			
		||||
    number of swaps that have been commited.  This value may not match the
 | 
			
		||||
    number of swaps that have been requested since swaps may be
 | 
			
		||||
    queued by the implementation.  This function can be called at any
 | 
			
		||||
    time and does not synchronize to vertical blank.
 | 
			
		||||
 | 
			
		||||
    The location pointed to by <missedFrames> will contain the number
 | 
			
		||||
    swaps that missed the specified frame.  The frame usage for the
 | 
			
		||||
    last missed frame is returned in the location pointed to by
 | 
			
		||||
    <lastMissedUsage>.
 | 
			
		||||
 | 
			
		||||
    Frame tracking is disabled by calling the function
 | 
			
		||||
 | 
			
		||||
       int glXEndFrameTrackingMESA(Display *dpy,
 | 
			
		||||
                                   GLXDrawable drawable)
 | 
			
		||||
 | 
			
		||||
    This function will not return until all swaps have occurred.  The
 | 
			
		||||
    application can call glXQueryFrameTrackingMESA for a final swap and
 | 
			
		||||
    missed frame count.
 | 
			
		||||
 | 
			
		||||
    If these functions are succesful, zero is returned.  If the context
 | 
			
		||||
    associated with dpy and drawable is not a direct context,
 | 
			
		||||
    GLX_BAD_CONTEXT is returned.
 | 
			
		||||
 | 
			
		||||
Errors
 | 
			
		||||
 | 
			
		||||
    If the function succeeds, zero is returned.  If the function
 | 
			
		||||
    fails, one of the following error codes is returned:
 | 
			
		||||
 | 
			
		||||
       GLX_BAD_CONTEXT         The current rendering context is not a direct
 | 
			
		||||
       			       context.
 | 
			
		||||
 | 
			
		||||
GLX Protocol
 | 
			
		||||
 | 
			
		||||
    None.  This extension only extends to direct rendering contexts.
 | 
			
		||||
 | 
			
		||||
New State
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
New Implementation Dependent State
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Revision History
 | 
			
		||||
 | 
			
		||||
    1.1,  5/1/03   Added contact information.
 | 
			
		||||
    1.0,  3/17/03  Initial version based on WGL_I3D_swap_frame_usage.
 | 
			
		||||
@@ -4,7 +4,7 @@ Name
 | 
			
		||||
 | 
			
		||||
Name Strings
 | 
			
		||||
 | 
			
		||||
     GL_MESA_trace
 | 
			
		||||
     GL_MESA_TRACE
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
    
 | 
			
		||||
@@ -13,11 +13,11 @@ Contact
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    Obsolete.
 | 
			
		||||
    XXX - Not complete yet!!!
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    $Id: MESA_trace.spec,v 1.4 2004/03/25 01:42:42 brianp Exp $
 | 
			
		||||
    $Id: MESA_trace.spec,v 1.2 2001/01/29 16:10:18 brianp Exp $
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@ Name Strings
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Brian Paul, brian.paul 'at' tungstengraphics.com
 | 
			
		||||
    Brian Paul, brianp 'at' mesa3d.org
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
@@ -16,7 +16,7 @@ Status
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    $Id: MESA_window_pos.spec,v 1.4 2004/03/25 01:42:42 brianp Exp $
 | 
			
		||||
    $Id: MESA_window_pos.spec,v 1.3 2000/04/04 23:29:32 brianp Exp $
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,204 +0,0 @@
 | 
			
		||||
Name
 | 
			
		||||
 | 
			
		||||
    MESA_ycbcr_texture
 | 
			
		||||
 | 
			
		||||
Name Strings
 | 
			
		||||
 | 
			
		||||
    GL_MESA_ycbcr_texture
 | 
			
		||||
 | 
			
		||||
Contact
 | 
			
		||||
 | 
			
		||||
    Brian Paul, Tungsten Graphics, Inc. (brian.paul 'at' tungstengraphics.com)
 | 
			
		||||
    Keith Whitwell, Tungsten Graphics, Inc.  (keith 'at' tungstengraphics.com)
 | 
			
		||||
 | 
			
		||||
Status
 | 
			
		||||
 | 
			
		||||
    Shipping (Mesa 4.0.4 and later)
 | 
			
		||||
 | 
			
		||||
Version
 | 
			
		||||
 | 
			
		||||
    1.0
 | 
			
		||||
 | 
			
		||||
Number
 | 
			
		||||
 | 
			
		||||
    TBD
 | 
			
		||||
 | 
			
		||||
Dependencies
 | 
			
		||||
 | 
			
		||||
    OpenGL 1.0 or later is required
 | 
			
		||||
    This extensions is written against the OpenGL 1.4 Specification.
 | 
			
		||||
    NV_texture_rectangle effects the definition of this extension.
 | 
			
		||||
 | 
			
		||||
Overview
 | 
			
		||||
 | 
			
		||||
    This extension supports texture images stored in the YCbCr format.
 | 
			
		||||
    There is no support for converting YCbCr images to RGB or vice versa
 | 
			
		||||
    during pixel transfer.  The texture's YCbCr colors are converted to
 | 
			
		||||
    RGB during texture sampling, after-which, all the usual per-fragment
 | 
			
		||||
    operations take place.  Only 2D texture images are supported (not
 | 
			
		||||
    glDrawPixels, glReadPixels, etc).
 | 
			
		||||
 | 
			
		||||
    A YCbCr pixel (texel) is a 16-bit unsigned short with two components.
 | 
			
		||||
    The first component is luminance (Y).  For pixels in even-numbered
 | 
			
		||||
    image columns, the second component is Cb.  For pixels in odd-numbered
 | 
			
		||||
    image columns, the second component is Cr.  If one were to convert the
 | 
			
		||||
    data to RGB one would need to examine two pixels from columns N and N+1
 | 
			
		||||
    (where N is even) to deduce the RGB color.
 | 
			
		||||
 | 
			
		||||
IP Status
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Issues
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
New Procedures and Functions
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
New Tokens
 | 
			
		||||
 | 
			
		||||
    Accepted by the <internalFormat> and <format> parameters of
 | 
			
		||||
    TexImage2D and TexSubImage2D:
 | 
			
		||||
 | 
			
		||||
        YCBCR_MESA                   0x8757
 | 
			
		||||
 | 
			
		||||
    Accepted by the <type> parameter of TexImage2D and TexSubImage2D:
 | 
			
		||||
 | 
			
		||||
        UNSIGNED_SHORT_8_8_MESA      0x85BA /* same as Apple's */
 | 
			
		||||
        UNSIGNED_SHORT_8_8_REV_MESA  0x85BB /* same as Apple's */
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 2 of the OpenGL 1.4 Specification (OpenGL Operation)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 3 of the OpenGL 1.4 Specification (Rasterization)
 | 
			
		||||
 | 
			
		||||
    In section 3.6.4, Rasterization of Pixel Rectangles, on page 101,
 | 
			
		||||
    add the following to Table 3.8 (Packed pixel formats):
 | 
			
		||||
    
 | 
			
		||||
    type Parameter                GL Data   Number of        Matching
 | 
			
		||||
     Token Name                    Type     Components     Pixel Formats
 | 
			
		||||
    --------------                -------   ----------     -------------
 | 
			
		||||
    UNSIGNED_SHORT_8_8_MESA       ushort         2         YCBCR_MESA
 | 
			
		||||
    UNSIGNED_SHORT_8_8_REV_MESA   ushort         2         YCBCR_MESA
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    In section 3.6.4, Rasterization of Pixel Rectangles, on page 102,
 | 
			
		||||
    add the following to Table 3.10 (UNSIGNED_SHORT formats):
 | 
			
		||||
 | 
			
		||||
    UNSIGNED_SHORT_8_8_MESA:
 | 
			
		||||
 | 
			
		||||
      15  14  13  12  11  10  9   8   7   6   5   4   3   2   1   0
 | 
			
		||||
    +-------------------------------+-------------------------------+
 | 
			
		||||
    |              1st              |              2nd              |
 | 
			
		||||
    +-------------------------------+-------------------------------+
 | 
			
		||||
                        
 | 
			
		||||
    UNSIGNED_SHORT_8_8_REV_MESA:
 | 
			
		||||
 | 
			
		||||
      15  14  13  12  11  10  9   8   7   6   5   4   3   2   1   0
 | 
			
		||||
    +-------------------------------+-------------------------------+
 | 
			
		||||
    |              2nd              |              1st              |
 | 
			
		||||
    +-------------------------------+-------------------------------+
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    In section 3.6.4, Rasterization of Pixel Rectangles, on page 104,
 | 
			
		||||
    add the following to Table 3.12 (Packed pixel fiedl assignments):
 | 
			
		||||
 | 
			
		||||
                       First       Second     Third      Fourth
 | 
			
		||||
    Format             Element     Element    Element    Element
 | 
			
		||||
    ------             -------     -------    -------    -------
 | 
			
		||||
    YCBCR_MESA         luminance   chroma
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    In section 3.8.1, Texture Image Specification, on page 125, add
 | 
			
		||||
    another item to the list of TexImage2D and TexImage3D equivalence
 | 
			
		||||
    exceptions:
 | 
			
		||||
 | 
			
		||||
    * The value of internalformat and format may be YCBCR_MESA to
 | 
			
		||||
      indicate that the image data is in YCbCr format.  type must
 | 
			
		||||
      be either UNSIGNED_SHORT_8_8_MESA or UNSIGNED_SHORT_8_8_REV_MESA
 | 
			
		||||
      as seen in tables 3.8 and 3.10.  Table 3.12 describes the mapping
 | 
			
		||||
      between Y and Cb/Cr to the components.
 | 
			
		||||
      If NV_texture_rectangle is supported target may also be
 | 
			
		||||
      TEXTURE_RECTANGLE_NV or PROXY_TEXTURE_RECTANGLE_NV.
 | 
			
		||||
      All pixel transfer operations are bypassed.  The texture is stored as
 | 
			
		||||
      YCbCr, not RGB.  Queries of the texture's red, green and blue component
 | 
			
		||||
      sizes will return zero.  The YCbCr colors are converted to RGB during
 | 
			
		||||
      texture sampling using an implementation dependent conversion.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    In section 3.8.1, Texture Image Specification, on page 126, add
 | 
			
		||||
    another item to the list of TexImage1D and TexImage2D equivalence
 | 
			
		||||
    exceptions:
 | 
			
		||||
 | 
			
		||||
    * The value of internalformat and format can not be YCBCR_MESA.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    In section 3.8.2, Alternate Texture Image Specification Commands, on
 | 
			
		||||
    page 129, insert this paragraph after the first full paragraph on the
 | 
			
		||||
    page:
 | 
			
		||||
 | 
			
		||||
         "If the internal storage format of the image being updated by
 | 
			
		||||
    TexSubImage2D is YCBCR_MESA then format must be YCBCR_MESA.
 | 
			
		||||
    The error INVALID_OPERATION will be generated otherwise."
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 4 of the OpenGL 1.4 Specification (Per-Fragment
 | 
			
		||||
Operations and the Frame Buffer)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 5 of the OpenGL 1.4 Specification (Special Functions)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Chapter 6 of the OpenGL 1.4 Specification (State and
 | 
			
		||||
State Requests)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to Appendix A of the OpenGL 1.4 Specification (Invariance)
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Additions to the AGL/GLX/WGL Specifications
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
GLX Protocol
 | 
			
		||||
 | 
			
		||||
    None
 | 
			
		||||
 | 
			
		||||
Errors
 | 
			
		||||
 | 
			
		||||
    INVALID_ENUM is generated by TexImage2D if <internalFormat> is
 | 
			
		||||
    MESA_YCBCR but <format> is not MESA_YCBCR.
 | 
			
		||||
 | 
			
		||||
    INVALID_ENUM is generated by TexImage2D if <format> is MESA_YCBCR but
 | 
			
		||||
    <internalFormat> is not MESA_YCBCR.
 | 
			
		||||
 | 
			
		||||
    INVALID_VALUE is generated by TexImage2D if <format> is MESA_YCBCR and
 | 
			
		||||
    <internalFormat> is MESA_YCBCR and <border> is not zero.
 | 
			
		||||
 | 
			
		||||
    INVALID_OPERATION is generated by TexSubImage2D if the internal image
 | 
			
		||||
    format is YCBCR_MESA and <format> is not YCBCR_MESA.
 | 
			
		||||
 | 
			
		||||
    INVALID_OPERATION is generated by CopyTexSubImage2D if the internal
 | 
			
		||||
    image is YCBCR_MESA.
 | 
			
		||||
    
 | 
			
		||||
New State
 | 
			
		||||
 | 
			
		||||
    Edit table 6.16 on page 231: change the type of TEXTURE_INTERNAL_FORMAT
 | 
			
		||||
    from n x Z42 to n x Z43 to indicate that internal format may also be
 | 
			
		||||
    YCBCR_MESA.
 | 
			
		||||
 | 
			
		||||
Revision History
 | 
			
		||||
 | 
			
		||||
    20 September 2002 - Initial draft
 | 
			
		||||
    29 April 2003 - minor updates
 | 
			
		||||
     3 September 2003 - further clarify when YCbCr->RGB conversion takes place
 | 
			
		||||
    19 September 2003 - a few more updates prior to submitting to extension
 | 
			
		||||
                        registry.
 | 
			
		||||
     3 April 2004 - fix assorted inaccuracies
 | 
			
		||||
@@ -1,547 +0,0 @@
 | 
			
		||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 | 
			
		||||
<html>
 | 
			
		||||
<head>
 | 
			
		||||
  <title>Mini GLX Specification</title>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
<h1>
 | 
			
		||||
<center>Mini GLX Specification</center>
 | 
			
		||||
</h1>
 | 
			
		||||
<h2>
 | 
			
		||||
<center>Tungsten Graphics, Inc.<br>
 | 
			
		||||
<br>
 | 
			
		||||
January 20, 2003<br>
 | 
			
		||||
<br>
 | 
			
		||||
</center>
 | 
			
		||||
</h2>
 | 
			
		||||
<p> Copyright © 2002-2003 by Tungsten Graphics, Inc., Cedar Park,
 | 
			
		||||
Texas. All Rights Reserved. <br>
 | 
			
		||||
<br>
 | 
			
		||||
Permission is granted to make and distribute verbatim copies of this
 | 
			
		||||
document provided the copyright notice and this permission notice are
 | 
			
		||||
preserved on all copies.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h1>1. Introduction</h1>
 | 
			
		||||
<p>The Mini GLX interface facilitates OpenGL rendering on embedded
 | 
			
		||||
devices. The interface is a subset of the GLX interface, plus a minimal
 | 
			
		||||
set of Xlib-like functions.</p>
 | 
			
		||||
<p>Programs written to the Mini GLX specification should run unchanged
 | 
			
		||||
on systems with the X Window System and the GLX extension. The intention
 | 
			
		||||
is to allow flexibility for prototyping and testing.</p>
 | 
			
		||||
<p>This document serves as both the reference guide and programming
 | 
			
		||||
guide for Mini GLX.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h1>2. Mini GLX Concepts</h1>
 | 
			
		||||
<p>The OpenGL specification does not describe how OpenGL rendering
 | 
			
		||||
contexts and drawing surfaces (i.e. the frame buffer) are created and
 | 
			
		||||
managed. Rather, this is handled by an OpenGL window system interface,
 | 
			
		||||
such as Mini GLX.</p>
 | 
			
		||||
<p>There are three main datatypes or resources managed by Mini GLX. The
 | 
			
		||||
resources and their corresponding GLX or Xlib data types are:</p>
 | 
			
		||||
<table cellspacing="10" align="center">
 | 
			
		||||
  <tbody>
 | 
			
		||||
    <tr>
 | 
			
		||||
      <td><u>Resource</u></td>
 | 
			
		||||
      <td><u>Data type</u></td>
 | 
			
		||||
    </tr>
 | 
			
		||||
    <tr>
 | 
			
		||||
      <td>pixel formats</td>
 | 
			
		||||
      <td>X Visual and XVisualInfo</td>
 | 
			
		||||
    </tr>
 | 
			
		||||
    <tr>
 | 
			
		||||
      <td>drawing surfaces</td>
 | 
			
		||||
      <td>X Window or GLXDrawable</td>
 | 
			
		||||
    </tr>
 | 
			
		||||
    <tr>
 | 
			
		||||
      <td>rendering contexts</td>
 | 
			
		||||
      <td>GLXContext</td>
 | 
			
		||||
    </tr>
 | 
			
		||||
  </tbody>
 | 
			
		||||
</table>
 | 
			
		||||
<p>Pixel formats or X Visuals describe the per-pixel attributes of the
 | 
			
		||||
frame buffer.  For example, bits per color component, Z buffer size,
 | 
			
		||||
stencil size, TrueColor vs PseudoColor, etc.</p>
 | 
			
		||||
<p>Drawing surfaces or X Windows typically describe a spatial
 | 
			
		||||
allocation of the frame buffer (i.e. the position and size of a
 | 
			
		||||
rectangular region of pixels).  Since MiniGLX doesn't really support a
 | 
			
		||||
window system, the window is effectively the entire frame buffer.</p>
 | 
			
		||||
<p>A rendering context represents the current OpenGL state such as
 | 
			
		||||
current drawing color, line width, blending mode, texture parameters,
 | 
			
		||||
etc. Several rendering contexts can be created but only one can be in
 | 
			
		||||
use at any given time.</p>
 | 
			
		||||
<p>The Mini GLX interface provides all the functions needed for
 | 
			
		||||
choosing pixel formats, create drawing surfaces, creating rendering
 | 
			
		||||
contexts and binding rendering contexts to drawing surfaces.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h1>3. Using Mini GLX</h1>
 | 
			
		||||
<p>To use the Mini GLX interface in your application, include the
 | 
			
		||||
GL/miniglx.h header file at compile time:</p>
 | 
			
		||||
<blockquote><code>	#include <GL/miniglx.h><br>
 | 
			
		||||
  </code></blockquote>
 | 
			
		||||
<code></code>Applications should link with libGL.so (i.e. <code>gcc
 | 
			
		||||
myprogram.o -lGL -o myprogram</code>).  libGL.so implements the
 | 
			
		||||
MiniGLX API functions and, in turn, loads a hardware-specific device
 | 
			
		||||
driver (such as <code>radeon_dri.so</code>) at runtime.  The
 | 
			
		||||
environment variable <code>LIBGL_DRIVERS_PATH</code> should name the
 | 
			
		||||
directory where these modules are located.<br>
 | 
			
		||||
<br>
 | 
			
		||||
Prior to running a MiniGXL application, the following kernel modules
 | 
			
		||||
must be installed:<br>
 | 
			
		||||
<br>
 | 
			
		||||
<div style="margin-left: 40px;"> agpgart.o<br>
 | 
			
		||||
radeonfb.o  (assuming Radeon hardware)<br>
 | 
			
		||||
radeon.o  (assuming Radeon hardware)<br>
 | 
			
		||||
</div>
 | 
			
		||||
<code></code> <br>
 | 
			
		||||
Finally, MiniGLX reads a configuration file (by default,<code>
 | 
			
		||||
/etc/miniglx.conf</code>) to determine basic configuration information.
 | 
			
		||||
 The configuration file may also be located in the directory
 | 
			
		||||
specified by the <code>MINIGLX_CONF</code> environment variable).<br>
 | 
			
		||||
<br>
 | 
			
		||||
The remainder of this section describes the MiniGLX API functions.<br>
 | 
			
		||||
<br>
 | 
			
		||||
<h2>3.1 Initialization</h2>
 | 
			
		||||
<p>The XOpenDisplay function is used to initialize the graphics system:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>Display *XOpenDisplay(const char *displayname)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The <code>displayName</code> parameter is currently ignored in Mini
 | 
			
		||||
GLX. It is recommended that <code>NULL</code> be passed as the<code>displayName</code>
 | 
			
		||||
parameter.</p>
 | 
			
		||||
<p>If XOpenDisplay is able to initialize the graphics system a pointer
 | 
			
		||||
to a Display will be returned.  Otherwise, NULL will be returned.</p>
 | 
			
		||||
<h2>3.2 Choosing a Visual</h2>
 | 
			
		||||
<p>A visual (i.e. pixel format) must be chosen before a drawing surface
 | 
			
		||||
or rendering context can be created.  This is done with the
 | 
			
		||||
glXChooseVisual function:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>XVisualInfo *glXChooseVisual(Display *dpy, int screen, const int *attribList)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p><code>dpy</code> is a pointer to the display returned by
 | 
			
		||||
XOpenDisplay. </p>
 | 
			
		||||
<p><code>screen</code> is currently ignored by Mini GLX and should be
 | 
			
		||||
zero. </p>
 | 
			
		||||
<p><code>attribList</code> is a list of GLX attributes which describe
 | 
			
		||||
the desired pixel format.  It is terminated by the token <code>None</code>.
 | 
			
		||||
The attributes are as follows:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>GLX_USE_GL</code></dt>
 | 
			
		||||
    <dd>This attribute should always be present in order to maintain
 | 
			
		||||
compatibility with GLX.</dd>
 | 
			
		||||
    <dt><code>GLX_RGBA</code></dt>
 | 
			
		||||
    <dd>If present, only RGBA pixel formats will be considered.
 | 
			
		||||
Otherwise, only color index formats are considered.</dd>
 | 
			
		||||
    <dt><code>GLX_DOUBLEBUFFER</code></dt>
 | 
			
		||||
    <dd>if present, only double-buffered pixel formats will	be chosen.</dd>
 | 
			
		||||
    <dt><code>GLX_RED_SIZE n</code></dt>
 | 
			
		||||
    <dd>Must be followed by a non-negative integer indicating the
 | 
			
		||||
minimum number of bits per red pixel component that is acceptable.</dd>
 | 
			
		||||
    <dt><code>GLX_GREEN_SIZE n</code></dt>
 | 
			
		||||
    <dd>Must be followed by a non-negative integer indicating the
 | 
			
		||||
minimum number of bits per green pixel component that is acceptable.</dd>
 | 
			
		||||
    <dt><code>GLX_BLUE_SIZE n</code></dt>
 | 
			
		||||
    <dd>Must be followed by a non-negative integer indicating the
 | 
			
		||||
minimum number of bits per blue pixel component that is acceptable.</dd>
 | 
			
		||||
    <dt><code>GLX_ALPHA_SIZE n</code></dt>
 | 
			
		||||
    <dd>Must be followed by a non-negative integer indicating the
 | 
			
		||||
minimum number of bits per alpha pixel component that is acceptable.</dd>
 | 
			
		||||
    <dt><code>GLX_STENCIL_SIZE n</code></dt>
 | 
			
		||||
    <dd>Must be followed by a non-negative integer indicating the
 | 
			
		||||
minimum number of bits per stencil value that is acceptable.</dd>
 | 
			
		||||
    <dt><code>None</code></dt>
 | 
			
		||||
    <dd>This token is used to terminate the attribute list.</dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>glXChooseVisual will return a pointer to an XVisualInfo object which
 | 
			
		||||
most closely matches the requirements of the attribute list.  If there
 | 
			
		||||
is no visual which matches the request, NULL will be returned.</p>
 | 
			
		||||
<p>Note that visuals with accumulation buffers and depth buffers are
 | 
			
		||||
not available.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h2>3.3 Creating a Drawing Surface</h2>
 | 
			
		||||
<p>Drawing surfaces are created as X windows.  For Mini GLX,
 | 
			
		||||
windows are <i>full-screen</i>; they cover the entire frame buffer.
 | 
			
		||||
 Also, Mini GLX imposes a limit of one window.  A second window
 | 
			
		||||
cannot be created until the first one is destroyed.</p>
 | 
			
		||||
<h3>3.3.1 Window Creation</h3>
 | 
			
		||||
<p>The XCreateWindow function is used to create a drawing surface:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>Window XCreateWindow( Display *display,<br>                      Window parent,<br>                      int x, int y,<br>                      unsigned int width, unsigned int height,<br>                      unsigned int borderWidth,<br>                      int depth,<br>                      unsigned int class,<br>                      Visual *visual,<br>                      unsigned long valuemask,<br>                      XSetWindowAttributes *attributes )<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The parameters are as follows:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>display</code></dt>
 | 
			
		||||
    <dd>A Display pointer, as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>parent</code></dt>
 | 
			
		||||
    <dd>The parent window for the new window.  For Mini GLX, this
 | 
			
		||||
should be<code>RootWindow(dpy, 0)</code>.</dd>
 | 
			
		||||
    <dt><code>x, y</code></dt>
 | 
			
		||||
    <dd>The position of the window.  For Mini GLX, both values should
 | 
			
		||||
be zero.</dd>
 | 
			
		||||
    <dt><code>width, height</code></dt>
 | 
			
		||||
    <dd>The size of the window.  For Mini GLX, this specifies the
 | 
			
		||||
desired screen size such as 1024, 768 or 1280, 1024.</dd>
 | 
			
		||||
    <dt><code>borderWidth</code></dt>
 | 
			
		||||
    <dd>This parameter should be zero.</dd>
 | 
			
		||||
    <dt><code>depth</code></dt>
 | 
			
		||||
    <dd>The pixel depth for the window.  For Mini GLX this should be
 | 
			
		||||
the depth found in the XVisualInfo object returned by <code>glxChooseVisual</code>.</dd>
 | 
			
		||||
    <dt><code>class</code></dt>
 | 
			
		||||
    <dd>The window class.  For Mini GLX this value should be <code>InputOutput</code>.</dd>
 | 
			
		||||
    <dt><code>visual</code></dt>
 | 
			
		||||
    <dd>This parameter should be the <code>visual</code> field of the <code>XVisualInfo</code>
 | 
			
		||||
object returned by <code>glxChooseVisual</code>.</dd>
 | 
			
		||||
    <dt><code>valuemask</code></dt>
 | 
			
		||||
    <dd>This parameter indicates which fields of the <code>XSetWindowAttributes</code>
 | 
			
		||||
are to be used. For Mini GLX this is typically the bitmask<code>CWBackPixel
 | 
			
		||||
| CWBorderPixel | CWColormap</code>.</dd>
 | 
			
		||||
    <dt><code>attributes</code></dt>
 | 
			
		||||
    <dd>Initial window attributes. Of the fields in the <code>XSetWindowAttributes</code>
 | 
			
		||||
structure, the<code>background_pixel</code>, <code>border_pixel</code>
 | 
			
		||||
and <code>colormap</code> fields should be set.  See the discussion
 | 
			
		||||
below regarding colormaps.</dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p><code>XCreateWindow</code> will return a window handle if it succeeds
 | 
			
		||||
or zero if it fails.</p>
 | 
			
		||||
<h3>3.3.2 Window Mapping</h3>
 | 
			
		||||
<p>To display the window the XMapWindow function must be called:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void XMapWindow(Display *dpy, Window w)</pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>This function does nothing in Mini GLX but is required for Xlib/GLX
 | 
			
		||||
compatibility</p>
 | 
			
		||||
<h3>3.3.3 Colormaps<br>
 | 
			
		||||
</h3>
 | 
			
		||||
<p>Xlib requires specification of a colormap when creating a window.
 | 
			
		||||
 For purposes of interoperability, Mini GLX requires this as well,
 | 
			
		||||
though the colormap is not actually used.  The XCreateColormap
 | 
			
		||||
function is used to create a colormap:</p>
 | 
			
		||||
<blockquote><code>Colormap XCreateColormap(Display *dpy, Window window,
 | 
			
		||||
Visual *visual, int alloc)</code><br>
 | 
			
		||||
  <code></code></blockquote>
 | 
			
		||||
<p>The parameters are as follows:<br>
 | 
			
		||||
</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>dpy</code></dt>
 | 
			
		||||
    <dd>The display handle as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>window</code></dt>
 | 
			
		||||
    <dd> This parameter is ignored by Mini GLX but should be the value
 | 
			
		||||
returned by the <code>RootWindow(dpy, 0)</code> macro.<br>
 | 
			
		||||
    </dd>
 | 
			
		||||
    <dt><code>visual</code></dt>
 | 
			
		||||
    <dd>This parameter is ignored by Mini GLX but should be the visual
 | 
			
		||||
field of the XVisualInfo object returned by glXChooseVisual. </dd>
 | 
			
		||||
    <dt><code>alloc</code></dt>
 | 
			
		||||
    <dd>This parameter is ignored by Mini GLX but should be set to <code>AllocNone</code>.</dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<br>
 | 
			
		||||
<h2>3.4 Creating a Rendering Context</h2>
 | 
			
		||||
<p>An OpenGL rendering context is created with the <code>glXCreateContext</code>
 | 
			
		||||
function:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>GLXContext glXCreateContext(Display *dpy, XVisualInfo *visInfo, GLXContext shareList, Bool direct)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The parameters are as follows:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>dpy</code></dt>
 | 
			
		||||
    <dd>The display handle as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>visInfo</code></dt>
 | 
			
		||||
    <dd>The visual as returned by glXChooseVisual.</dd>
 | 
			
		||||
    <dt><code>shareList</code></dt>
 | 
			
		||||
    <dd>If non-zero, texture objects and display lists are shared with
 | 
			
		||||
the named rendering context. If zero, texture objects and display lists
 | 
			
		||||
will (initially) be private to this context. They may be shared when a
 | 
			
		||||
subsequent context is created.</dd>
 | 
			
		||||
    <dt><code>direct</code></dt>
 | 
			
		||||
    <dd>Specifies whether direct or indirect rendering is desired. For
 | 
			
		||||
Mini GLX this value is ignored but it should be set to <code>True</code>.</dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p><code>glXCreateContext</code> will return a GLXContext handle if it
 | 
			
		||||
succeeds or zero if it fails due to invalid parameter or insufficient
 | 
			
		||||
resources.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h2>3.5 Binding a Rendering Context</h2>
 | 
			
		||||
<p>The final step before beginning OpenGL rendering is to bind (i.e.
 | 
			
		||||
activate) a rendering context and drawing surface with the
 | 
			
		||||
glXMakeCurrent function:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>Bool glXMakeCurrent(Display *dpy, GLXDrawable drawable, GLXContext ctx)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The parameters are as follows:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>dpy</code></dt>
 | 
			
		||||
    <dd>The display handle, as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>drawable</code></dt>
 | 
			
		||||
    <dd>The window or drawable to bind to the rendering context. This
 | 
			
		||||
should be the value returned by XCreateWindow.</dd>
 | 
			
		||||
    <dt><code>ctx</code></dt>
 | 
			
		||||
    <dd>The rendering context to bind, as returned by glXCreateContext.</dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>If glXMakeCurrent succeeds True is returned.  Otherwise False is
 | 
			
		||||
returned to indicate an invalid display, window or context parameter.</p>
 | 
			
		||||
<p>After the rendering context has been bound to the drawing surface
 | 
			
		||||
OpenGL rendering can begin.</p>
 | 
			
		||||
<p>The current rendering context may be unbound by calling
 | 
			
		||||
glXMakeCurrent with the window and context parameters set to zero.</p>
 | 
			
		||||
<p>An application may create any number of rendering contexts and bind
 | 
			
		||||
them as needed. Note that binding a rendering context is generally not a
 | 
			
		||||
light-weight operation.  Most simple OpenGL applications create
 | 
			
		||||
only one rendering context.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h2>3.6 Color Buffer Swapping</h2>
 | 
			
		||||
<p>A double buffered window has two color buffers: a front buffer and a
 | 
			
		||||
back buffer.  Normally, rendering is directed to the back buffer while
 | 
			
		||||
the front buffer is displayed.  When rendering of a frame is finished
 | 
			
		||||
the front and back buffers are swapped to provide the illusion of
 | 
			
		||||
instanteous screen updates.</p>
 | 
			
		||||
<p>The color buffers for a particular window (i.e. drawable) may be
 | 
			
		||||
swapped with the glXSwapBuffers command:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void glXSwapBuffers(Display *dpy, GLXDrawable drawable)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
Any pending rendering commands will be completed before the buffer swap
 | 
			
		||||
takes place.<br>
 | 
			
		||||
<br>
 | 
			
		||||
Calling glXSwapBuffers on a window which is single-buffered has no
 | 
			
		||||
effect.<br>
 | 
			
		||||
<br>
 | 
			
		||||
<h2>3.7 Releasing Resources</h2>
 | 
			
		||||
<h3>3.7.1 Releasing Rendering Contexts</h3>
 | 
			
		||||
<p>A rendering context may be destroyed by calling glXDestroyContext:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void glXDestroyContext(Display *dpy, GLXContext ctx)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<h3>3.7.2 Releasing Windows</h3>
 | 
			
		||||
<p>A window may be destroyed by calling XDestroyWindow:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void XDestroyWindow(Display *dpy, Window window)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<h3>3.7.3 Releasing Visuals</h3>
 | 
			
		||||
<p>An XVisualInfo object may be freed by calling XFree:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void XFree(void *data)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<h3>3.7.4 Releasing Colormaps</h3>
 | 
			
		||||
<p>A colormap may be freed by calling XFreeColormap:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void XFreeColormap(Display *dpy, Colormap colormap)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<h3>3.7.4 Releasing Display Resources</h3>
 | 
			
		||||
<p>When the application is about to exit, the resources associated with
 | 
			
		||||
the graphics system can be released by calling XCloseDisplay:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void XCloseDisplay(Display *dpy)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The display handle becomes invalid at this point.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h2>3.8 Query Functions</h2>
 | 
			
		||||
<h3>3.8.1 Querying Available Visuals</h3>
 | 
			
		||||
A list of all available visuals can be obtained with the XGetVisualInfo
 | 
			
		||||
function:<br>
 | 
			
		||||
<br>
 | 
			
		||||
<div style="margin-left: 40px;"><code>XVisualInfo
 | 
			
		||||
*XGetVisualInfo(Display *dpy, long vinfo_mask, XVisualInfo
 | 
			
		||||
*vinfo_template, int *nitems_return)<br>
 | 
			
		||||
</code></div>
 | 
			
		||||
<br>
 | 
			
		||||
The parameters are as follows:<br>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>dpy</code></dt>
 | 
			
		||||
    <dd>The display handle, as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>vinfo_mask</code></dt>
 | 
			
		||||
    <dd>A bitmask indicating which fields of the vinfo_template are to
 | 
			
		||||
be matched.  The value must be VisualScreenMask.</dd>
 | 
			
		||||
    <dt><code>vinfo_template</code></dt>
 | 
			
		||||
    <dd>A template whose fields indicate which visual attributes must
 | 
			
		||||
be matched by the results.  The screen field of this structure must
 | 
			
		||||
be zero.</dd>
 | 
			
		||||
    <dt><code>nitems_return</code></dt>
 | 
			
		||||
    <dd>Returns the number of visuals returned. </dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
The return value is the address of an array of all available visuals.<br>
 | 
			
		||||
<br>
 | 
			
		||||
An example of using XGetVisualInfo to get all available visuals follows:<br>
 | 
			
		||||
<br>
 | 
			
		||||
<div style="margin-left: 40px;"><code>XVisualInfo visTemplate, *results;</code><br>
 | 
			
		||||
<code>int numVisuals;</code><br>
 | 
			
		||||
<code>Display *dpy = XOpenDisplay(NULL);</code><br>
 | 
			
		||||
<code>visTemplate.screen = 0;</code><br>
 | 
			
		||||
<code>results = XGetVisualInfo(dpy, VisualScreenMask, &visTemplate,
 | 
			
		||||
&numVisuals);</code><br>
 | 
			
		||||
<code></code></div>
 | 
			
		||||
<br>
 | 
			
		||||
<h3>3.8.2 Querying Visual Attributes</h3>
 | 
			
		||||
<p>The GLX attributes of an X visual may be queried with the
 | 
			
		||||
glXGetConfig function:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>int glXGetConfig(Display *dpy, XVisualInfo *vis, int attribute, int *value)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The parameters are as follows:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>dpy</code></dt>
 | 
			
		||||
    <dd>The display handle, as returned by XOpenDisplay.</dd>
 | 
			
		||||
    <dt><code>vis</code></dt>
 | 
			
		||||
    <dd>The visual, as returned by glXChooseVisual.</dd>
 | 
			
		||||
    <dt><code>attribute</code></dt>
 | 
			
		||||
    <dd>The attribute to query.  The attributes are listed below.</dd>
 | 
			
		||||
    <dt><code>value</code></dt>
 | 
			
		||||
    <dd>Pointer to an integer in which the result of the query will be
 | 
			
		||||
stored. </dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>The return value will be zero if no error occurs.<code>
 | 
			
		||||
 GLX_INVALID_ATTRIBUTE</code> will be returned if the attribute
 | 
			
		||||
parameter is invalid.<code>  GLX_BAD_VISUAL</code> will be returned
 | 
			
		||||
if the XVisualInfo parameter is invalid.</p>
 | 
			
		||||
<p>The following attributes may be queried:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <dl>
 | 
			
		||||
    <dt><code>GLX_USE_GL</code></dt>
 | 
			
		||||
    <dd>The result will be <code>True</code> or <code>False</code> to
 | 
			
		||||
indicate if OpenGL rendering is supported with the visual.  Mini GLX
 | 
			
		||||
always return <code>True</code>.</dd>
 | 
			
		||||
    <dt><code>GLX_RGBA</code></dt>
 | 
			
		||||
    <dd>The result will be <code>True</code> for RGBA visuals or <code>False</code>
 | 
			
		||||
for color index visuals.</dd>
 | 
			
		||||
    <dt><code>GLX_DOUBLEBUFFER</code></dt>
 | 
			
		||||
    <dd>The result will be <code>True</code> if the visual has two
 | 
			
		||||
color buffers or <code>False</code> if the visual has one color buffer.</dd>
 | 
			
		||||
    <dt><code>GLX_RED_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of red bits per pixel.</dd>
 | 
			
		||||
    <dt><code>GLX_GREEN_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of green bits per pixel.</dd>
 | 
			
		||||
    <dt><code>GLX_BLUE_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of blue bits per pixel.</dd>
 | 
			
		||||
    <dt><code>GLX_ALPHA_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of alpha bits per pixel.</dd>
 | 
			
		||||
    <dt><code>GLX_DEPTH_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of bits per Z value.</dd>
 | 
			
		||||
    <dt><code>GLX_STENCIL_SIZE</code></dt>
 | 
			
		||||
    <dd>The result will be the number of bits per stencil value.<br>
 | 
			
		||||
      <br>
 | 
			
		||||
    </dd>
 | 
			
		||||
  </dl>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<h3>3.8.3 Querying the Current Rendering Context</h3>
 | 
			
		||||
<p>The current rendering context can be queried with
 | 
			
		||||
glXGetCurrentContext: </p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>GLXContext glXGetCurrentContext(void)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>Zero will be returned if no context is currently bound.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h3>3.8.4 Querying the Current Drawable</h3>
 | 
			
		||||
<p>The current drawable (i.e. window or drawing surface) can be queried
 | 
			
		||||
with glXGetCurrentDrawable:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>GLXDrawable glXGetCurrentDrawable(void)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>Zero will be returned if no drawable is currently bound.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h3>3.8.5 Function Address Queries</h3>
 | 
			
		||||
<p>The glXGetProcAddress function will return the address of any
 | 
			
		||||
available OpenGL or Mini GLX function:</p>
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>void *glXGetProcAddress(const GLubyte *procName)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p>If <code>procName</code> is a valid function name, a pointer to that
 | 
			
		||||
function will be returned.  Otherwise, NULL will be returned.</p>
 | 
			
		||||
<p>The purpose of glXGetProcAddress is to facilitate using future
 | 
			
		||||
extensions to OpenGL or Mini GLX.  If a future version of the library
 | 
			
		||||
adds new extension functions they'll be accessible via
 | 
			
		||||
glXGetProcAddress. The alternative is to hard-code calls to the new
 | 
			
		||||
functions in the application but doing so will prevent linking the
 | 
			
		||||
application with older versions of the library.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h2>3.9 Versioning</h2>
 | 
			
		||||
The Mini GLX version can be queried at run time with glXQueryVersion:
 | 
			
		||||
<blockquote>
 | 
			
		||||
  <pre>Bool glXQueryVersion(Display *dpy, int *major, int *minor)<br></pre>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<p><code>major</code> will be set to the major version number and<code>minor</code>
 | 
			
		||||
will be set to the minor version number.<code>True</code> will be
 | 
			
		||||
returned if the function succeeds. <code>False</code> will be returned
 | 
			
		||||
if the function fails due to invalid parameters. The <code>dpy</code>
 | 
			
		||||
argument is currently ignored, but should be the value returned by
 | 
			
		||||
XOpenDisplay.</p>
 | 
			
		||||
<p>At compile time, the Mini GLX interface version can be tested with
 | 
			
		||||
the MINI_GLX_VERSION_1_<i>x</i> preprocessor tokens. For example, if
 | 
			
		||||
version 1.0 of Mini GLX is supported, then<code> MINI_GLX_VERSION_1_0</code>
 | 
			
		||||
will be defined. If version 1.1 of Mini GLX is supported, then<code>
 | 
			
		||||
MINI_GLX_VERSION_1_1</code> will be defined.</p>
 | 
			
		||||
<p>At the time of writing the current Mini GLX version is 1.0.<br>
 | 
			
		||||
<br>
 | 
			
		||||
</p>
 | 
			
		||||
<h1>4.0 Interoperability with GLX and Xlib</h1>
 | 
			
		||||
While Mini GLX strives to be compatible with GLX and Xlib there are
 | 
			
		||||
some unavoidable differences which must be taken into consideration.<br>
 | 
			
		||||
<h2>4.1 Public vs Private Structures</h2>
 | 
			
		||||
The structure of many X data types is public.  For example, the <code>Display</code>
 | 
			
		||||
data type is defined as a structure in /usr/include/X11/Xlib.h and
 | 
			
		||||
programmers may access any fields of that structure at will.  Mini
 | 
			
		||||
GLX also defines a Display data type but its fields are hidden and not
 | 
			
		||||
visiblein <code>miniglx.h</code>.  Duplicating the Xlib
 | 
			
		||||
declaration for the <code>Display</code> data type in minigl.h would
 | 
			
		||||
require defining a large number of other superfluous Xlib datatypes.<br>
 | 
			
		||||
<br>
 | 
			
		||||
Mini GLX users are discouraged from directly accessing the fields of
 | 
			
		||||
Xlib data types to maximize portability - though this is unavoidable to
 | 
			
		||||
some extent.  For example, the <code>XVisualInfo</code> and <code>XSetWindowAtttributes</code>
 | 
			
		||||
data types must be completely public.
 | 
			
		||||
<h2>4.2 Macros</h2>
 | 
			
		||||
In some cases, Xlib defines macros which are meant to be used instead
 | 
			
		||||
of direct structure accesses.  For example, the <code>RootWindow(dpy,
 | 
			
		||||
screen)</code> macro returns the root window for a given screen on a
 | 
			
		||||
given display.  Unfortunately, macros do nothing to aid in ABI
 | 
			
		||||
compatibility since they are resolved at compile time instead of at
 | 
			
		||||
link/run time.<br>
 | 
			
		||||
<br>
 | 
			
		||||
Mini GLX also defines a <code>RootWindow</code> macro since it's
 | 
			
		||||
essential for creating windows.  But the implementation of this
 | 
			
		||||
macro by Xlib and Mini GLX is completely different.<br>
 | 
			
		||||
<h2>4.3 Summary</h2>
 | 
			
		||||
Because Xlib and Mini GLX define data types and macros differently,
 | 
			
		||||
Mini GLX applications must be recompiled when retargeting Mini GLX or
 | 
			
		||||
native Xlib/GLX.  That is, applications can't simply be re-linked
 | 
			
		||||
because of ABI incompatibilities.<br>
 | 
			
		||||
<br>
 | 
			
		||||
Nevertheless, the fact that Mini GLX programs can be recompiled for
 | 
			
		||||
Xlib and GLX increases portability and flexibility for testing and
 | 
			
		||||
prototyping.<br>
 | 
			
		||||
<br>
 | 
			
		||||
<h1>5.0 Example Program</h1>
 | 
			
		||||
<p>This section shows an example program which uses the Mini GLX
 | 
			
		||||
interface. The program simply draws several frames of a rotating square.<br>
 | 
			
		||||
</p>
 | 
			
		||||
<p>The program may be compiled for use with Xlib/GLX or Mini GLX by
 | 
			
		||||
setting the <code>USE_MINIGLX</code> token to 0 or 1, respectively.
 | 
			
		||||
 Note that the only difference is the header files which are
 | 
			
		||||
included.<br>
 | 
			
		||||
</p>
 | 
			
		||||
<p> </p>
 | 
			
		||||
<pre><code><br></code>#define USE_MINIGLX 1  /* 1 = use Mini GLX, 0 = use Xlib/GLX */<br><br>#include <stdio.h><br>#include <stdlib.h><br>#include <GL/gl.h><br><br>#if USE_MINIGLX<br>#include <GL/miniglx.h><br>#else<br>#include <GL/glx.h><br>#include <X11/Xlib.h><br>#endif<br><br><code>/*<br> * Create a simple double-buffered RGBA window.<br> */<br>static Window<br>MakeWindow(Display * dpy, unsigned int width, unsigned int height)<br>{<br>   int visAttributes[] = {<br>      GLX_RGBA,<br>      GLX_RED_SIZE, 1,<br>      GLX_GREEN_SIZE, 1,<br>      GLX_BLUE_SIZE, 1,<br>      GLX_DOUBLEBUFFER,<br>      None<br>   };<br>   XSetWindowAttributes attr;<br>   unsigned long attrMask;<br>   Window root;<br>   Window win;<br>   GLXContext ctx;<br>   XVisualInfo *visinfo;<br><br>   root = RootWindow(dpy, 0);<br><br>   /* Choose GLX visual / pixel format */<br>   visinfo = glXChooseVisual(dpy, 0, visAttributes);<br>   if (!visinfo) {<br>      printf("Error: couldn't get an RGB, Double-buffered visual\n");<br>      exit(1);<br>   }<br><br>   /* Create the window */<br>   attr.background_pixel = 0;<br>   attr.border_pixel = 0;<br>   attr.colormap = XCreateColormap(dpy, root, visinfo->visual, AllocNone);<br>   attrMask = CWBackPixel | CWBorderPixel | CWColormap;<br>   win = XCreateWindow(dpy, root, 0, 0, width, height,<br>		       0, visinfo->depth, InputOutput,<br>		       visinfo->visual, attrMask, &attr);<br>   if (!win) {<br>      printf("Error: XCreateWindow failed\n");<br>      exit(1);<br>   }<br><br>   /* Display the window */<br>   XMapWindow(dpy, win);<br><br>   /* Create GLX rendering context */<br>   ctx = glXCreateContext(dpy, visinfo, NULL, True);<br>   if (!ctx) {<br>      printf("Error: glXCreateContext failed\n");<br>      exit(1);<br>   }<br><br>   /* Bind the rendering context and window */<br>   glXMakeCurrent(dpy, win, ctx);<br><br>   return win;<br>}<br><br><br>/*<br> * Draw a few frames of a rotating square.<br> */<br>static void<br>DrawFrames(Display * dpy, Window win)<br>{<br>   int angle;<br>   glShadeModel(GL_FLAT);<br>   glClearColor(0.5, 0.5, 0.5, 1.0);<br>   for (angle = 0; angle < 360; angle += 10) {<br>      glClear(GL_COLOR_BUFFER_BIT);<br>      glColor3f(1.0, 1.0, 0.0);<br>      glPushMatrix();<br>      glRotatef(angle, 0, 0, 1);<br>      glRectf(-0.8, -0.8, 0.8, 0.8);<br>      glPopMatrix();<br>      glXSwapBuffers(dpy, win);<br>   }<br>}<br><br><br>int<br>main(int argc, char *argv[])<br>{<br>   Display *dpy;<br>   Window win;<br><br>   dpy = XOpenDisplay(NULL);<br>   if (!dpy) {<br>      printf("Error: XOpenDisplay failed\n");<br>      return 1;<br>   }<br><br>   win = MakeWindow(dpy, 300, 300);<br><br>   DrawFrames(dpy, win);<br><br>   return 0;<br>}<br></code></pre>
 | 
			
		||||
<br>
 | 
			
		||||
</body>
 | 
			
		||||
</html>
 | 
			
		||||
							
								
								
									
										244
									
								
								docs/README.3DFX
									
									
									
									
									
								
							
							
						
						
									
										244
									
								
								docs/README.3DFX
									
									
									
									
									
								
							@@ -1,242 +1,10 @@
 | 
			
		||||
 | 
			
		||||
                            3Dfx Glide device driver
 | 
			
		||||
                     3Dfx Glide device driver for Mesa 3.3
 | 
			
		||||
				(see below for FAQ)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Requirements:
 | 
			
		||||
-------------
 | 
			
		||||
 | 
			
		||||
A Voodoo-based videocard/accelerator
 | 
			
		||||
DOS (with DJGPP), Windows9x/2k (with MinGW), Linux
 | 
			
		||||
Glide3x library for your OS
 | 
			
		||||
 | 
			
		||||
http://sourceforge.net/projects/glide/
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
How to compile:
 | 
			
		||||
---------------
 | 
			
		||||
 | 
			
		||||
DJGPP:
 | 
			
		||||
   Place the Glide3 SDK in the top Mesa directory:
 | 
			
		||||
	$(MESA)/glide3/include/
 | 
			
		||||
		3dfx.h, g3ext.h, glide.h, glidesys.h, glideutl.h, sst1vid.h
 | 
			
		||||
	$(MESA)/glide3/lib/
 | 
			
		||||
		libgld3x.a, libgld3i.a, glide3x.dxe
 | 
			
		||||
   Type:
 | 
			
		||||
	make -f Makefile.DJ X86=1 FX=1
 | 
			
		||||
   Look into the makefile for further information.
 | 
			
		||||
 | 
			
		||||
MinGW:
 | 
			
		||||
   Place the Glide3 SDK in the top Mesa directory:
 | 
			
		||||
	$(MESA)/glide3/include/
 | 
			
		||||
		3dfx.h, g3ext.h, glide.h, glidesys.h, glideutl.h, sst1vid.h
 | 
			
		||||
	$(MESA)/glide3/lib/
 | 
			
		||||
		libglide3x.a, glide3x.dll
 | 
			
		||||
   Type:
 | 
			
		||||
	make -f Makefile.mgw X86=1 FX=1
 | 
			
		||||
   Look into the makefile for further information.
 | 
			
		||||
 | 
			
		||||
Linux:
 | 
			
		||||
   Place the Glide3 SDK in /usr/local/glide
 | 
			
		||||
	/usr/local/glide/include/
 | 
			
		||||
		3dfx.h, g3ext.h, glide.h, glidesys.h, glideutl.h, sst1vid.h
 | 
			
		||||
	/usr/local/glide/lib/
 | 
			
		||||
		libglide3x.a, libglide3x.so
 | 
			
		||||
   Type:
 | 
			
		||||
	make linux-glide
 | 
			
		||||
	or
 | 
			
		||||
	make linux-x86-glide
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Compilation defines:
 | 
			
		||||
--------------------
 | 
			
		||||
 | 
			
		||||
FX_DEBUG
 | 
			
		||||
	enable driver debug code
 | 
			
		||||
FX_TRAP_GLIDE
 | 
			
		||||
	enable Glide trace code
 | 
			
		||||
FX_PACKEDCOLOR
 | 
			
		||||
	use packed color in vertex structure
 | 
			
		||||
FX_TC_NAPALM
 | 
			
		||||
	map GL_COMPRESSED_RGB[A] to FXT1. Works with VSA100-based cards only.
 | 
			
		||||
FX_COMPRESS_S3TC_AS_FXT1_HACK
 | 
			
		||||
	map S3TC to FXT1
 | 
			
		||||
FX_RESCALE_BIG_TEXURES_HACK
 | 
			
		||||
	fake textures larger than HW can support
 | 
			
		||||
	(see MESA_FX_MAXLOD environment variable)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Environment variables:
 | 
			
		||||
----------------------
 | 
			
		||||
 | 
			
		||||
The following environment variables affect MesaFX. Those that affect Glide
 | 
			
		||||
only, are beyond the scope of this section. Entries that don't have a "Value"
 | 
			
		||||
field, can have any value whatsoever
 | 
			
		||||
	ex: set MESA_FX_IGNORE_CMBEXT=y
 | 
			
		||||
 | 
			
		||||
"Note" (*) means that the environment variable affects Glide, too; also, if
 | 
			
		||||
the var is not found in the environment, it is searched in windoze registry.
 | 
			
		||||
"Note" (!) means that the environment variable is not working as expected;
 | 
			
		||||
may have undefined effects, might have effects only at Glide level or might
 | 
			
		||||
not have any effect whatsoever. Caveat emptor! Those are to be revised soon.
 | 
			
		||||
 | 
			
		||||
It is recommended to leave the envvars alone, so that Mesa/Glide will run with
 | 
			
		||||
default values. Use them only when you experience crashes or strange behavior.
 | 
			
		||||
 | 
			
		||||
FX_GLIDE_NUM_TMU
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: dual-TMU cards (Voodoo2, Avenger, Napalm)
 | 
			
		||||
	Desc: force single-TMU
 | 
			
		||||
	Note: (*)
 | 
			
		||||
	Value: "1"
 | 
			
		||||
FX_GLIDE_SWAPPENDINGCOUNT
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: all
 | 
			
		||||
	Desc: max # of buffers allowed to build up
 | 
			
		||||
	Note: (*) (!)
 | 
			
		||||
	Value: "0", "1", "2", "3", "4", "5" or "6"
 | 
			
		||||
FX_GLIDE_SWAPINTERVAL
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: all
 | 
			
		||||
	Desc: number of vertical retraces to wait before swapping
 | 
			
		||||
	Note: (*) (!) works only at Glide-level?
 | 
			
		||||
SSTH3_SLI_AA_CONFIGURATION
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: VSA100-based cards
 | 
			
		||||
	Desc: SLI/AA setup
 | 
			
		||||
	Note: (*) (!) works only at Glide-level?
 | 
			
		||||
	Value:
 | 
			
		||||
	    1, 2, 4 chip cards
 | 
			
		||||
		"0" - SLI & AA disable
 | 
			
		||||
		"1" - SLI disabled, 2 sample AA enabled
 | 
			
		||||
	    2, 4 chip cards
 | 
			
		||||
		"2" - 2-way SLI enabled, AA disabled
 | 
			
		||||
		"3" - 2-way SLI enabled, 2 sample AA enabled
 | 
			
		||||
		"4" - SLI disabled, 4 sample AA enabled
 | 
			
		||||
	    4 chip cards
 | 
			
		||||
		"5" - 4-way SLI enabled, AA disabled
 | 
			
		||||
		"6" - 4-way SLI enabled, 2 sample AA enabled
 | 
			
		||||
		"7" - 2-way SLI enabled, 4 sample AA enabled
 | 
			
		||||
		"8" - SLI disabled, 8 sample AA enabled 
 | 
			
		||||
SST_DUALHEAD
 | 
			
		||||
	OS: win32
 | 
			
		||||
	HW: ?
 | 
			
		||||
	Desc: ?
 | 
			
		||||
	Note: (!) disabled?
 | 
			
		||||
MESA_FX_NO_SIGNALS
 | 
			
		||||
	OS: linux
 | 
			
		||||
	HW: all
 | 
			
		||||
	Desc: avoid installing signals
 | 
			
		||||
	Note: (!) untested!
 | 
			
		||||
MESA_FX_INFO
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: all
 | 
			
		||||
	Desc: verbose to stderr
 | 
			
		||||
	Value: any; special value "r" to redirect stderr to MESA.LOG
 | 
			
		||||
MESA_FX_NOSNAP
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: Voodoo1, Rush, Banshee
 | 
			
		||||
	Desc: do not snap vertices inside Mesa
 | 
			
		||||
	Note: to be used with Glide3x that snaps vertices internally
 | 
			
		||||
MESA_FX_POINTCAST
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: dual-TMU cards (some Voodoo1, Voodoo2, Avenger, Napalm)
 | 
			
		||||
	Desc: try to use pointcast palette
 | 
			
		||||
	Note: may give adverse effects on UMA cards (Avenger, Napalm)
 | 
			
		||||
MESA_FX_IGNORE_PALEXT
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: all
 | 
			
		||||
	Desc: disable 6666 palette
 | 
			
		||||
MESA_FX_IGNORE_PIXEXT
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: Napalm
 | 
			
		||||
	Desc: force 565 16bpp mode (traditional Voodoo, no 32/15bpp)
 | 
			
		||||
MESA_FX_IGNORE_TEXFMT
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: Napalm
 | 
			
		||||
	Desc: disable 32bit textures
 | 
			
		||||
MESA_FX_IGNORE_CMBEXT
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: Napalm
 | 
			
		||||
	Desc: disable Napalm combiners (color/alpha/texture)
 | 
			
		||||
	Note: this option allows dual-TMU cards perform single-pass
 | 
			
		||||
	      trilinear, but some advanced (multi)texturing modes
 | 
			
		||||
	      won't work (GL_EXT_texture_env_combine)
 | 
			
		||||
MESA_FX_IGNORE_MIREXT
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: all
 | 
			
		||||
	Desc: disable mirror extension
 | 
			
		||||
MESA_FX_IGNORE_TEXUMA
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: all
 | 
			
		||||
	Desc: disable UMA
 | 
			
		||||
MESA_FX_IGNORE_TEXUS2
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: all
 | 
			
		||||
	Desc: disable Texus2
 | 
			
		||||
MESA_FX_MAXLOD
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: non VSA-100 cards
 | 
			
		||||
	Desc: enable large texture support using SW rescaling
 | 
			
		||||
	Value:
 | 
			
		||||
	    "9"  - 512x512 textures
 | 
			
		||||
	    "10" - 1024x1024 textures
 | 
			
		||||
	    "11" - 2048x2048 textures
 | 
			
		||||
MESA_FX_ALLOW_VP
 | 
			
		||||
	OS: all
 | 
			
		||||
	HW: all
 | 
			
		||||
	Desc: allow vertex program extensions
 | 
			
		||||
MESA_GLX_FX
 | 
			
		||||
	OS: linux
 | 
			
		||||
	HW: Voodoo1, Rush, Voodoo2
 | 
			
		||||
	Desc: display mode
 | 
			
		||||
	Note: (!) experimental
 | 
			
		||||
	Value:
 | 
			
		||||
	    "w" - windowed mode
 | 
			
		||||
	    "f" - fullscreen mode
 | 
			
		||||
	    "d" - disable glide driver
 | 
			
		||||
	OS: win32
 | 
			
		||||
	HW: Rush, Banshee, Avenger, Napalm
 | 
			
		||||
	Desc: display mode
 | 
			
		||||
	Note: (!) experimental
 | 
			
		||||
	Value:
 | 
			
		||||
	    "w" - windowed mode
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Contact:
 | 
			
		||||
--------
 | 
			
		||||
 | 
			
		||||
Daniel Borca <dborca 'at' users 'dot' sourceforge 'dot' net>
 | 
			
		||||
Hiroshi Morii <koolsmoky 'at' users 'dot' sourceforge 'dot' net>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
WARNING! The info below this line is outdated (yet some of it useful). WARNING!
 | 
			
		||||
*******************************************************************************
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
Info for Mesa 4.1
 | 
			
		||||
-----------------
 | 
			
		||||
 | 
			
		||||
The 3dfx Glide driver in Mesa is disabled by default.  Not too many people
 | 
			
		||||
use this driver anymore and at some point down the road it will be dropped.
 | 
			
		||||
 | 
			
		||||
To use/enable the Glide driver either do this:
 | 
			
		||||
 | 
			
		||||
'./configure --with-glide=DIR'    Where DIR is the location of Glide, like
 | 
			
		||||
                                  /usr/ or /usr/local
 | 
			
		||||
 | 
			
		||||
OR
 | 
			
		||||
 | 
			
		||||
'make linux-x86-glide'     If using the old-style Makefile system.
 | 
			
		||||
 | 
			
		||||
The rest of this file hasn't changed since Mesa 3.3.  Some of it's out of
 | 
			
		||||
date, but some is still valid.
 | 
			
		||||
Warning: this document is rather out of date, but most of the information
 | 
			
		||||
should still apply.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -249,6 +17,8 @@ What do you need ?
 | 
			
		||||
	  under Linux (more information in the "Useful Glide Environment
 | 
			
		||||
	  Variables");
 | 
			
		||||
 | 
			
		||||
	- Mesa 3.1;
 | 
			
		||||
 | 
			
		||||
	- The 3Dfx Glide library 2.3 or later for your OS (the 2.4 works fine).
 | 
			
		||||
	  The Voodoo2 requires the Glide library 2.51. The Glide 3.1 is not
 | 
			
		||||
	  compatible with the Glide 2.x so it doesn't work with the current
 | 
			
		||||
@@ -257,6 +27,8 @@ What do you need ?
 | 
			
		||||
	- A compiler supported by the Glide library (Micro$oft VC++ (tested),
 | 
			
		||||
	  Watcom (tested), GCC for Linux (tested), etc.);
 | 
			
		||||
 | 
			
		||||
	- A lot of patience, this is an alpha release.
 | 
			
		||||
 | 
			
		||||
	- It's nice to have two monitors - one for your normal graphics
 | 
			
		||||
	  card and one for your 3Dfx card. If something goes wrong with
 | 
			
		||||
	  an application using the 3Dfx hardware you can still see your
 | 
			
		||||
 
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user