Android.mk revision 688db6e8dc1507021cd84733ea379e97f0265351
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
24LOCAL_PATH := $(call my-dir)
25
26# from Makefile
27C_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
183GALLIVM_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
215GALLIVM_CPP_SOURCES = \
216	gallivm/lp_bld_debug.cpp \
217	gallivm/lp_bld_misc.cpp
218
219GENERATED_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
226include $(CLEAR_VARS)
227
228LOCAL_SRC_FILES := $(filter-out $(GENERATED_SOURCES), $(C_SOURCES))
229
230LOCAL_C_INCLUDES := $(GALLIUM_TOP)/auxiliary/util
231
232LOCAL_MODULE := libmesa_gallium
233
234# generate sources
235LOCAL_MODULE_CLASS := STATIC_LIBRARIES
236intermediates := $(call local-intermediates-dir)
237LOCAL_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
251include $(GALLIUM_COMMON_MK)
252include $(BUILD_STATIC_LIBRARY)
253