summaryrefslogtreecommitdiff
path: root/src/gallium
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/Android.mk3
-rw-r--r--src/gallium/auxiliary/Android.mk217
-rw-r--r--src/gallium/drivers/Android.mk1
-rw-r--r--src/gallium/drivers/i915/Android.mk48
-rw-r--r--src/gallium/drivers/softpipe/Android.mk52
-rw-r--r--src/gallium/drivers/svga/Android.mk73
-rw-r--r--src/gallium/state_trackers/Android.mk38
-rw-r--r--src/gallium/targets/Android.mk111
-rw-r--r--src/gallium/winsys/Android.mk1
-rw-r--r--src/gallium/winsys/i915/Android.mk33
-rw-r--r--src/gallium/winsys/svga/Android.mk39
-rw-r--r--src/gallium/winsys/sw/Android.mk19
12 files changed, 635 insertions, 0 deletions
diff --git a/src/gallium/Android.mk b/src/gallium/Android.mk
new file mode 100644
index 0000000000..32f8a7af3b
--- /dev/null
+++ b/src/gallium/Android.mk
@@ -0,0 +1,3 @@
+ifeq ($(strip $(MESA_BUILD_GALLIUM)),true)
+include $(call all-subdir-makefiles)
+endif
diff --git a/src/gallium/auxiliary/Android.mk b/src/gallium/auxiliary/Android.mk
new file mode 100644
index 0000000000..f5513794ee
--- /dev/null
+++ b/src/gallium/auxiliary/Android.mk
@@ -0,0 +1,217 @@
+LOCAL_PATH := $(call my-dir)
+
+# from Makefile
+C_SOURCES = \
+ cso_cache/cso_cache.c \
+ cso_cache/cso_context.c \
+ cso_cache/cso_hash.c \
+ draw/draw_context.c \
+ draw/draw_fs.c \
+ draw/draw_gs.c \
+ draw/draw_pipe.c \
+ draw/draw_pipe_aaline.c \
+ draw/draw_pipe_aapoint.c \
+ draw/draw_pipe_clip.c \
+ draw/draw_pipe_cull.c \
+ draw/draw_pipe_flatshade.c \
+ draw/draw_pipe_offset.c \
+ draw/draw_pipe_pstipple.c \
+ draw/draw_pipe_stipple.c \
+ draw/draw_pipe_twoside.c \
+ draw/draw_pipe_unfilled.c \
+ draw/draw_pipe_util.c \
+ draw/draw_pipe_validate.c \
+ draw/draw_pipe_vbuf.c \
+ draw/draw_pipe_wide_line.c \
+ draw/draw_pipe_wide_point.c \
+ draw/draw_pt.c \
+ draw/draw_pt_emit.c \
+ draw/draw_pt_fetch.c \
+ draw/draw_pt_fetch_emit.c \
+ draw/draw_pt_fetch_shade_emit.c \
+ draw/draw_pt_fetch_shade_pipeline.c \
+ draw/draw_pt_post_vs.c \
+ draw/draw_pt_so_emit.c \
+ draw/draw_pt_util.c \
+ draw/draw_pt_vsplit.c \
+ draw/draw_vertex.c \
+ draw/draw_vs.c \
+ draw/draw_vs_aos.c \
+ draw/draw_vs_aos_io.c \
+ draw/draw_vs_aos_machine.c \
+ draw/draw_vs_exec.c \
+ draw/draw_vs_ppc.c \
+ draw/draw_vs_sse.c \
+ draw/draw_vs_varient.c \
+ indices/u_indices_gen.c \
+ indices/u_unfilled_gen.c \
+ os/os_misc.c \
+ os/os_stream.c \
+ os/os_stream_log.c \
+ os/os_stream_null.c \
+ os/os_stream_stdc.c \
+ os/os_stream_str.c \
+ os/os_time.c \
+ pipebuffer/pb_buffer_fenced.c \
+ pipebuffer/pb_buffer_malloc.c \
+ pipebuffer/pb_bufmgr_alt.c \
+ pipebuffer/pb_bufmgr_cache.c \
+ pipebuffer/pb_bufmgr_debug.c \
+ pipebuffer/pb_bufmgr_mm.c \
+ pipebuffer/pb_bufmgr_ondemand.c \
+ pipebuffer/pb_bufmgr_pool.c \
+ pipebuffer/pb_bufmgr_slab.c \
+ pipebuffer/pb_validate.c \
+ rbug/rbug_connection.c \
+ rbug/rbug_context.c \
+ rbug/rbug_core.c \
+ rbug/rbug_demarshal.c \
+ rbug/rbug_texture.c \
+ rbug/rbug_shader.c \
+ rtasm/rtasm_cpu.c \
+ rtasm/rtasm_execmem.c \
+ rtasm/rtasm_ppc.c \
+ rtasm/rtasm_ppc_spe.c \
+ rtasm/rtasm_x86sse.c \
+ tgsi/tgsi_build.c \
+ tgsi/tgsi_dump.c \
+ tgsi/tgsi_exec.c \
+ tgsi/tgsi_info.c \
+ tgsi/tgsi_iterate.c \
+ tgsi/tgsi_parse.c \
+ tgsi/tgsi_ppc.c \
+ tgsi/tgsi_sanity.c \
+ tgsi/tgsi_scan.c \
+ tgsi/tgsi_sse2.c \
+ tgsi/tgsi_text.c \
+ tgsi/tgsi_transform.c \
+ tgsi/tgsi_ureg.c \
+ tgsi/tgsi_util.c \
+ translate/translate.c \
+ translate/translate_cache.c \
+ translate/translate_generic.c \
+ translate/translate_sse.c \
+ util/u_debug.c \
+ util/u_debug_describe.c \
+ util/u_debug_refcnt.c \
+ util/u_debug_stack.c \
+ util/u_debug_symbol.c \
+ util/u_dump_defines.c \
+ util/u_dump_state.c \
+ util/u_bitmask.c \
+ util/u_blit.c \
+ util/u_blitter.c \
+ util/u_cache.c \
+ util/u_caps.c \
+ util/u_cpu_detect.c \
+ util/u_dl.c \
+ util/u_draw_quad.c \
+ util/u_format.c \
+ util/u_format_other.c \
+ util/u_format_latc.c \
+ util/u_format_s3tc.c \
+ util/u_format_rgtc.c \
+ util/u_format_srgb.c \
+ util/u_format_table.c \
+ util/u_format_tests.c \
+ util/u_format_yuv.c \
+ util/u_format_zs.c \
+ util/u_framebuffer.c \
+ util/u_gen_mipmap.c \
+ util/u_half.c \
+ util/u_handle_table.c \
+ util/u_hash.c \
+ util/u_hash_table.c \
+ util/u_index_modify.c \
+ util/u_keymap.c \
+ util/u_linear.c \
+ util/u_linkage.c \
+ util/u_network.c \
+ util/u_math.c \
+ util/u_mm.c \
+ util/u_pstipple.c \
+ util/u_rect.c \
+ util/u_ringbuffer.c \
+ util/u_sampler.c \
+ util/u_simple_shaders.c \
+ util/u_slab.c \
+ util/u_snprintf.c \
+ util/u_staging.c \
+ util/u_surface.c \
+ util/u_surfaces.c \
+ util/u_texture.c \
+ util/u_tile.c \
+ util/u_transfer.c \
+ util/u_resource.c \
+ util/u_upload_mgr.c \
+ util/u_vbuf_mgr.c
+
+GENERATED_SOURCES = \
+ indices/u_indices_gen.c \
+ indices/u_unfilled_gen.c \
+ util/u_format_srgb.c \
+ util/u_format_table.c \
+ util/u_half.c
+
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+ $(filter-out $(GENERATED_SOURCES), $(C_SOURCES))
+
+LOCAL_CFLAGS := \
+ -fvisibility=hidden \
+ -Wno-sign-compare
+
+LOCAL_C_INCLUDES := \
+ external/mesa/include \
+ external/mesa/src/gallium/include \
+ external/mesa/src/gallium/auxiliary \
+ external/mesa/src/gallium/drivers \
+ external/mesa/src/gallium/auxiliary/util
+
+LOCAL_MODULE := libmesa_gallium
+LOCAL_MODULE_CLASS := STATIC_LIBRARIES
+
+intermediates := $(call local-intermediates-dir)
+
+GEN_SCRIPT := $(LOCAL_PATH)/indices/u_indices_gen.py
+GEN := $(intermediates)/indices/u_indices_gen.c
+$(GEN): PRIVATE_CUSTOM_TOOL = python $< > $@
+$(GEN): $(GEN_SCRIPT)
+ $(transform-generated-source)
+
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+GEN_SCRIPT := $(LOCAL_PATH)/indices/u_unfilled_gen.py
+GEN := $(intermediates)/indices/u_unfilled_gen.c
+$(GEN): PRIVATE_CUSTOM_TOOL = python $< > $@
+$(GEN): $(GEN_SCRIPT)
+ $(transform-generated-source)
+
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+GEN_SCRIPT := $(LOCAL_PATH)/util/u_format_srgb.py
+GEN := $(intermediates)/util/u_format_srgb.c
+$(GEN): PRIVATE_CUSTOM_TOOL = python $< > $@
+$(GEN): $(GEN_SCRIPT)
+ $(transform-generated-source)
+
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+GEN_SCRIPT := $(LOCAL_PATH)/util/u_format_table.py
+GEN := $(intermediates)/util/u_format_table.c
+$(GEN): PRIVATE_CUSTOM_TOOL := python $(GEN_SCRIPT) $(LOCAL_PATH)/util/u_format.csv > $(GEN)
+$(GEN): $(GEN_SCRIPT) $(LOCAL_PATH)/util/u_format.csv
+ $(transform-generated-source)
+
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+GEN_SCRIPT := $(LOCAL_PATH)/util/u_half.py
+GEN := $(intermediates)/util/u_half.c
+$(GEN): PRIVATE_CUSTOM_TOOL = python $< > $@
+$(GEN): $(GEN_SCRIPT)
+ $(transform-generated-source)
+
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+include $(BUILD_STATIC_LIBRARY)
diff --git a/src/gallium/drivers/Android.mk b/src/gallium/drivers/Android.mk
new file mode 100644
index 0000000000..5053e7d643
--- /dev/null
+++ b/src/gallium/drivers/Android.mk
@@ -0,0 +1 @@
+include $(call all-subdir-makefiles)
diff --git a/src/gallium/drivers/i915/Android.mk b/src/gallium/drivers/i915/Android.mk
new file mode 100644
index 0000000000..f2c1e5b5f8
--- /dev/null
+++ b/src/gallium/drivers/i915/Android.mk
@@ -0,0 +1,48 @@
+ifeq ($(strip $(MESA_BUILD_I915G)),true)
+
+LOCAL_PATH := $(call my-dir)
+
+# from Makefile
+C_SOURCES = \
+ i915_blit.c \
+ i915_clear.c \
+ i915_flush.c \
+ i915_context.c \
+ i915_debug.c \
+ i915_debug_fp.c \
+ i915_state.c \
+ i915_state_immediate.c \
+ i915_state_dynamic.c \
+ i915_state_derived.c \
+ i915_state_emit.c \
+ i915_state_fpc.c \
+ i915_state_sampler.c \
+ i915_state_static.c \
+ i915_screen.c \
+ i915_prim_emit.c \
+ i915_prim_vbuf.c \
+ i915_resource.c \
+ i915_resource_texture.c \
+ i915_resource_buffer.c \
+ i915_fpc_emit.c \
+ i915_fpc_translate.c \
+ i915_surface.c
+
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+ $(C_SOURCES)
+
+LOCAL_CFLAGS := \
+ -fvisibility=hidden \
+ -Wno-sign-compare
+
+LOCAL_C_INCLUDES := \
+ external/mesa/src/gallium/include \
+ external/mesa/src/gallium/auxiliary
+
+LOCAL_MODULE := libmesa_pipe_i915
+
+include $(BUILD_STATIC_LIBRARY)
+
+endif # MESA_BUILD_I915G
diff --git a/src/gallium/drivers/softpipe/Android.mk b/src/gallium/drivers/softpipe/Android.mk
new file mode 100644
index 0000000000..d8a00f4492
--- /dev/null
+++ b/src/gallium/drivers/softpipe/Android.mk
@@ -0,0 +1,52 @@
+LOCAL_PATH := $(call my-dir)
+
+# from Makefile
+C_SOURCES = \
+ sp_fs_exec.c \
+ sp_fs_sse.c \
+ sp_clear.c \
+ sp_fence.c \
+ sp_flush.c \
+ sp_query.c \
+ sp_context.c \
+ sp_draw_arrays.c \
+ sp_prim_vbuf.c \
+ sp_quad_pipe.c \
+ sp_quad_stipple.c \
+ sp_quad_depth_test.c \
+ sp_quad_fs.c \
+ sp_quad_blend.c \
+ sp_screen.c \
+ sp_setup.c \
+ sp_state_blend.c \
+ sp_state_clip.c \
+ sp_state_derived.c \
+ sp_state_sampler.c \
+ sp_state_shader.c \
+ sp_state_so.c \
+ sp_state_rasterizer.c \
+ sp_state_surface.c \
+ sp_state_vertex.c \
+ sp_texture.c \
+ sp_tex_sample.c \
+ sp_tex_tile_cache.c \
+ sp_tile_cache.c \
+ sp_surface.c
+
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+ $(C_SOURCES)
+
+LOCAL_CFLAGS := \
+ -fvisibility=hidden \
+ -Wno-sign-compare
+
+LOCAL_C_INCLUDES := \
+ external/mesa/include \
+ external/mesa/src/gallium/include \
+ external/mesa/src/gallium/auxiliary
+
+LOCAL_MODULE := libmesa_pipe_softpipe
+
+include $(BUILD_STATIC_LIBRARY)
diff --git a/src/gallium/drivers/svga/Android.mk b/src/gallium/drivers/svga/Android.mk
new file mode 100644
index 0000000000..c39ee19086
--- /dev/null
+++ b/src/gallium/drivers/svga/Android.mk
@@ -0,0 +1,73 @@
+ifeq ($(strip $(MESA_BUILD_VMWGFX)),true)
+
+LOCAL_PATH := $(call my-dir)
+
+# from Makefile
+C_SOURCES = \
+ svgadump/svga_shader_dump.c \
+ svgadump/svga_shader_op.c \
+ svgadump/svga_dump.c \
+ svga_cmd.c \
+ svga_context.c \
+ svga_draw.c \
+ svga_draw_arrays.c \
+ svga_draw_elements.c \
+ svga_pipe_blend.c \
+ svga_pipe_blit.c \
+ svga_pipe_clear.c \
+ svga_pipe_constants.c \
+ svga_pipe_depthstencil.c \
+ svga_pipe_draw.c \
+ svga_pipe_flush.c \
+ svga_pipe_fs.c \
+ svga_pipe_misc.c \
+ svga_pipe_query.c \
+ svga_pipe_rasterizer.c \
+ svga_pipe_sampler.c \
+ svga_pipe_vertex.c \
+ svga_pipe_vs.c \
+ svga_screen.c \
+ svga_screen_cache.c \
+ svga_state.c \
+ svga_state_need_swtnl.c \
+ svga_state_constants.c \
+ svga_state_framebuffer.c \
+ svga_state_rss.c \
+ svga_state_tss.c \
+ svga_state_vdecl.c \
+ svga_state_fs.c \
+ svga_state_vs.c \
+ svga_swtnl_backend.c \
+ svga_swtnl_draw.c \
+ svga_swtnl_state.c \
+ svga_tgsi.c \
+ svga_tgsi_decl_sm20.c \
+ svga_tgsi_decl_sm30.c \
+ svga_tgsi_insn.c \
+ svga_sampler_view.c \
+ svga_surface.c \
+ svga_resource.c \
+ svga_resource_texture.c \
+ svga_resource_buffer.c \
+ svga_resource_buffer_upload.c
+
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+ $(C_SOURCES)
+
+LOCAL_CFLAGS := \
+ -fvisibility=hidden \
+ -Wno-sign-compare
+
+LOCAL_C_INCLUDES := \
+ external/mesa/include \
+ external/mesa/src/gallium/include \
+ external/mesa/src/gallium/auxiliary \
+ external/mesa/src/gallium/drivers/svga/include
+
+LOCAL_MODULE := libmesa_pipe_svga
+
+include $(BUILD_STATIC_LIBRARY)
+
+endif # MESA_BUILD_VMWGFX
diff --git a/src/gallium/state_trackers/Android.mk b/src/gallium/state_trackers/Android.mk
new file mode 100644
index 0000000000..e0ae537505
--- /dev/null
+++ b/src/gallium/state_trackers/Android.mk
@@ -0,0 +1,38 @@
+LOCAL_PATH := $(call my-dir)
+
+common_SOURCES := \
+ egl/common/egl_g3d.c \
+ egl/common/egl_g3d_api.c \
+ egl/common/egl_g3d_image.c \
+ egl/common/egl_g3d_st.c \
+ egl/common/egl_g3d_sync.c \
+ egl/common/native_helper.c
+
+android_SOURCES := \
+ egl/android/native_android.cpp
+
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+ $(common_SOURCES) \
+ $(android_SOURCES)
+
+LOCAL_CFLAGS := \
+ -DHAVE_ANDROID_BACKEND \
+ -fvisibility=hidden \
+ -Wno-sign-compare
+
+LOCAL_C_INCLUDES := \
+ external/mesa/include \
+ external/mesa/src/gallium/include \
+ external/mesa/src/gallium/auxiliary \
+ external/mesa/src/egl/main \
+ external/mesa/src/gallium/state_trackers/egl \
+ external/mesa/src/gallium/winsys/sw \
+ external/mesa/src/gralloc \
+ external/drm \
+ external/drm/include/drm
+
+LOCAL_MODULE := libmesa_st_egl
+
+include $(BUILD_STATIC_LIBRARY)
diff --git a/src/gallium/targets/Android.mk b/src/gallium/targets/Android.mk
new file mode 100644
index 0000000000..f37ed1e6a2
--- /dev/null
+++ b/src/gallium/targets/Android.mk
@@ -0,0 +1,111 @@
+# Android.mk for Gallium EGL and gralloc
+
+LOCAL_PATH := $(call my-dir)
+
+# EGL
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+ egl-static/egl.c \
+ egl-static/egl_pipe.c \
+ egl-static/egl_st.c
+
+LOCAL_CFLAGS := \
+ -DFEATURE_ES1=1 \
+ -DFEATURE_ES2=1 \
+ -DGALLIUM_SOFTPIPE \
+ -D_EGL_MAIN=_eglBuiltInDriverGALLIUM \
+ -fvisibility=hidden \
+ -Wno-sign-compare
+
+LOCAL_C_INCLUDES := \
+ external/mesa/include \
+ external/mesa/src/gallium/include \
+ external/mesa/src/gallium/auxiliary \
+ external/mesa/src/gallium/drivers \
+ external/mesa/src/gallium/winsys \
+ external/mesa/src/gallium/state_trackers/vega \
+ external/mesa/src/gallium/state_trackers/egl \
+ external/mesa/src/egl/main \
+ external/mesa/src/mesa
+
+LOCAL_STATIC_LIBRARIES := \
+ libmesa_st_egl \
+ libmesa_winsys_sw \
+ libmesa_pipe_softpipe \
+ libmesa_st_mesa \
+ libmesa_glsl \
+ libmesa_st_mesa \
+ libmesa_talloc \
+ libmesa_gallium
+
+LOCAL_WHOLE_STATIC_LIBRARIES := \
+ libmesa_egl
+
+LOCAL_SHARED_LIBRARIES := \
+ libglapi \
+ libdl \
+ libhardware \
+ liblog \
+ libcutils
+
+ifeq ($(strip $(MESA_BUILD_CLASSIC)),true)
+LOCAL_STATIC_LIBRARIES := \
+ libmesa_classic_egl \
+ $(LOCAL_STATIC_LIBRARIES)
+LOCAL_SHARED_LIBRARIES += libdrm
+endif # MESA_BUILD_CLASSIC
+
+ifeq ($(strip $(MESA_BUILD_I915G)),true)
+LOCAL_CFLAGS += -D_EGL_PIPE_I915
+LOCAL_STATIC_LIBRARIES := \
+ libmesa_winsys_i915 \
+ libmesa_pipe_i915 \
+ $(LOCAL_STATIC_LIBRARIES)
+LOCAL_SHARED_LIBRARIES += \
+ libdrm \
+ libdrm_intel
+endif # MESA_BUILD_I915G
+
+LOCAL_MODULE := libGLES_mesa
+LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/egl
+
+include $(BUILD_SHARED_LIBRARY)
+
+# gralloc (broken!)
+ifeq ($(strip $(MESA_BUILD_VMWGFX)),true)
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := egl/egl_pipe.c
+
+LOCAL_CFLAGS := \
+ -D_EGL_PIPE_VMWGFX=1 \
+ -fvisibility=hidden \
+ -Wno-sign-compare
+
+LOCAL_C_INCLUDES := \
+ external/mesa/src/gallium/include \
+ external/mesa/src/gallium/auxiliary \
+ external/mesa/src/gallium/drivers \
+ external/mesa/src/gallium/winsys
+
+LOCAL_STATIC_LIBRARIES := \
+ libmesa_pipe_svga \
+ libmesa_winsys_svga \
+ libmesa_gallium
+
+LOCAL_WHOLE_STATIC_LIBRARIES := \
+ libmesa_st_gralloc
+
+LOCAL_SHARED_LIBRARIES := \
+ libdl \
+ liblog \
+ libcutils \
+ libdrm \
+ libEGL
+
+LOCAL_MODULE := gralloc.mesa
+LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw
+
+include $(BUILD_SHARED_LIBRARY)
+endif # MESA_BUILD_VMWGFX
diff --git a/src/gallium/winsys/Android.mk b/src/gallium/winsys/Android.mk
new file mode 100644
index 0000000000..5053e7d643
--- /dev/null
+++ b/src/gallium/winsys/Android.mk
@@ -0,0 +1 @@
+include $(call all-subdir-makefiles)
diff --git a/src/gallium/winsys/i915/Android.mk b/src/gallium/winsys/i915/Android.mk
new file mode 100644
index 0000000000..1810b76e54
--- /dev/null
+++ b/src/gallium/winsys/i915/Android.mk
@@ -0,0 +1,33 @@
+ifeq ($(strip $(MESA_BUILD_I915G)),true)
+
+LOCAL_PATH := $(call my-dir)
+
+# from drm/Makefile
+C_SOURCES = \
+ i915_drm_batchbuffer.c \
+ i915_drm_buffer.c \
+ i915_drm_fence.c \
+ i915_drm_winsys.c
+
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+ $(addprefix drm/, $(C_SOURCES))
+
+LOCAL_CFLAGS := \
+ -fvisibility=hidden \
+ -Wno-sign-compare
+
+LOCAL_C_INCLUDES := \
+ external/mesa/src/gallium/include \
+ external/mesa/src/gallium/auxiliary \
+ external/mesa/src/gallium/drivers \
+ external/drm \
+ external/drm/include/drm \
+ external/drm/intel
+
+LOCAL_MODULE := libmesa_winsys_i915
+
+include $(BUILD_STATIC_LIBRARY)
+
+endif # MESA_BUILD_I915G
diff --git a/src/gallium/winsys/svga/Android.mk b/src/gallium/winsys/svga/Android.mk
new file mode 100644
index 0000000000..61c99fb524
--- /dev/null
+++ b/src/gallium/winsys/svga/Android.mk
@@ -0,0 +1,39 @@
+ifeq ($(strip $(MESA_BUILD_VMWGFX)),true)
+
+LOCAL_PATH := $(call my-dir)
+
+# from drm/Makefile
+C_SOURCES = \
+ vmw_buffer.c \
+ vmw_context.c \
+ vmw_fence.c \
+ vmw_screen.c \
+ vmw_screen_dri.c \
+ vmw_screen_ioctl.c \
+ vmw_screen_pools.c \
+ vmw_screen_svga.c \
+ vmw_surface.c
+
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+ $(addprefix drm/, $(C_SOURCES))
+
+LOCAL_CFLAGS := \
+ -fvisibility=hidden \
+ -Wno-sign-compare
+
+LOCAL_C_INCLUDES := \
+ external/mesa/include \
+ external/mesa/src/gallium/include \
+ external/mesa/src/gallium/auxiliary \
+ external/mesa/src/gallium/drivers/svga \
+ external/mesa/src/gallium/drivers/svga/include \
+ external/drm \
+ external/drm/include/drm
+
+LOCAL_MODULE := libmesa_winsys_svga
+
+include $(BUILD_STATIC_LIBRARY)
+
+endif # MESA_BUILD_VMWGFX
diff --git a/src/gallium/winsys/sw/Android.mk b/src/gallium/winsys/sw/Android.mk
new file mode 100644
index 0000000000..368d9ee975
--- /dev/null
+++ b/src/gallium/winsys/sw/Android.mk
@@ -0,0 +1,19 @@
+LOCAL_PATH := $(call my-dir)
+
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+ android/android_sw_winsys.cpp
+
+LOCAL_CFLAGS := \
+ -fvisibility=hidden \
+ -Wno-sign-compare
+
+LOCAL_C_INCLUDES := \
+ external/mesa/include \
+ external/mesa/src/gallium/include \
+ external/mesa/src/gallium/auxiliary
+
+LOCAL_MODULE := libmesa_winsys_sw
+
+include $(BUILD_STATIC_LIBRARY)