Merge commit 'origin/master' into gallium-sw-api-2
[mesa.git] / src / gallium / targets / libgl-xlib / Makefile
1 # src/gallium/targets/libgl-xlib/Makefile
2
3 # This makefile produces a "stand-alone" libGL.so which is based on
4 # Xlib (no DRI HW acceleration)
5
6
7 TOP = ../../../..
8 include $(TOP)/configs/current
9
10
11 GL_MAJOR = 1
12 GL_MINOR = 5
13 GL_TINY = 0$(MESA_MAJOR)0$(MESA_MINOR)0$(MESA_TINY)
14
15
16 INCLUDE_DIRS = \
17 -I$(TOP)/include \
18 -I$(TOP)/src/mesa \
19 -I$(TOP)/src/mesa/main \
20 -I$(TOP)/src/gallium/include \
21 -I$(TOP)/src/gallium/drivers \
22 -I$(TOP)/src/gallium/state_trackers/glx/xlib \
23 -I$(TOP)/src/gallium/auxiliary
24
25 DEFINES += \
26 -DGALLIUM_SOFTPIPE
27 #-DGALLIUM_CELL will be defined by the config */
28
29 XLIB_TARGET_SOURCES = \
30 xlib.c
31
32
33 XLIB_TARGET_OBJECTS = $(XLIB_TARGET_SOURCES:.c=.o)
34
35
36 # Note: CELL_SPU_LIB is only defined for cell configs
37
38 LIBS = \
39 $(GALLIUM_DRIVERS) \
40 $(TOP)/src/gallium/state_trackers/glx/xlib/libxlib.a \
41 $(TOP)/src/gallium/winsys/xlib/libws_xlib.a \
42 $(TOP)/src/mesa/libglapi.a \
43 $(TOP)/src/mesa/libmesagallium.a \
44 $(GALLIUM_AUXILIARIES) \
45 $(CELL_SPU_LIB) \
46
47
48 .SUFFIXES : .cpp
49
50 .c.o:
51 $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@
52
53 .cpp.o:
54 $(CXX) -c $(INCLUDE_DIRS) $(CXXFLAGS) $< -o $@
55
56
57
58 default: $(TOP)/$(LIB_DIR)/gallium $(TOP)/$(LIB_DIR)/gallium/$(GL_LIB_NAME)
59
60 $(TOP)/$(LIB_DIR)/gallium:
61 @ mkdir -p $(TOP)/$(LIB_DIR)/gallium
62
63 # Make the libGL.so library
64 $(TOP)/$(LIB_DIR)/gallium/$(GL_LIB_NAME): $(XLIB_TARGET_OBJECTS) $(LIBS) Makefile
65 $(TOP)/bin/mklib -o $(GL_LIB) \
66 -linker "$(CC)" \
67 -major $(GL_MAJOR) -minor $(GL_MINOR) -patch $(GL_TINY) \
68 -install $(TOP)/$(LIB_DIR)/gallium \
69 $(MKLIB_OPTIONS) $(XLIB_TARGET_OBJECTS) \
70 -Wl,--start-group $(LIBS) -Wl,--end-group $(GL_LIB_DEPS)
71
72
73 depend: $(XLIB_TARGET_SOURCES)
74 @ echo "running $(MKDEP)"
75 @ rm -f depend # workaround oops on gutsy?!?
76 @ touch depend
77 $(MKDEP) $(MKDEP_OPTIONS) $(DEFINES) $(INCLUDE_DIRS) $(XLIB_TARGET_SOURCES) \
78 > /dev/null 2>/dev/null
79
80
81 install: default
82 $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/include/GL
83 $(INSTALL) -d $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR)
84 $(INSTALL) -m 644 $(TOP)/include/GL/*.h $(DESTDIR)$(INSTALL_DIR)/include/GL
85 @if [ -e $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME) ]; then \
86 $(MINSTALL) $(TOP)/$(LIB_DIR)/libGL* $(DESTDIR)$(INSTALL_DIR)/$(LIB_DIR); \
87 fi
88
89
90 # Emacs tags
91 tags:
92 etags `find . -name \*.[ch]` $(TOP)/include/GL/*.h
93
94 clean:
95 -rm -f *.o
96
97
98 include depend