[Mesa-dev] [PATCH v2] i965: add build rule for brw_nir_trig_workarounds.c on Android

Rob Herring robh at kernel.org
Tue Apr 19 19:51:02 UTC 2016


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 at whitecape.org>
Cc: Emil Velikov <emil.velikov at collabora.com>
Signed-off-by: Rob Herring <robh at kernel.org>
---
 src/mesa/drivers/dri/i965/Android.gen.mk   | 38 ++++++++++++++++++++++++++++++
 src/mesa/drivers/dri/i965/Android.mk       |  2 ++
 src/mesa/drivers/dri/i965/Makefile.am      |  7 +++++-
 src/mesa/drivers/dri/i965/Makefile.sources |  4 +++-
 4 files changed, 49 insertions(+), 2 deletions(-)
 create mode 100644 src/mesa/drivers/dri/i965/Android.gen.mk

diff --git a/src/mesa/drivers/dri/i965/Android.gen.mk b/src/mesa/drivers/dri/i965/Android.gen.mk
new file mode 100644
index 0000000..be00575
--- /dev/null
+++ b/src/mesa/drivers/dri/i965/Android.gen.mk
@@ -0,0 +1,38 @@
+#
+# Copyright (C) 2016 Linaro, Ltd., Rob Herring <robh at 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))
diff --git a/src/mesa/drivers/dri/i965/Android.mk b/src/mesa/drivers/dri/i965/Android.mk
index 056b223..9fd3a30 100644
--- a/src/mesa/drivers/dri/i965/Android.mk
+++ b/src/mesa/drivers/dri/i965/Android.mk
@@ -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)
diff --git a/src/mesa/drivers/dri/i965/Makefile.am b/src/mesa/drivers/dri/i965/Makefile.am
index a41c830..c7f055d 100644
--- a/src/mesa/drivers/dri/i965/Makefile.am
+++ b/src/mesa/drivers/dri/i965/Makefile.am
@@ -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 \
diff --git a/src/mesa/drivers/dri/i965/Makefile.sources b/src/mesa/drivers/dri/i965/Makefile.sources
index 2619e43..234d6e1 100644
--- a/src/mesa/drivers/dri/i965/Makefile.sources
+++ b/src/mesa/drivers/dri/i965/Makefile.sources
@@ -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 \
@@ -91,6 +90,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 \
-- 
2.7.4



More information about the mesa-dev mailing list