Merge commit 'origin/gallium-0.1' into gallium-0.2
[mesa.git] / src / mesa / drivers / osmesa / Makefile
1 # src/mesa/drivers/osmesa/Makefile for libOSMesa.so
2
3 # Note that we may generate libOSMesa.so or libOSMesa16.so or libOSMesa32.so
4 # with this Makefile
5
6
7 TOP = ../../../..
8
9 include $(TOP)/configs/current
10
11
12
13 SOURCES = osmesa.c
14
15 OBJECTS = $(SOURCES:.c=.o)
16
17 INCLUDE_DIRS = \
18 -I$(TOP)/include \
19 -I$(TOP)/src/mesa \
20 -I$(TOP)/src/mesa/main
21
22 CORE_MESA = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mesa/libglapi.a
23
24
25 .PHONY: osmesa8
26 .PHONY: osmesa16
27
28
29 .c.o:
30 $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@
31
32
33 default:
34 # $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME)
35 @ if [ "${DRIVER_DIRS}" = "osmesa" ] ; then \
36 $(MAKE) osmesa16 ; \
37 else \
38 $(MAKE) osmesa8 ; \
39 fi
40
41
42
43
44 # The normal libOSMesa is used in conjuction with libGL
45 osmesa8: $(TOP)/lib/$(OSMESA_LIB_NAME)
46
47 $(TOP)/lib/$(OSMESA_LIB_NAME): $(OBJECTS)
48 $(MKLIB) -o $(OSMESA_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
49 -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \
50 -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \
51 -id $(INSTALL_LIB_DIR)/lib$(OSMESA_LIB).$(MESA_MAJOR).dylib \
52 $(OSMESA_LIB_DEPS) $(OBJECTS)
53
54
55
56
57 # The libOSMesa16/libOSMesa32 libraries do not use libGL but rather are built
58 # with all the other Mesa sources (compiled with -DCHAN_BITS=16/32
59 osmesa16: $(OBJECTS) $(CORE_MESA)
60 $(MKLIB) -o $(OSMESA_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
61 -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \
62 -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \
63 -id $(INSTALL_LIB_DIR)/lib$(OSMESA_LIB).$(MESA_MAJOR).dylib \
64 $(OSMESA_LIB_DEPS) $(OBJECTS) $(CORE_MESA)
65
66
67
68 clean:
69 -rm -f *.o *~
70
71
72 # XXX todo install rule?