# $Id: Makefile.X11,v 1.77 2003/03/29 17:07:03 brianp Exp $ # Mesa 3-D graphics library # Version: 5.0 # Copyright (C) 1995-2002 Brian Paul # Makefile for core library ##### MACROS ##### GL_MAJOR = 1 GL_MINOR = 4 GL_TINY = 0$(MESA_MAJOR)0$(MESA_MINOR)0$(MESA_TINY) VPATH = RCS INCDIR = ../include LIBDIR = ../lib CORE_SOURCES = \ api_arrayelt.c \ api_loopback.c \ api_noop.c \ api_validate.c \ accum.c \ attrib.c \ blend.c \ bufferobj.c \ buffers.c \ clip.c \ colortab.c \ context.c \ convolve.c \ debug.c \ depth.c \ dispatch.c \ dlist.c \ drawpix.c \ enable.c \ enums.c \ eval.c \ extensions.c \ feedback.c \ fog.c \ get.c \ glapi.c \ glthread.c \ hash.c \ hint.c \ histogram.c \ image.c \ imports.c \ light.c \ lines.c \ matrix.c \ nvprogram.c \ nvfragparse.c \ nvvertexec.c \ nvvertparse.c \ pixel.c \ points.c \ polygon.c \ rastpos.c \ state.c \ stencil.c \ texcompress.c \ texformat.c \ teximage.c \ texobj.c \ texstate.c \ texstore.c \ texutil.c \ varray.c \ vtxfmt.c \ X86/x86.c \ X86/common_x86.c \ X86/3dnow.c \ X86/sse.c \ math/m_debug_clip.c \ math/m_debug_norm.c \ math/m_debug_xform.c \ math/m_eval.c \ math/m_matrix.c \ math/m_translate.c \ math/m_vector.c \ math/m_xform.c \ array_cache/ac_context.c \ array_cache/ac_import.c \ swrast/s_aaline.c \ swrast/s_aatriangle.c \ swrast/s_accum.c \ swrast/s_alpha.c \ swrast/s_alphabuf.c \ swrast/s_bitmap.c \ swrast/s_blend.c \ swrast/s_buffers.c \ swrast/s_copypix.c \ swrast/s_context.c \ swrast/s_depth.c \ swrast/s_drawpix.c \ swrast/s_feedback.c \ swrast/s_fog.c \ swrast/s_imaging.c \ swrast/s_lines.c \ swrast/s_logic.c \ swrast/s_masking.c \ swrast/s_nvfragprog.c \ swrast/s_pixeltex.c \ swrast/s_points.c \ swrast/s_readpix.c \ swrast/s_span.c \ swrast/s_stencil.c \ swrast/s_texture.c \ swrast/s_texstore.c \ swrast/s_triangle.c \ swrast/s_zoom.c \ swrast_setup/ss_context.c \ swrast_setup/ss_triangle.c \ swrast_setup/ss_vb.c \ tnl/t_array_api.c \ tnl/t_array_import.c \ tnl/t_context.c \ tnl/t_eval_api.c \ tnl/t_imm_alloc.c \ tnl/t_imm_api.c \ tnl/t_imm_debug.c \ tnl/t_imm_dlist.c \ tnl/t_imm_elt.c \ tnl/t_imm_eval.c \ tnl/t_imm_exec.c \ tnl/t_imm_fixup.c \ tnl/t_pipeline.c \ tnl/t_vb_fog.c \ tnl/t_vb_light.c \ tnl/t_vb_normals.c \ tnl/t_vb_points.c \ tnl/t_vb_program.c \ tnl/t_vb_render.c \ tnl/t_vb_texgen.c \ tnl/t_vb_texmat.c \ tnl/t_vb_vertex.c DRIVER_SOURCES = \ FX/fxapi.c \ FX/fxdd.c \ FX/fxddspan.c \ FX/fxddtex.c \ FX/fxsetup.c \ FX/fxtexman.c \ FX/fxtris.c \ FX/fxvb.c \ FX/fxglidew.c \ X/glxapi.c \ X/fakeglx.c \ X/xfonts.c \ X/xm_api.c \ X/xm_dd.c \ X/xm_line.c \ X/xm_span.c \ X/xm_tri.c \ SVGA/svgamesa.c \ SVGA/svgamesa8.c \ SVGA/svgamesa15.c \ SVGA/svgamesa16.c \ SVGA/svgamesa24.c \ SVGA/svgamesa32.c ASM_SOURCES = ADDITIONAL_OBJ = OBJECTS = $(ASM_SOURCES:.S=.o) \ $(CORE_SOURCES:.c=.o) \ $(DRIVER_SOURCES:.c=.o) \ $(ADDITIONAL_OBJ) OSMESA_SOURCES = OSmesa/osmesa.c OSMESA_OBJECTS = OSmesa/osmesa.o ##### RULES ##### .c.o: $(CC) -c -I. -I$(INCDIR) $(CFLAGS) $< -o $@ .S.o: $(CC) -c -I. $(CFLAGS) $< -o $@ X86/x86.o: X86/x86.c $(CC) -c -I. -I$(INCDIR) $(CFLAGS) $< -o $@ X86/common_x86.o: X86/common_x86.c $(CC) -c -I. -I$(INCDIR) $(CFLAGS) $< -o $@ X86/common_x86_asm.o: X86/common_x86_asm.S X86/matypes.h X86/3dnow.o: X86/3dnow.c $(CC) -c -I. -I$(INCDIR) $(CFLAGS) $< -o $@ X86/sse.o: X86/sse.c $(CC) -c -I. -I$(INCDIR) $(CFLAGS) $< -o $@ X86/matypes.h: mtypes.h tnl/t_context.h X86/gen_matypes.c $(CC) -I. -I$(INCDIR) $(CFLAGS) X86/gen_matypes.c -o X86/gen_matypes ./X86/gen_matypes > X86/matypes.h rm -f X86/gen_matypes X86/*.o # We have X86/matypes.h depend on X86/matypes.h so that if ASM_SOURCES # is empty we don't get an invalid Makefile. $(ASM_SOURCES) X86/matypes.h: X86/matypes.h ##### TARGETS ##### #default: # @echo "Specify a target configuration" clean: -rm -f *.o *~ */*.o */*~ *.lo *.la -rm -rf .libs targets: $(LIBDIR)/$(GL_LIB) $(LIBDIR)/$(OSMESA_LIB) # Make the GL library $(LIBDIR)/$(GL_LIB): $(OBJECTS) $(MAKELIB) $(GL_LIB) $(GL_MAJOR) $(GL_MINOR) $(GL_TINY) $(OBJECTS) rm -f $(LIBDIR)/$(GL_LIB)* mv $(GL_LIB)* $(LIBDIR) # Make the OSMesa library $(LIBDIR)/$(OSMESA_LIB): $(OSMESA_OBJECTS) if [ ${OSMESA_LIB} ] ; then $(MAKELIB) $(OSMESA_LIB) $(MESA_MAJOR) $(MESA_MINOR) $(GL_TINY) $(OSMESA_OBJECTS) ; fi if [ ${OSMESA_LIB} ] ; then rm -f $(LIBDIR)/$(OSMESA_LIB)* ; fi if [ ${OSMESA_LIB} ] ; then mv $(OSMESA_LIB)* $(LIBDIR) ; fi include ../Make-config include depend # # Run 'make dep' to update the dependencies if you change what's included # by any source file. # dep: $(CORE_SOURCES) $(DRIVER_SOURCES) $(OSMESA_SOURCES) makedepend -fdepend -Y -I../include -DGGI -DSVGA -DFX $(CORE_SOURCES) $(DRIVER_SOURCES) $(OSMESA_SOURCES) tags: etags `find . -name \*.[ch]` `find ../include`