r300/compiler: refactor fragment shader compilation
[mesa.git] / src / mesa / drivers / dri / Makefile.template
index 1ce9315530c5cf7560ad987d89458e50a4d9c31a..a00018cafa751b0e33ab752985432a21b31a35e1 100644 (file)
@@ -14,28 +14,12 @@ COMMON_SOURCES = $(COMMON_GALLIUM_SOURCES) \
         ../common/drirenderbuffer.c \
        ../common/dri_metaops.c
 
-ifeq ($(WINDOW_SYSTEM),dri)
-WINOBJ=
-WINLIB=
 INCLUDES = $(SHARED_INCLUDES) $(EXPAT_INCLUDES)
 
 OBJECTS = $(C_SOURCES:.c=.o) \
+         $(CXX_SOURCES:.cpp=.o) \
          $(ASM_SOURCES:.S=.o) 
 
-else
-# miniglx
-WINOBJ=
-WINLIB=-L$(MESA)/src/glx/mini
-MINIGLX_INCLUDES = -I$(TOP)/src/glx/mini
-INCLUDES = $(MINIGLX_INCLUDES) \
-          $(SHARED_INCLUDES) \
-          $(PCIACCESS_CFLAGS)
-
-OBJECTS = $(C_SOURCES:.c=.o) \
-         $(MINIGLX_SOURCES:.c=.o) \
-         $(ASM_SOURCES:.S=.o) 
-endif
-
 
 ### Include directories
 SHARED_INCLUDES = \
@@ -43,31 +27,43 @@ SHARED_INCLUDES = \
        -I$(TOP)/src/mesa/drivers/dri/common \
        -Iserver \
        -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/egl/main \
        -I$(TOP)/src/egl/drivers/dri \
        $(LIBDRM_CFLAGS)
 
+CFLAGS += $(API_DEFINES)
+CXXFLAGS += $(API_DEFINES)
 
 ##### RULES #####
 
 .c.o:
        $(CC) -c $(INCLUDES) $(CFLAGS) $(DRIVER_DEFINES) $< -o $@
 
+.cpp.o:
+       $(CC) -c $(INCLUDES) $(CXXFLAGS) $(DRIVER_DEFINES) $< -o $@
+
 .S.o:
-       $(CC) -c $(INCLUDES) $(CFLAGS) $(DRIVER_DEFINES)  $< -o $@
+       $(CC) -c $(INCLUDES) $(CFLAGS) $(DRIVER_DEFINES) $< -o $@
 
 
 ##### TARGETS #####
 
-default: symlinks subdirs depend $(LIBNAME) $(TOP)/$(LIB_DIR)/$(LIBNAME)
+default: subdirs lib
+
 
+.PHONY: lib
+lib: symlinks subdirs depend
+       @$(MAKE) $(LIBNAME) $(TOP)/$(LIB_DIR)/$(LIBNAME)
 
-$(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(EXTRA_MODULES) $(WINOBJ) Makefile \
-               $(TOP)/src/mesa/drivers/dri/Makefile.template
-       $(MKLIB) -o $@ -noprefix -linker '$(CC)' -ldflags '$(LDFLAGS)' \
-               $(OBJECTS) $(MESA_MODULES) $(EXTRA_MODULES) $(WINOBJ) \
-               $(DRI_LIB_DEPS)
+$(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(EXTRA_MODULES) Makefile \
+               $(TOP)/src/mesa/drivers/dri/Makefile.template $(TOP)/src/mesa/drivers/dri/common/dri_test.o
+       $(MKLIB) -o $@.tmp -noprefix -linker '$(CXX)' -ldflags '$(LDFLAGS)' \
+               $(OBJECTS) $(MESA_MODULES) $(EXTRA_MODULES) $(DRI_LIB_DEPS)
+       $(CXX) $(CFLAGS) -o $@.test $(TOP)/src/mesa/drivers/dri/common/dri_test.o $@.tmp $(DRI_LIB_DEPS)
+       @rm -f $@.test
+       mv -f $@.tmp $@
 
 
 $(TOP)/$(LIB_DIR)/$(LIBNAME): $(LIBNAME)