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