X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fglsl%2FAndroid.gen.mk;h=0835871f9126353bf07f8e13415a4f131ebf5c53;hb=f649afc9ddabfc70a5f9861e6daa2cb996461f45;hp=e4ccb7291ef0cbf716644c217925af238d76cde7;hpb=f8e6d19f3f40931be741b44d3edf210c38e13f0f;p=mesa.git diff --git a/src/glsl/Android.gen.mk b/src/glsl/Android.gen.mk index e4ccb7291ef..0835871f912 100644 --- a/src/glsl/Android.gen.mk +++ b/src/glsl/Android.gen.mk @@ -27,21 +27,29 @@ ifeq ($(LOCAL_MODULE_CLASS),) LOCAL_MODULE_CLASS := STATIC_LIBRARIES endif -intermediates := $(call local-intermediates-dir) +intermediates := $(call local-generated-sources-dir) sources := \ glsl_lexer.cpp \ glsl_parser.cpp \ glcpp/glcpp-lex.c \ - glcpp/glcpp-parse.c - -ifneq ($(LOCAL_IS_HOST_MODULE),true) -sources += builtin_function.cpp -endif + glcpp/glcpp-parse.c \ + nir/nir_builder_opcodes.h \ + nir/nir_constant_expressions.c \ + nir/nir_opcodes.c \ + nir/nir_opcodes.h \ + nir/nir_opt_algebraic.c LOCAL_SRC_FILES := $(filter-out $(sources), $(LOCAL_SRC_FILES)) -LOCAL_C_INCLUDES += $(intermediates) $(intermediates)/glcpp $(MESA_TOP)/src/glsl/glcpp +LOCAL_C_INCLUDES += \ + $(intermediates)/glcpp \ + $(intermediates)/nir \ + $(MESA_TOP)/src/glsl/glcpp \ + $(MESA_TOP)/src/glsl/nir + +LOCAL_EXPORT_C_INCLUDE_DIRS += \ + $(intermediates)/nir sources := $(addprefix $(intermediates)/, $(sources)) LOCAL_GENERATED_SOURCES += $(sources) @@ -52,10 +60,10 @@ define local-l-or-ll-to-c-or-cpp $(hide) $(LEX) --nounistd -o$@ $< endef -define local-y-to-c-and-h +define glsl_local-y-to-c-and-h @mkdir -p $(dir $@) @echo "Mesa Yacc: $(PRIVATE_MODULE) <= $<" - $(hide) $(YACC) -o $@ $< + $(hide) $(YACC) -o $@ -p "glcpp_parser_" $< endef define local-yy-to-cpp-and-h @@ -80,19 +88,52 @@ $(intermediates)/glcpp/glcpp-lex.c: $(LOCAL_PATH)/glcpp/glcpp-lex.l $(call local-l-or-ll-to-c-or-cpp) $(intermediates)/glcpp/glcpp-parse.c: $(LOCAL_PATH)/glcpp/glcpp-parse.y - $(call local-y-to-c-and-h) + $(call glsl_local-y-to-c-and-h) + +nir_builder_opcodes_gen := $(LOCAL_PATH)/nir/nir_builder_opcodes_h.py +nir_builder_opcodes_deps := \ + $(LOCAL_PATH)/nir/nir_opcodes.py \ + $(LOCAL_PATH)/nir/nir_builder_opcodes_h.py -BUILTIN_COMPILER := $(BUILD_OUT_EXECUTABLES)/mesa_builtin_compiler$(BUILD_EXECUTABLE_SUFFIX) +$(intermediates)/nir/nir_builder_opcodes.h: $(nir_builder_opcodes_deps) + @mkdir -p $(dir $@) + $(hide) $(MESA_PYTHON2) $(nir_builder_opcodes_gen) $< > $@ + +nir_constant_expressions_gen := $(LOCAL_PATH)/nir/nir_constant_expressions.py +nir_constant_expressions_deps := \ + $(LOCAL_PATH)/nir/nir_opcodes.py \ + $(LOCAL_PATH)/nir/nir_constant_expressions.py \ + $(LOCAL_PATH)/nir/nir_constant_expressions.h + +$(intermediates)/nir/nir_constant_expressions.c: $(nir_constant_expressions_deps) + @mkdir -p $(dir $@) + $(hide) $(MESA_PYTHON2) $(nir_constant_expressions_gen) $< > $@ + +nir_opcodes_h_gen := $(LOCAL_PATH)/nir/nir_opcodes_h.py +nir_opcodes_h_deps := \ + $(LOCAL_PATH)/nir/nir_opcodes.py \ + $(LOCAL_PATH)/nir/nir_opcodes_h.py + +$(intermediates)/nir/nir_opcodes.h: $(nir_opcodes_h_deps) + @mkdir -p $(dir $@) + $(hide) $(MESA_PYTHON2) $(nir_opcodes_h_gen) $< > $@ + +$(LOCAL_PATH)/nir/nir.h: $(intermediates)/nir/nir_opcodes.h + +nir_opcodes_c_gen := $(LOCAL_PATH)/nir/nir_opcodes_c.py +nir_opcodes_c_deps := \ + $(LOCAL_PATH)/nir/nir_opcodes.py \ + $(LOCAL_PATH)/nir/nir_opcodes_c.py + +$(intermediates)/nir/nir_opcodes.c: $(nir_opcodes_c_deps) + @mkdir -p $(dir $@) + $(hide) $(MESA_PYTHON2) $(nir_opcodes_c_gen) $< > $@ -builtin_function_deps := \ - $(LOCAL_PATH)/builtins/tools/generate_builtins.py \ - $(LOCAL_PATH)/builtins/tools/texture_builtins.py \ - $(BUILTIN_COMPILER) \ - $(wildcard $(LOCAL_PATH)/builtins/profiles/*) \ - $(wildcard $(LOCAL_PATH)/builtins/ir/*) +nir_opt_algebraic_gen := $(LOCAL_PATH)/nir/nir_opt_algebraic.py +nir_opt_algebraic_deps := \ + $(LOCAL_PATH)/nir/nir_opt_algebraic.py \ + $(LOCAL_PATH)/nir/nir_algebraic.py -$(intermediates)/builtin_function.cpp: PRIVATE_SCRIPT := $(MESA_PYTHON2) $(LOCAL_PATH)/builtins/tools/generate_builtins.py -$(intermediates)/builtin_function.cpp: $(builtin_function_deps) +$(intermediates)/nir/nir_opt_algebraic.c: $(nir_opt_algebraic_deps) @mkdir -p $(dir $@) - @echo "Gen GLSL: $(PRIVATE_MODULE) <= $(notdir $@)" - $(hide) $(PRIVATE_SCRIPT) $(BUILTIN_COMPILER) > $@ || rm -f $@ + $(hide) $(MESA_PYTHON2) $(nir_opt_algebraic_gen) $< > $@