util: Include in Android builds
authorTomasz Figa <tomasz.figa@gmail.com>
Sat, 27 Sep 2014 14:19:59 +0000 (16:19 +0200)
committerEmil Velikov <emil.l.velikov@gmail.com>
Fri, 3 Oct 2014 00:25:28 +0000 (01:25 +0100)
This patch fixes Android build failures by including src/util directory
in compilation. Files inside of this directory are compiled into
libmesa_util static library and linked with resulting libGLES_mesa.

Signed-off-by: Tomasz Figa <tomasz.figa@gmail.com>
CC: <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Android.mk
src/egl/main/Android.mk
src/gallium/auxiliary/Android.mk
src/glsl/Android.mk
src/mesa/Android.libmesa_dricore.mk
src/mesa/Android.libmesa_glsl_utils.mk
src/mesa/Android.libmesa_st_mesa.mk
src/mesa/program/Android.mk
src/util/Android.mk [new file with mode: 0644]

index 591c2fc5143b6410516e1c080b75d0c4307a7327..e190f749b093735b0ff29b28268fa0bdb99716cb 100644 (file)
@@ -81,6 +81,7 @@ SUBDIRS := \
        src/mapi \
        src/glsl \
        src/mesa \
+       src/util \
        src/egl/main
 
 ifeq ($(strip $(MESA_BUILD_CLASSIC)),true)
index 8c37e798f0afcf55f368fdde43c87c9ec416e102..8537381ce16144df085ed3f384f5b3d1de178758 100644 (file)
@@ -143,6 +143,7 @@ LOCAL_STATIC_LIBRARIES := \
        libmesa_st_egl \
        $(gallium_DRIVERS) \
        libmesa_st_mesa \
+       libmesa_util \
        libmesa_glsl \
        libmesa_glsl_utils \
        libmesa_gallium \
index 11fc2256a82ad6c8485b34eb626f0bc5dc130539..8046943c1a83b7a3d01b2cea3bee467433a195d3 100644 (file)
@@ -30,7 +30,9 @@ include $(CLEAR_VARS)
 
 LOCAL_SRC_FILES := $(C_SOURCES)
 
-LOCAL_C_INCLUDES := $(GALLIUM_TOP)/auxiliary/util
+LOCAL_C_INCLUDES := \
+       $(GALLIUM_TOP)/auxiliary/util \
+       $(MESA_TOP)/src
 
 LOCAL_MODULE := libmesa_gallium
 
index 7b1fa7e532b9622f1095635e7e5525da4b715da6..1cbc5c6d2c0668982f8c5c332f50c153ddf2f9da 100644 (file)
@@ -39,6 +39,7 @@ LOCAL_SRC_FILES := \
        $(LIBGLSL_FILES)
 
 LOCAL_C_INCLUDES := \
+       $(MESA_TOP)/src \
        $(MESA_TOP)/src/mapi \
        $(MESA_TOP)/src/mesa
 
@@ -59,10 +60,11 @@ LOCAL_SRC_FILES := \
        $(GLSL_COMPILER_CXX_FILES)
 
 LOCAL_C_INCLUDES := \
+       $(MESA_TOP)/src \
        $(MESA_TOP)/src/mapi \
        $(MESA_TOP)/src/mesa
 
-LOCAL_STATIC_LIBRARIES := libmesa_glsl libmesa_glsl_utils
+LOCAL_STATIC_LIBRARIES := libmesa_glsl libmesa_glsl_utils libmesa_util
 
 LOCAL_MODULE_TAGS := eng
 LOCAL_MODULE := glsl_compiler
index 28d6feb359f139b557de15f5fdbb5edd889bb5f4..e1a5a170277e3b6eecf34be5ff52ec36b643aa3c 100644 (file)
@@ -55,6 +55,7 @@ endif
 
 LOCAL_C_INCLUDES := \
        $(call intermediates-dir-for STATIC_LIBRARIES,libmesa_program,,) \
+       $(MESA_TOP)/src \
        $(MESA_TOP)/src/mapi \
        $(MESA_TOP)/src/glsl \
        $(MESA_TOP)/src/gallium/auxiliary
index e93891f07d915b8769b2840ddf3368a642fa301e..a9f6ff59a275ea98643a005d63cc2db8fff73cca 100644 (file)
@@ -36,11 +36,11 @@ include $(CLEAR_VARS)
 LOCAL_MODULE := libmesa_glsl_utils
 
 LOCAL_C_INCLUDES := \
+       $(MESA_TOP)/src \
        $(MESA_TOP)/src/glsl \
        $(MESA_TOP)/src/mapi
 
 LOCAL_SRC_FILES := \
-       main/hash_table.c \
        main/imports.c \
        program/prog_hash_table.c \
        program/symbol_table.c
@@ -59,11 +59,11 @@ LOCAL_IS_HOST_MODULE := true
 LOCAL_CFLAGS := -D_POSIX_C_SOURCE=199309L
 
 LOCAL_C_INCLUDES := \
+       $(MESA_TOP)/src \
        $(MESA_TOP)/src/glsl \
        $(MESA_TOP)/src/mapi
 
 LOCAL_SRC_FILES := \
-       main/hash_table.c \
        main/imports.c \
        program/prog_hash_table.c \
        program/symbol_table.c
index e6374a6d815830a181d1bd7342058230fbaf52a4..e486e1a8c3b10e85628f6c152732a2b22358efaa 100644 (file)
@@ -50,6 +50,7 @@ LOCAL_C_INCLUDES := \
        $(call intermediates-dir-for STATIC_LIBRARIES,libmesa_program,,) \
        $(MESA_TOP)/src/gallium/auxiliary \
        $(MESA_TOP)/src/gallium/include \
+       $(MESA_TOP)/src \
        $(MESA_TOP)/src/glsl \
        $(MESA_TOP)/src/mapi
 
index e85afe67253039f6b5b9851deb5806869639705a..a237b65bc0865ddbabc0360f16fa2349885daae9 100644 (file)
@@ -71,6 +71,7 @@ $(intermediates)/program/lex.yy.c: $(LOCAL_PATH)/program_lexer.l
 
 LOCAL_C_INCLUDES := \
        $(intermediates) \
+       $(MESA_TOP)/src \
        $(MESA_TOP)/src/mapi \
        $(MESA_TOP)/src/mesa \
        $(MESA_TOP)/src/glsl
diff --git a/src/util/Android.mk b/src/util/Android.mk
new file mode 100644 (file)
index 0000000..6b38cf9
--- /dev/null
@@ -0,0 +1,102 @@
+# Mesa 3-D graphics library
+#
+# Copyright (C) 2014 Tomasz Figa <tomasz.figa@gmail.com>
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
+# and/or sell copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+# DEALINGS IN THE SOFTWARE.
+
+LOCAL_PATH := $(call my-dir)
+
+include $(LOCAL_PATH)/Makefile.sources
+
+# ---------------------------------------
+# Build libmesa_util
+# ---------------------------------------
+
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES := \
+       $(MESA_UTIL_FILES)
+
+LOCAL_C_INCLUDES := \
+       $(MESA_TOP)/src/mesa \
+       $(MESA_TOP)/src/mapi \
+       $(MESA_TOP)/src
+
+LOCAL_MODULE := libmesa_util
+
+# Generated sources
+
+ifeq ($(LOCAL_MODULE_CLASS),)
+LOCAL_MODULE_CLASS := STATIC_LIBRARIES
+endif
+
+intermediates := $(call local-intermediates-dir)
+
+# This is the list of auto-generated files: sources and headers
+sources := $(addprefix $(intermediates)/, $(MESA_UTIL_GENERATED_FILES))
+
+LOCAL_GENERATED_SOURCES += $(sources)
+
+FORMAT_SRGB := $(LOCAL_PATH)/format_srgb.py
+
+$(intermediates)/format_srgb.c: $(FORMAT_SRGB)
+       @$(MESA_PYTHON2) $(FORMAT_SRGB) $< > $@
+
+include $(MESA_COMMON_MK)
+include $(BUILD_STATIC_LIBRARY)
+
+# ---------------------------------------
+# Build host libmesa_util
+# ---------------------------------------
+
+include $(CLEAR_VARS)
+
+LOCAL_IS_HOST_MODULE := true
+LOCAL_CFLAGS := -D_POSIX_C_SOURCE=199309L
+
+LOCAL_SRC_FILES := \
+       $(MESA_UTIL_FILES)
+
+LOCAL_C_INCLUDES := \
+       $(MESA_TOP)/src/mesa \
+       $(MESA_TOP)/src/mapi \
+       $(MESA_TOP)/src
+
+LOCAL_MODULE := libmesa_util
+
+# Generated sources
+
+ifeq ($(LOCAL_MODULE_CLASS),)
+LOCAL_MODULE_CLASS := STATIC_LIBRARIES
+endif
+
+intermediates := $(call local-intermediates-dir)
+
+# This is the list of auto-generated files: sources and headers
+sources := $(addprefix $(intermediates)/, $(MESA_UTIL_GENERATED_FILES))
+
+LOCAL_GENERATED_SOURCES += $(sources)
+
+FORMAT_SRGB := $(LOCAL_PATH)/format_srgb.py
+
+$(intermediates)/format_srgb.c: $(FORMAT_SRGB)
+       @$(MESA_PYTHON2) $(FORMAT_SRGB) $< > $@
+
+include $(MESA_COMMON_MK)
+include $(BUILD_HOST_STATIC_LIBRARY)