Merge commit 'origin/master' into drm-gem
[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 $(TOP)/bin/mklib -o $(OSMESA_LIB) \
49 -linker "$(CC)" \
50 -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \
51 -install $(TOP)/$(LIB_DIR) \
52 $(MKLIB_OPTIONS) \
53 $(OSMESA_LIB_DEPS) $(OBJECTS)
54
55
56
57
58 # The libOSMesa16/libOSMesa32 libraries do not use libGL but rather are built
59 # with all the other Mesa sources (compiled with -DCHAN_BITS=16/32
60 osmesa16: $(OBJECTS) $(CORE_MESA)
61 $(TOP)/bin/mklib -o $(OSMESA_LIB) \
62 -linker "$(CC)" \
63 -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \
64 -install $(TOP)/$(LIB_DIR) \
65 $(MKLIB_OPTIONS) \
66 $(OSMESA_LIB_DEPS) $(OBJECTS) $(CORE_MESA)
67
68
69
70 clean:
71 -rm -f *.o *~
72
73
74 # XXX todo install rule?