blob: 4ea70d43d07aada1e09a9047ff8404e9c7f385ed (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
# src/mesa/Makefile
TOP = ../..
include $(TOP)/configs/current
MESA_LIBS := libmesa.a libmesagallium.a
DEPENDS := depend
SRCDIR = .
include sources.mak
# define preprocessor flags
MESA_CPPFLAGS := $(API_DEFINES) $(DEFINES)
# append include dirs
MESA_CPPFLAGS += $(INCLUDE_DIRS)
# tidy compiler flags
CFLAGS := $(filter-out $(DEFINES), $(CFLAGS))
CXXFLAGS := $(filter-out $(DEFINES), $(CXXFLAGS))
# LLVM is needed for the state tracker
MESA_CFLAGS := $(LLVM_CFLAGS) $(CFLAGS)
MESA_CXXFLAGS := $(LLVM_CFLAGS) $(CXXFLAGS)
%.o: %.c
$(CC) -c -o $@ $< $(MESA_CPPFLAGS) $(MESA_CFLAGS)
%.o: %.cpp
$(CXX) -c -o $@ $< $(MESA_CPPFLAGS) $(MESA_CXXFLAGS)
%.o: %.S
$(CC) -c -o $@ $< $(MESA_CPPFLAGS) $(MESA_CFLAGS)
# Default: build dependencies, then asm_subdirs, GLSL built-in lib,
# then convenience libs (.a) and finally the device drivers:
default: $(DEPENDS) $(MESA_LIBS)
######################################################################
# Helper libraries used by many drivers:
# Make archive of core mesa object files
libmesa.a: $(MESA_OBJECTS) $(GLSL_LIBS)
@ $(MKLIB) -o mesa -static $(MESA_OBJECTS) $(GLSL_LIBS)
# Make archive of subset of core mesa object files for gallium
libmesagallium.a: $(MESA_GALLIUM_OBJECTS) $(GLSL_LIBS)
@ $(MKLIB) -o mesagallium -static $(MESA_GALLIUM_OBJECTS) $(GLSL_LIBS)
######################################################################
# Dependency generation
depend: $(ALL_FILES) main/git_sha1.h
@ echo "running $(MKDEP)"
@ touch depend
@$(MKDEP) $(MKDEP_OPTIONS) $(MESA_CPPFLAGS) \
$(ALL_FILES) > /dev/null 2>/dev/null
######################################################################
# Installation rules
install: default $(DRICORE_INSTALL_TARGET)
@for driver in $(DRIVER_DIRS) ; do \
case "$$driver" in \
osmesa) $(MAKE) -f Makefile.old install-osmesa || exit 1 ;; \
esac ; \
done
install-osmesa: default
$(MINSTALL) $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_GLOB) \
$(DESTDIR)$(INSTALL_LIB_DIR)
# Emacs tags
tags:
etags `find . -name \*.[ch]` $(TOP)/include/GL/*.h
clean:
-rm -f */*.o
-rm -f */*/*.o
-rm -f depend depend.bak libmesa.a libmesagallium.a
-include $(DEPENDS)
|