8526820c806a0e8d993c7e1150ed4a791578399f
[mesa.git] / src / mesa / es / sources.mak
1 include $(MESA)/sources.mak
2
3 # LOCAL sources
4
5 LOCAL_ES1_SOURCES := \
6 main/drawtex.c \
7 main/es_cpaltex.c \
8 main/es_enable.c \
9 main/es_query_matrix.c \
10 main/es_texgen.c \
11 glapi/glapi-es1/main/enums.c
12
13 LOCAL_ES1_GALLIUM_SOURCES := \
14 $(LOCAL_ES1_SOURCES) \
15 state_tracker/st_cb_drawtex.c
16
17 # always use local version of GLAPI_ASM_SOURCES
18 LOCAL_ES1_API_ASM := $(addprefix glapi/glapi-es1/, $(GLAPI_ASM_SOURCES))
19
20 LOCAL_ES1_INCLUDES := \
21 -I. \
22 -I./glapi/glapi-es1 \
23 -I./state_tracker \
24 -I$(MESA)/state_tracker
25
26 LOCAL_ES2_SOURCES := \
27 main/es_cpaltex.c \
28 glapi/glapi-es2/main/enums.c
29
30 LOCAL_ES2_GALLIUM_SOURCES := \
31 $(LOCAL_ES2_SOURCES)
32
33 LOCAL_ES2_API_ASM := $(subst es1,es2, $(LOCAL_ES1_API_ASM))
34 LOCAL_ES2_INCLUDES := $(subst es1,es2, $(LOCAL_ES1_INCLUDES))
35
36 # MESA sources
37 # Ideally, the omit list should be replaced by features.
38
39 MAIN_OMITTED := \
40 main/api_exec.c \
41 main/condrender.c \
42 main/dlopen.c \
43 main/enums.c \
44 main/get.c
45 MAIN_SOURCES := $(filter-out $(MAIN_OMITTED), $(MAIN_SOURCES))
46
47 VBO_OMITTED := \
48 vbo/vbo_save.c \
49 vbo/vbo_save_api.c \
50 vbo/vbo_save_draw.c \
51 vbo/vbo_save_loopback.c
52 VBO_SOURCES := $(filter-out $(VBO_OMITTED), $(VBO_SOURCES))
53
54 STATETRACKER_OMITTED := \
55 state_tracker/st_api.c \
56 state_tracker/st_cb_drawpixels.c \
57 state_tracker/st_cb_feedback.c \
58 state_tracker/st_cb_rasterpos.c \
59 state_tracker/st_draw_feedback.c
60 STATETRACKER_SOURCES := $(filter-out $(STATETRACKER_OMITTED), $(STATETRACKER_SOURCES))
61
62 SHADER_OMITTED := \
63 shader/atifragshader.c
64 SHADER_SOURCES := $(filter-out $(SHADER_OMITTED), $(SHADER_SOURCES))
65
66 MESA_ES1_SOURCES := \
67 $(MAIN_SOURCES) \
68 $(MATH_SOURCES) \
69 $(MATH_XFORM_SOURCES) \
70 $(VBO_SOURCES) \
71 $(TNL_SOURCES) \
72 $(SHADER_SOURCES) \
73 $(SWRAST_SOURCES) \
74 $(SWRAST_SETUP_SOURCES) \
75 $(COMMON_DRIVER_SOURCES) \
76 $(ASM_C_SOURCES) \
77 $(SLANG_SOURCES)
78
79 MESA_ES1_GALLIUM_SOURCES := \
80 $(MAIN_SOURCES) \
81 $(MATH_SOURCES) \
82 $(VBO_SOURCES) \
83 $(STATETRACKER_SOURCES) \
84 $(SHADER_SOURCES) \
85 ppc/common_ppc.c \
86 x86/common_x86.c \
87 $(SLANG_SOURCES)
88
89 MESA_ES1_API_SOURCES := \
90 $(GLAPI_SOURCES)
91
92 MESA_ES1_INCLUDES := $(INCLUDE_DIRS)
93
94 # remove LOCAL sources from MESA sources
95 MESA_ES1_SOURCES := $(filter-out $(LOCAL_ES1_SOURCES), $(MESA_ES1_SOURCES))
96 MESA_ES1_GALLIUM_SOURCES := $(filter-out $(LOCAL_ES1_GALLIUM_SOURCES), $(MESA_ES1_GALLIUM_SOURCES))
97
98 # right now es2 and es1 share MESA sources
99 MESA_ES2_SOURCES := $(MESA_ES1_SOURCES)
100 MESA_ES2_GALLIUM_SOURCES := $(MESA_ES1_GALLIUM_SOURCES)
101 MESA_ES2_API_SOURCES := $(MESA_ES1_API_SOURCES)
102
103 MESA_ES2_INCLUDES := $(MESA_ES1_INCLUDES)
104
105 # asm is shared by any ES version and any library
106 MESA_ES_ASM := $(MESA_ASM_SOURCES)
107
108 # collect sources, adjust the pathes
109 ES1_SOURCES := $(LOCAL_ES1_SOURCES) $(addprefix $(MESA)/,$(MESA_ES1_SOURCES))
110 ES1_GALLIUM_SOURCES := $(LOCAL_ES1_GALLIUM_SOURCES) $(addprefix $(MESA)/,$(MESA_ES1_GALLIUM_SOURCES))
111 ES1_API_SOURCES := $(addprefix $(MESA)/,$(MESA_ES1_API_SOURCES))
112
113 ES2_SOURCES := $(LOCAL_ES2_SOURCES) $(addprefix $(MESA)/,$(MESA_ES2_SOURCES))
114 ES2_GALLIUM_SOURCES := $(LOCAL_ES2_GALLIUM_SOURCES) $(addprefix $(MESA)/,$(MESA_ES2_GALLIUM_SOURCES))
115 ES2_API_SOURCES := $(addprefix $(MESA)/,$(MESA_ES2_API_SOURCES))
116
117 # collect includes
118 ES1_INCLUDES := $(LOCAL_ES1_INCLUDES) $(MESA_ES1_INCLUDES)
119 ES2_INCLUDES := $(LOCAL_ES2_INCLUDES) $(MESA_ES2_INCLUDES)
120
121 # collect objects, including asm
122 ES1_OBJECTS := \
123 $(LOCAL_ES1_SOURCES:.c=.o) \
124 $(MESA_ES1_SOURCES:.c=.o) \
125 $(MESA_ES_ASM:.S=.o)
126
127 ES1_GALLIUM_OBJECTS := \
128 $(LOCAL_ES1_GALLIUM_SOURCES:.c=.o) \
129 $(MESA_ES1_GALLIUM_SOURCES:.c=.o) \
130 $(MESA_ES_ASM:.S=.o)
131
132 ES1_API_OBJECTS := \
133 $(LOCAL_ES1_API_ASM:.S=.o) \
134 $(MESA_ES1_API_SOURCES:.c=.o)
135
136 ES2_OBJECTS := \
137 $(LOCAL_ES2_SOURCES:.c=.o) \
138 $(MESA_ES2_SOURCES:.c=.o) \
139 $(MESA_ES_ASM:.S=.o)
140
141 ES2_GALLIUM_OBJECTS := \
142 $(LOCAL_ES2_GALLIUM_SOURCES:.c=.o) \
143 $(MESA_ES2_GALLIUM_SOURCES:.c=.o) \
144 $(MESA_ES_ASM:.S=.o)
145
146 ES2_API_OBJECTS := \
147 $(LOCAL_ES2_API_ASM:.S=.o) \
148 $(MESA_ES2_API_SOURCES:.c=.o)
149
150 # collect sources for makedepend
151 ES1_ALL_SOURCES := $(ES1_SOURCES) $(ES1_GALLIUM_SOURCES) $(ES1_API_SOURCES)
152 ES2_ALL_SOURCES := $(ES2_SOURCES) $(ES2_GALLIUM_SOURCES) $(ES2_API_SOURCES)
153
154 # sort to remove duplicates
155 ES1_ALL_SOURCES := $(sort $(ES1_ALL_SOURCES))
156 ES2_ALL_SOURCES := $(sort $(ES2_ALL_SOURCES))