android: build gallium auxiliaries
[mesa.git] / src / gallium / auxiliary / Android.mk
1 # Mesa 3-D graphics library
2 #
3 # Copyright (C) 2010-2011 Chia-I Wu <olvaffe@gmail.com>
4 # Copyright (C) 2010-2011 LunarG Inc.
5 #
6 # Permission is hereby granted, free of charge, to any person obtaining a
7 # copy of this software and associated documentation files (the "Software"),
8 # to deal in the Software without restriction, including without limitation
9 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
10 # and/or sell copies of the Software, and to permit persons to whom the
11 # Software is furnished to do so, subject to the following conditions:
12 #
13 # The above copyright notice and this permission notice shall be included
14 # in all copies or substantial portions of the Software.
15 #
16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
19 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22 # DEALINGS IN THE SOFTWARE.
23
24 LOCAL_PATH := $(call my-dir)
25
26 # from Makefile
27 C_SOURCES = \
28 cso_cache/cso_cache.c \
29 cso_cache/cso_context.c \
30 cso_cache/cso_hash.c \
31 draw/draw_context.c \
32 draw/draw_fs.c \
33 draw/draw_gs.c \
34 draw/draw_pipe.c \
35 draw/draw_pipe_aaline.c \
36 draw/draw_pipe_aapoint.c \
37 draw/draw_pipe_clip.c \
38 draw/draw_pipe_cull.c \
39 draw/draw_pipe_flatshade.c \
40 draw/draw_pipe_offset.c \
41 draw/draw_pipe_pstipple.c \
42 draw/draw_pipe_stipple.c \
43 draw/draw_pipe_twoside.c \
44 draw/draw_pipe_unfilled.c \
45 draw/draw_pipe_util.c \
46 draw/draw_pipe_validate.c \
47 draw/draw_pipe_vbuf.c \
48 draw/draw_pipe_wide_line.c \
49 draw/draw_pipe_wide_point.c \
50 draw/draw_pt.c \
51 draw/draw_pt_emit.c \
52 draw/draw_pt_fetch.c \
53 draw/draw_pt_fetch_emit.c \
54 draw/draw_pt_fetch_shade_emit.c \
55 draw/draw_pt_fetch_shade_pipeline.c \
56 draw/draw_pt_post_vs.c \
57 draw/draw_pt_so_emit.c \
58 draw/draw_pt_util.c \
59 draw/draw_pt_vsplit.c \
60 draw/draw_vertex.c \
61 draw/draw_vs.c \
62 draw/draw_vs_aos.c \
63 draw/draw_vs_aos_io.c \
64 draw/draw_vs_aos_machine.c \
65 draw/draw_vs_exec.c \
66 draw/draw_vs_ppc.c \
67 draw/draw_vs_sse.c \
68 draw/draw_vs_variant.c \
69 indices/u_indices_gen.c \
70 indices/u_unfilled_gen.c \
71 os/os_misc.c \
72 os/os_stream.c \
73 os/os_stream_log.c \
74 os/os_stream_null.c \
75 os/os_stream_stdc.c \
76 os/os_stream_str.c \
77 os/os_time.c \
78 pipebuffer/pb_buffer_fenced.c \
79 pipebuffer/pb_buffer_malloc.c \
80 pipebuffer/pb_bufmgr_alt.c \
81 pipebuffer/pb_bufmgr_cache.c \
82 pipebuffer/pb_bufmgr_debug.c \
83 pipebuffer/pb_bufmgr_mm.c \
84 pipebuffer/pb_bufmgr_ondemand.c \
85 pipebuffer/pb_bufmgr_pool.c \
86 pipebuffer/pb_bufmgr_slab.c \
87 pipebuffer/pb_validate.c \
88 rbug/rbug_connection.c \
89 rbug/rbug_context.c \
90 rbug/rbug_core.c \
91 rbug/rbug_demarshal.c \
92 rbug/rbug_texture.c \
93 rbug/rbug_shader.c \
94 rtasm/rtasm_cpu.c \
95 rtasm/rtasm_execmem.c \
96 rtasm/rtasm_ppc.c \
97 rtasm/rtasm_ppc_spe.c \
98 rtasm/rtasm_x86sse.c \
99 tgsi/tgsi_build.c \
100 tgsi/tgsi_dump.c \
101 tgsi/tgsi_exec.c \
102 tgsi/tgsi_info.c \
103 tgsi/tgsi_iterate.c \
104 tgsi/tgsi_parse.c \
105 tgsi/tgsi_ppc.c \
106 tgsi/tgsi_sanity.c \
107 tgsi/tgsi_scan.c \
108 tgsi/tgsi_sse2.c \
109 tgsi/tgsi_text.c \
110 tgsi/tgsi_transform.c \
111 tgsi/tgsi_ureg.c \
112 tgsi/tgsi_util.c \
113 translate/translate.c \
114 translate/translate_cache.c \
115 translate/translate_generic.c \
116 translate/translate_sse.c \
117 util/u_debug.c \
118 util/u_debug_describe.c \
119 util/u_debug_refcnt.c \
120 util/u_debug_stack.c \
121 util/u_debug_symbol.c \
122 util/u_dump_defines.c \
123 util/u_dump_state.c \
124 util/u_bitmask.c \
125 util/u_blit.c \
126 util/u_blitter.c \
127 util/u_cache.c \
128 util/u_caps.c \
129 util/u_cpu_detect.c \
130 util/u_dl.c \
131 util/u_draw.c \
132 util/u_draw_quad.c \
133 util/u_format.c \
134 util/u_format_other.c \
135 util/u_format_latc.c \
136 util/u_format_s3tc.c \
137 util/u_format_rgtc.c \
138 util/u_format_srgb.c \
139 util/u_format_table.c \
140 util/u_format_tests.c \
141 util/u_format_yuv.c \
142 util/u_format_zs.c \
143 util/u_framebuffer.c \
144 util/u_gen_mipmap.c \
145 util/u_half.c \
146 util/u_handle_table.c \
147 util/u_hash.c \
148 util/u_hash_table.c \
149 util/u_index_modify.c \
150 util/u_keymap.c \
151 util/u_linear.c \
152 util/u_linkage.c \
153 util/u_network.c \
154 util/u_math.c \
155 util/u_mm.c \
156 util/u_pstipple.c \
157 util/u_rect.c \
158 util/u_ringbuffer.c \
159 util/u_sampler.c \
160 util/u_simple_shaders.c \
161 util/u_slab.c \
162 util/u_snprintf.c \
163 util/u_staging.c \
164 util/u_surface.c \
165 util/u_surfaces.c \
166 util/u_texture.c \
167 util/u_tile.c \
168 util/u_transfer.c \
169 util/u_resource.c \
170 util/u_upload_mgr.c \
171 util/u_vbuf_mgr.c \
172 vl/vl_csc.c \
173 vl/vl_compositor.c \
174 vl/vl_decoder.c \
175 vl/vl_mpeg12_decoder.c \
176 vl/vl_mpeg12_bitstream.c \
177 vl/vl_zscan.c \
178 vl/vl_idct.c \
179 vl/vl_mc.c \
180 vl/vl_vertex_buffers.c \
181 vl/vl_video_buffer.c
182
183 GALLIVM_SOURCES = \
184 gallivm/lp_bld_arit.c \
185 gallivm/lp_bld_assert.c \
186 gallivm/lp_bld_bitarit.c \
187 gallivm/lp_bld_const.c \
188 gallivm/lp_bld_conv.c \
189 gallivm/lp_bld_flow.c \
190 gallivm/lp_bld_format_aos.c \
191 gallivm/lp_bld_format_soa.c \
192 gallivm/lp_bld_format_yuv.c \
193 gallivm/lp_bld_gather.c \
194 gallivm/lp_bld_init.c \
195 gallivm/lp_bld_intr.c \
196 gallivm/lp_bld_logic.c \
197 gallivm/lp_bld_pack.c \
198 gallivm/lp_bld_printf.c \
199 gallivm/lp_bld_quad.c \
200 gallivm/lp_bld_sample.c \
201 gallivm/lp_bld_sample_aos.c \
202 gallivm/lp_bld_sample_soa.c \
203 gallivm/lp_bld_struct.c \
204 gallivm/lp_bld_swizzle.c \
205 gallivm/lp_bld_tgsi_aos.c \
206 gallivm/lp_bld_tgsi_info.c \
207 gallivm/lp_bld_tgsi_soa.c \
208 gallivm/lp_bld_type.c \
209 draw/draw_llvm.c \
210 draw/draw_llvm_sample.c \
211 draw/draw_llvm_translate.c \
212 draw/draw_vs_llvm.c \
213 draw/draw_pt_fetch_shade_pipeline_llvm.c
214
215 GALLIVM_CPP_SOURCES = \
216 gallivm/lp_bld_debug.cpp \
217 gallivm/lp_bld_misc.cpp
218
219 GENERATED_SOURCES = \
220 indices/u_indices_gen.c \
221 indices/u_unfilled_gen.c \
222 util/u_format_srgb.c \
223 util/u_format_table.c \
224 util/u_half.c
225
226 include $(CLEAR_VARS)
227
228 LOCAL_SRC_FILES := $(filter-out $(GENERATED_SOURCES), $(C_SOURCES))
229
230 LOCAL_C_INCLUDES := $(GALLIUM_TOP)/auxiliary/util
231
232 LOCAL_MODULE := libmesa_gallium
233
234 # generate sources
235 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
236 intermediates := $(call local-intermediates-dir)
237 LOCAL_GENERATED_SOURCES := $(addprefix $(intermediates)/, $(GENERATED_SOURCES))
238
239 $(LOCAL_GENERATED_SOURCES): PRIVATE_PYTHON := $(MESA_PYTHON2)
240 $(LOCAL_GENERATED_SOURCES): PRIVATE_CUSTOM_TOOL = $(PRIVATE_PYTHON) $^ > $@
241
242 $(intermediates)/indices/u_indices_gen.c \
243 $(intermediates)/indices/u_unfilled_gen.c \
244 $(intermediates)/util/u_format_srgb.c \
245 $(intermediates)/util/u_half.c: $(intermediates)/%.c: $(LOCAL_PATH)/%.py
246 $(transform-generated-source)
247
248 $(intermediates)/util/u_format_table.c: $(intermediates)/%.c: $(LOCAL_PATH)/%.py $(LOCAL_PATH)/util/u_format.csv
249 $(transform-generated-source)
250
251 include $(GALLIUM_COMMON_MK)
252 include $(BUILD_STATIC_LIBRARY)