X-Git-Url: https://git.libre-soc.org/?p=mesa.git;a=blobdiff_plain;f=src%2Famd%2FAndroid.common.mk;h=6b83f39662fe01993b4c27d292abff95b5f6c283;hp=18ace02b90c19fdc829b04d26d98bde4a5f92798;hb=408fc4e3ac9aea0188c385b89ad888ba0f13bd94;hpb=e2ff12e919b5f887083225d96f4060a122c12eab diff --git a/src/amd/Android.common.mk b/src/amd/Android.common.mk index 18ace02b90c..6b83f39662f 100644 --- a/src/amd/Android.common.mk +++ b/src/amd/Android.common.mk @@ -20,6 +20,8 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS # IN THE SOFTWARE. +ifeq ($(MESA_ENABLE_LLVM),true) + # --------------------------------------- # Build libmesa_amd_common # --------------------------------------- @@ -29,7 +31,8 @@ include $(CLEAR_VARS) LOCAL_MODULE := libmesa_amd_common LOCAL_SRC_FILES := \ - $(AMD_COMPILER_FILES) \ + $(AMD_COMMON_FILES) \ + $(AMD_COMMON_LLVM_FILES) \ $(AMD_DEBUG_FILES) LOCAL_CFLAGS += -DFORCE_BUILD_AMDGPU # instructs LLVM to declare LLVMInitializeAMDGPU* functions @@ -39,33 +42,82 @@ LOCAL_MODULE_CLASS := STATIC_LIBRARIES intermediates := $(call local-generated-sources-dir) LOCAL_GENERATED_SOURCES := $(addprefix $(intermediates)/, $(AMD_GENERATED_FILES)) -$(LOCAL_GENERATED_SOURCES): PRIVATE_PYTHON := $(MESA_PYTHON2) -$(LOCAL_GENERATED_SOURCES): PRIVATE_CUSTOM_TOOL = $(PRIVATE_PYTHON) $^ > $@ +SID_TABLES := $(LOCAL_PATH)/common/sid_tables.py + +SID_TABLES_INPUTS := \ + $(LOCAL_PATH)/common/sid.h \ + $(LOCAL_PATH)/registers/amdgfxregs.json \ + $(LOCAL_PATH)/registers/pkt3.json \ + $(LOCAL_PATH)/registers/gfx10.json \ + $(LOCAL_PATH)/registers/gfx10-rsrc.json + +$(intermediates)/common/sid_tables.h: $(SID_TABLES) $(SID_TABLES_INPUTS) + @mkdir -p $(dir $@) + @echo "Gen Header: $(PRIVATE_MODULE) <= $(notdir $(@))" + $(hide) $(MESA_PYTHON2) $(SID_TABLES) $(SID_TABLES_INPUTS) > $@ || ($(RM) $@; false) + +AMDGFXREGS := $(LOCAL_PATH)/registers/makeregheader.py + +AMDGFXREGS_INPUTS := \ + $(LOCAL_PATH)/registers/gfx6.json \ + $(LOCAL_PATH)/registers/gfx7.json \ + $(LOCAL_PATH)/registers/gfx8.json \ + $(LOCAL_PATH)/registers/gfx81.json \ + $(LOCAL_PATH)/registers/gfx9.json \ + $(LOCAL_PATH)/registers/gfx10.json \ + $(LOCAL_PATH)/registers/gfx103.json \ + $(LOCAL_PATH)/registers/pkt3.json \ + $(LOCAL_PATH)/registers/gfx10-rsrc.json \ + $(LOCAL_PATH)/registers/registers-manually-defined.json + +$(intermediates)/common/amdgfxregs.h: $(AMDGFXREGS) $(AMDGFXREGS_INPUTS) + @mkdir -p $(dir $@) + @echo "Gen Header: $(PRIVATE_MODULE) <= $(notdir $(@))" + $(hide) $(MESA_PYTHON2) $(AMDGFXREGS) $(AMDGFXREGS_INPUTS) --sort address --guard AMDGFXREGS_H > $@ || ($(RM) $@; false) -$(intermediates)/common/sid_tables.h: $(LOCAL_PATH)/common/sid_tables.py $(MESA_TOP)/src/amd/common/sid.h - $(transform-generated-source) +GEN10_FORMAT_TABLE_INPUTS := \ + $(MESA_TOP)/src/util/format/u_format.csv \ + $(MESA_TOP)/src/amd/registers/gfx10-rsrc.json + +GEN10_FORMAT_TABLE_DEP := \ + $(MESA_TOP)/src/amd/registers/regdb.py + +GEN10_FORMAT_TABLE := $(LOCAL_PATH)/common/gfx10_format_table.py + +$(intermediates)/common/gfx10_format_table.c: $(GEN10_FORMAT_TABLE) $(GEN10_FORMAT_TABLE_INPUTS) $(GEN10_FORMAT_TABLE_DEP) + @mkdir -p $(dir $@) + @echo "Gen Header: $(PRIVATE_MODULE) <= $(notdir $(@))" + $(hide) $(MESA_PYTHON2) $(GEN10_FORMAT_TABLE) $(GEN10_FORMAT_TABLE_INPUTS) > $@ || ($(RM) $@; false) LOCAL_C_INCLUDES := \ $(MESA_TOP)/include \ $(MESA_TOP)/src \ $(MESA_TOP)/src/amd/common \ + $(MESA_TOP)/src/amd/llvm \ $(MESA_TOP)/src/compiler \ $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_nir,,)/nir \ $(MESA_TOP)/src/gallium/include \ $(MESA_TOP)/src/gallium/auxiliary \ - $(intermediates)/common \ - external/llvm/include \ - external/llvm/device/include + $(MESA_TOP)/src/mesa \ + $(intermediates)/common LOCAL_EXPORT_C_INCLUDE_DIRS := \ - $(LOCAL_PATH)/common + $(LOCAL_PATH)/common \ + $(LOCAL_PATH)/llvm \ + $(intermediates)/common + +LOCAL_SHARED_LIBRARIES := \ + libdrm_amdgpu LOCAL_STATIC_LIBRARIES := \ - libLLVMCore \ libmesa_nir LOCAL_WHOLE_STATIC_LIBRARIES := \ libelf +$(call mesa-build-with-llvm) + include $(MESA_COMMON_MK) include $(BUILD_STATIC_LIBRARY) + +endif # MESA_ENABLE_LLVM == true