diff options
Diffstat (limited to 'src/mesa/drivers/dri/radeon/Makefile')
-rw-r--r-- | src/mesa/drivers/dri/radeon/Makefile | 165 |
1 files changed, 85 insertions, 80 deletions
diff --git a/src/mesa/drivers/dri/radeon/Makefile b/src/mesa/drivers/dri/radeon/Makefile index 9dd7c97..cbc21e4 100644 --- a/src/mesa/drivers/dri/radeon/Makefile +++ b/src/mesa/drivers/dri/radeon/Makefile @@ -1,15 +1,13 @@ # src/mesa/drivers/dri/radeon/Makefile +# Note, this Makefile requires GNU make TOP = ../../../../.. -include $(TOP)/configs/default - -SHARED_INCLUDES = $(INCLUDE_DIRS) -I. -I../common -Iserver -MINIGLX_INCLUDES = -I$(TOP)/src/glx/mini +include $(TOP)/configs/current ifeq ($(EMBEDDED),true) -TARGET = radeon_es_dri.so +LIBNAME = radeon_es_dri.so DEFINES += \ - -D_EMBEDDED \ + -D_EMBEDDED \ -D_HAVE_SWRAST=0 \ -D_HAVE_SWTNL=0 \ -D_HAVE_SANITY=0 \ @@ -19,7 +17,7 @@ DEFINES += \ -D_HAVE_USERCLIP=0 \ -DGLX_DIRECT_RENDERING else -TARGET = radeon_dri.so +LIBNAME = radeon_dri.so DEFINES += \ -D_HAVE_SWRAST=1 \ -D_HAVE_SWTNL=1 \ @@ -31,61 +29,85 @@ DEFINES += \ -DGLX_DIRECT_RENDERING endif -MESA_MODULES = $(TOP)/src/mesa/mesa.a - MINIGLX_SOURCES = server/radeon_dri.c -DRIVER_SOURCES = radeon_context.c \ - radeon_ioctl.c \ - radeon_lock.c \ - radeon_screen.c \ - radeon_state.c \ - radeon_state_init.c \ - ../../common/driverfuncs.c \ - ../common/mm.c \ - ../common/utils.c \ - ../common/texmem.c \ - ../common/vblank.c \ - ../common/xmlconfig.c +COMMON_SOURCES = \ + ../../common/driverfuncs.c \ + ../common/mm.c \ + ../common/utils.c \ + ../common/texmem.c \ + ../common/vblank.c \ + ../common/xmlconfig.c + +DRIVER_SOURCES = \ + radeon_context.c \ + radeon_ioctl.c \ + radeon_lock.c \ + radeon_screen.c \ + radeon_state.c \ + radeon_state_init.c SUBSET_DRIVER_SOURCES = \ - radeon_subset_bitmap.c \ - radeon_subset_readpix.c \ - radeon_subset_select.c \ - radeon_subset_tex.c \ - radeon_subset_vtx.c - -FULL_DRIVER_SOURCES = \ - radeon_tex.c \ - radeon_texmem.c \ - radeon_texstate.c \ - radeon_tcl.c \ - radeon_swtcl.c \ - radeon_span.c \ - radeon_maos.c \ - radeon_sanity.c \ - radeon_compat.c \ - radeon_vtxfmt.c \ - radeon_vtxfmt_c.c \ - radeon_vtxfmt_sse.c \ - radeon_vtxfmt_x86.c - - -INCLUDES = $(MINIGLX_INCLUDES) \ - $(SHARED_INCLUDES) - + radeon_subset_bitmap.c \ + radeon_subset_readpix.c \ + radeon_subset_select.c \ + radeon_subset_tex.c \ + radeon_subset_vtx.c + +FULL_DRIVER_SOURCES = \ + radeon_tex.c \ + radeon_texmem.c \ + radeon_texstate.c \ + radeon_tcl.c \ + radeon_swtcl.c \ + radeon_span.c \ + radeon_maos.c \ + radeon_sanity.c \ + radeon_compat.c \ + radeon_vtxfmt.c \ + radeon_vtxfmt_c.c \ + radeon_vtxfmt_sse.c \ + radeon_vtxfmt_x86.c ifeq ($(EMBEDDED),true) -C_SOURCES = $(DRIVER_SOURCES) \ - $(SUBSET_DRIVER_SOURCES) \ - $(MINIGLX_SOURCES) +C_SOURCES = \ + $(COMMON_SOURCES) \ + $(MINIGLX_SOURCES) \ + $(DRIVER_SOURCES) \ + $(SUBSET_DRIVER_SOURCES) else -C_SOURCES = $(DRIVER_SOURCES) \ - $(FULL_DRIVER_SOURCES) \ - $(MINIGLX_SOURCES) +C_SOURCES = \ + $(COMMON_SOURCES) \ + $(MINIGLX_SOURCES) \ + $(DRIVER_SOURCES) \ + $(FULL_DRIVER_SOURCES) endif +# Include directories +INCLUDE_DIRS = \ + -I. \ + -I../common \ + -Iserver \ + -I$(TOP)/src/glx/mini \ + -I$(TOP)/include \ + -I$(TOP)/src/mesa/drivers/dri/drm/shared \ + -I$(TOP)/src/mesa \ + -I$(TOP)/src/mesa/main \ + -I$(TOP)/src/mesa/glapi \ + -I$(TOP)/src/mesa/math \ + -I$(TOP)/src/mesa/transform \ + -I$(TOP)/src/mesa/shader \ + -I$(TOP)/src/mesa/swrast \ + -I$(TOP)/src/mesa/swrast_setup + +# Core Mesa objects +MESA_MODULES = $(TOP)/src/mesa/mesa.a + +# Libraries that the driver shared lib depends on +LIB_DEPS = -L/usr/X11R6/lib -lX11 -lXext -lm -lpthread -lexpat -ldl -lc + + ifeq ($(WINDOW_SYSTEM),dri) WINOBJ=$(MESABUILDDIR)/dri/dri.a WINLIB= @@ -95,50 +117,34 @@ WINLIB=-L$(MESA)/src/glx/mini endif ASM_SOURCES = + OBJECTS = $(C_SOURCES:.c=.o) \ $(ASM_SOURCES:.S=.o) -### Include directories - -INCLUDE_DIRS = \ - -I$(TOP)/include \ - -I$(TOP)/src/mesa \ - -I$(TOP)/src/mesa/main \ - -I$(TOP)/src/mesa/glapi \ - -I$(TOP)/src/mesa/math \ - -I$(TOP)/src/mesa/transform \ - -I$(TOP)/src/mesa/swrast \ - -I$(TOP)/src/mesa/swrast_setup - ##### RULES ##### .c.o: - $(CC) -c $(SHARED_INCLUDES) $(MINIGLX_INCLUDES) $(CFLAGS) $(DEFINES) $< -o $@ + $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $(DEFINES) $< -o $@ .S.o: - $(CC) -c $(SHARED_INCLUDES) $(MINIGLX_INCLUDES) $(CFLAGS) $(DEFINES) $< -o $@ + $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $(DEFINES) $< -o $@ ##### TARGETS ##### -default: depend $(TARGET) +default: depend $(LIB_DIR)/$(LIBNAME) + -$(TARGET): $(OBJECTS) $(MESA_MODULES) $(WINOBJ) Makefile.solo - rm -f $@ && gcc -o $@ -shared $(OBJECTS) $(MESA_MODULES) $(WINOBJ) $(WINLIB) -lc $(GL_LIB_DEPS) - rm -f $(LIB_DIR)/$(TARGET) && \ - install $(TARGET) $(LIB_DIR)/$(TARGET) +$(LIB_DIR)/$(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(WINOBJ) Makefile + $(TOP)/bin/mklib -o $(LIBNAME) -noprefix -install $(LIB_DIR) \ + $(WINLIB) $(LIB_DEPS) $(WINOBJ) $(MESA_MODULES) $(OBJECTS) -$(LIB_DIR)/$(TARGET): $(TARGET) - rm -f $(LIB_DIR)/$(TARGET) && \ - install $(TARGET) $(LIB_DIR)/$(TARGET) -# Run 'make -f Makefile.solo dep' to update the dependencies if you change -# what's included by any source file. depend: $(C_SOURCES) $(ASM_SOURCES) touch depend - makedepend -fdepend -Y $(SHARED_INCLUDES) $(MINIGLX_INCLUDES)\ - $(C_SOURCES) $(ASM_SOURCES) >& /dev/null + $(MKDEP) $(MKDEP_OPTIONS) $(INCLUDE_DIRS) $(C_SOURCES) $(ASM_SOURCES) \ + >& /dev/null # Emacs tags @@ -146,9 +152,8 @@ tags: etags `find . -name \*.[ch]` `find ../include` -# Remove .o and backup files clean: - -rm -f *.o *~ *.o *~ *.so server/*.o + -rm -f *.o server/*.o include depend |