OSDN Git Service

i965: add build rule for brw_nir_trig_workarounds.c on Android
authorRob Herring <robh@kernel.org>
Tue, 19 Apr 2016 19:51:02 +0000 (14:51 -0500)
committerEmil Velikov <emil.l.velikov@gmail.com>
Thu, 21 Apr 2016 13:43:26 +0000 (14:43 +0100)
Commit bfd17c76c126 ("i965: Port INTEL_PRECISE_TRIG=1 to NIR.") added a
generated file brw_nir_trig_workarounds.c which broke the Android build.
Add the necessary makefiles to the Android build.

Cc: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Rob Herring <robh@kernel.org>
Tested-by: Chih-Wei Huang <cwhuang@linux.org.tw>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
src/mesa/drivers/dri/i965/Android.gen.mk [new file with mode: 0644]
src/mesa/drivers/dri/i965/Android.mk
src/mesa/drivers/dri/i965/Makefile.am
src/mesa/drivers/dri/i965/Makefile.sources

diff --git a/src/mesa/drivers/dri/i965/Android.gen.mk b/src/mesa/drivers/dri/i965/Android.gen.mk
new file mode 100644 (file)
index 0000000..be00575
--- /dev/null
@@ -0,0 +1,38 @@
+#
+# Copyright (C) 2016 Linaro, Ltd., Rob Herring <robh@kernel.org>
+#
+# 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.
+#
+
+ifeq ($(LOCAL_MODULE_CLASS),)
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+endif
+
+brw_nir_trig_workarounds_deps := \
+       $(LOCAL_PATH)/brw_nir_trig_workarounds.py \
+       $(MESA_TOP)/src/compiler/nir/nir_algebraic.py
+
+intermediates := $(call local-generated-sources-dir)
+
+$(intermediates)/brw_nir_trig_workarounds.c: $(brw_nir_trig_workarounds_deps)
+       @mkdir -p $(dir $@)
+       $(hide) PYTHONPATH=$(MESA_TOP)/src/compiler/nir $(MESA_PYTHON2) $< > $@
+
+LOCAL_GENERATED_SOURCES += $(addprefix $(intermediates)/, \
+       $(i965_compiler_GENERATED_FILES))
index 056b223..9fd3a30 100644 (file)
@@ -62,5 +62,7 @@ LOCAL_GENERATED_SOURCES := \
        $(MESA_DRI_OPTIONS_H) \
        $(MESA_GEN_NIR_H)
 
+include $(LOCAL_PATH)/Android.gen.mk
+
 include $(MESA_COMMON_MK)
 include $(BUILD_SHARED_LIBRARY)
index a41c830..c7f055d 100644 (file)
@@ -50,7 +50,12 @@ noinst_LTLIBRARIES = libi965_dri.la libi965_compiler.la
 libi965_dri_la_SOURCES = $(i965_FILES)
 libi965_dri_la_LIBADD = libi965_compiler.la $(INTEL_LIBS)
 
-libi965_compiler_la_SOURCES = $(i965_compiler_FILES)
+libi965_compiler_la_SOURCES = \
+       $(i965_compiler_FILES) \
+       $(i965_compiler_GENERATED_FILES)
+
+BUILT_SOURCES += $(i965_compiler_GENERATED_FILES)
+CLEANFILES += $(BUILT_SOURCES)
 
 TEST_LIBS = \
        libi965_compiler.la \
index 72d0e07..632f2e9 100644 (file)
@@ -44,7 +44,6 @@ i965_compiler_FILES = \
        brw_nir.c \
        brw_nir_analyze_boolean_resolves.c \
        brw_nir_attribute_workarounds.c \
-       brw_nir_trig_workarounds.c \
        brw_nir_opt_peephole_ffma.c \
        brw_nir_uniforms.cpp \
        brw_packed_float.c \
@@ -92,6 +91,9 @@ i965_compiler_FILES = \
        intel_resolve_map.c \
        intel_resolve_map.h
 
+i965_compiler_GENERATED_FILES = \
+       brw_nir_trig_workarounds.c
+
 i965_FILES = \
        brw_binding_tables.c \
        brw_blorp_blit.cpp \