df7acff083303af9377789e33d8083cb07dd3870
[mesa.git] / src / mesa / drivers / dri / Makefile.template
1 # -*-makefile-*-
2
3 MESA_MODULES = $(TOP)/src/mesa/mesa.a
4
5
6 ifeq ($(WINDOW_SYSTEM),dri)
7 WINOBJ=../dri_client/dri.a
8 WINLIB=
9 INCLUDES = $(SHARED_INCLUDES) \
10 -I../dri_client \
11 -I../dri_client/imports
12
13 OBJECTS = $(C_SOURCES:.c=.o) \
14 $(ASM_SOURCES:.S=.o)
15
16 else
17 WINOBJ=
18 WINLIB=-L$(MESA)/src/glx/mini
19 MINIGLX_INCLUDES = -I$(TOP)/src/glx/mini
20 INCLUDES = $(MINIGLX_INCLUDES) \
21 -I$(DRM_SOURCE_PATH)/shared-core \
22 -I$(DRM_SOURCE_PATH)/libdrm \
23 $(SHARED_INCLUDES)
24
25 OBJECTS = $(C_SOURCES:.c=.o) \
26 $(MINIGLX_SOURCES:.c=.o) \
27 $(ASM_SOURCES:.S=.o)
28 endif
29
30
31
32
33
34 ### Include directories
35 SHARED_INCLUDES = \
36 -I. \
37 -I$(TOP)/src/mesa/drivers/dri/common \
38 -Iserver \
39 -I$(DRM_SOURCE_PATH)/shared-core \
40 -I$(TOP)/include \
41 -I$(TOP)/include/GL/internal \
42 -I$(TOP)/src/mesa \
43 -I$(TOP)/src/mesa/main \
44 -I$(TOP)/src/mesa/glapi \
45 -I$(TOP)/src/mesa/math \
46 -I$(TOP)/src/mesa/transform \
47 -I$(TOP)/src/mesa/shader \
48 -I$(TOP)/src/mesa/swrast \
49 -I$(TOP)/src/mesa/swrast_setup
50
51 ##### RULES #####
52
53 .c.o:
54 $(CC) -c $(INCLUDES) $(CFLAGS) $(DEFINES) $< -o $@
55
56 .S.o:
57 $(CC) -c $(INCLUDES) $(CFLAGS) $(DEFINES) $< -o $@
58
59
60 ##### TARGETS #####
61
62 default: depend symlinks $(LIBNAME) $(LIB_DIR)/$(LIBNAME)
63
64
65 #$(LIB_DIR)/$(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(WINOBJ) Makefile
66 # @echo BUILDING FOR: $(WINDOW_SYSTEM)
67 # $(TOP)/bin/mklib -o $(LIBNAME) -noprefix -install $(LIB_DIR) \
68 # $(WINLIB) $(LIB_DEPS) $(WINOBJ) $(MESA_MODULES) $(OBJECTS)
69
70 $(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(WINOBJ) Makefile $(TOP)/src/mesa/drivers/dri/Makefile.template
71 rm -f $@
72 gcc -o $@ -shared $(OBJECTS) $(MESA_MODULES) $(WINOBJ) $(DRI_LIB_DEPS)
73
74
75 $(LIB_DIR)/$(LIBNAME): $(LIBNAME)
76 install $(LIBNAME) $(LIB_DIR)
77
78
79
80 # Run 'make depend' to update the dependencies if you change
81 # what's included by any source file.
82 .PHONY: depend
83 depend: $(C_SOURCES) $(ASM_SOURCES) $(SYMLINKS)
84 touch depend
85 $(MKDEP) $(MKDEP_OPTIONS) $(DEFINES) $(INCLUDES) $(C_SOURCES) $(ASM_SOURCES) \
86 > /dev/null
87
88
89 # Emacs tags
90 tags:
91 etags `find . -name \*.[ch]` `find ../include`
92
93
94 # Remove .o and backup files
95 clean:
96 -rm -f *.o */*.o *~ *.so *~ server/*.o $(SYMLINKS)
97 -rm -f depend depend.bak
98
99 install: $(LIBNAME)
100 install $(LIBNAME) /usr/X11R6/lib/modules/dri/$(LIBNAME)
101
102 include depend