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