intel/compiler: mark debug constant as const
[mesa.git] / src / intel / Android.vulkan.mk
index 419d560b0c7d0e6b4f1fbd0b6e76f110b602df7e..c5280b0bf04213b362c023b4147c31e81e23c69e 100644 (file)
@@ -23,9 +23,10 @@ LOCAL_PATH := $(call my-dir)
 include $(CLEAR_VARS)
 include $(LOCAL_PATH)/Makefile.sources
 
-VK_ENTRYPOINTS_SCRIPT := $(MESA_PYTHON2) $(LOCAL_PATH)/vulkan/anv_entrypoints_gen.py
-
-VK_EXTENSIONS_SCRIPT := $(MESA_PYTHON2) $(LOCAL_PATH)/vulkan/anv_extensions_gen.py
+ANV_ENTRYPOINTS_GEN_SCRIPT := $(LOCAL_PATH)/vulkan/anv_entrypoints_gen.py
+ANV_EXTENSIONS_GEN_SCRIPT := $(LOCAL_PATH)/vulkan/anv_extensions_gen.py
+ANV_EXTENSIONS_SCRIPT := $(LOCAL_PATH)/vulkan/anv_extensions.py
+VULKAN_API_XML := $(MESA_TOP)/src/vulkan/registry/vk.xml
 
 VULKAN_COMMON_INCLUDES := \
        $(MESA_TOP)/include \
@@ -36,54 +37,25 @@ VULKAN_COMMON_INCLUDES := \
        $(MESA_TOP)/src/vulkan/wsi \
        $(MESA_TOP)/src/vulkan/util \
        $(MESA_TOP)/src/intel \
-       $(MESA_TOP)/include/drm-uapi \
        $(MESA_TOP)/src/intel/vulkan \
        frameworks/native/vulkan/include
 
-# libmesa_anv_entrypoints with header and dummy.c
-#
-# This static library is built to pull entrypoints header
-# for multiple gen specific build targets below. The c file
-# is generated separately for libmesa_vulkan_common to avoid
-# duplicate symbols when linking the anv libraries.
-
-include $(CLEAR_VARS)
-LOCAL_MODULE := libmesa_anv_entrypoints
-LOCAL_MODULE_CLASS := STATIC_LIBRARIES
-
-intermediates := $(call local-generated-sources-dir)
-
-LOCAL_C_INCLUDES := \
-       $(VULKAN_COMMON_INCLUDES)
-
-LOCAL_GENERATED_SOURCES += $(intermediates)/vulkan/anv_entrypoints.h
-LOCAL_GENERATED_SOURCES += $(intermediates)/vulkan/dummy.c
+ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 27; echo $$?), 0)
+VULKAN_COMMON_INCLUDES += \
+       frameworks/native/vulkan/include \
+       frameworks/native/libs/nativebase/include \
+       frameworks/native/libs/nativewindow/include \
+       frameworks/native/libs/arect/include
 
-$(intermediates)/vulkan/dummy.c:
-       @mkdir -p $(dir $@)
-       @echo "Gen Dummy: $(PRIVATE_MODULE) <= $(notdir $(@))"
-       $(hide) touch $@
-
-$(intermediates)/vulkan/anv_entrypoints.h: $(intermediates)/vulkan/dummy.c
-       $(VK_ENTRYPOINTS_SCRIPT) \
-               --outdir $(dir $@) \
-               --xml $(MESA_TOP)/src/vulkan/registry/vk.xml \
-               --xml $(MESA_TOP)/src/vulkan/registry/vk_android_native_buffer.xml
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := \
-        $(intermediates)
-
-LOCAL_SHARED_LIBRARIES := libdrm
-
-include $(MESA_COMMON_MK)
-include $(BUILD_STATIC_LIBRARY)
+VULKAN_COMMON_HEADER_LIBRARIES := \
+       libcutils_headers \
+       libhardware_headers
+endif
 
-ANV_INCLUDES := \
-       $(VULKAN_COMMON_INCLUDES) \
-       $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_anv_entrypoints,,)/vulkan \
-       $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_nir,,)/nir \
-       $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_vulkan_common,,)/vulkan \
-       $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_vulkan_util,,)/util
+ANV_STATIC_LIBRARIES := \
+       libmesa_vulkan_common \
+       libmesa_genxml \
+       libmesa_nir
 
 ANV_SHARED_LIBRARIES := libdrm
 
@@ -102,11 +74,12 @@ LOCAL_MODULE_CLASS := STATIC_LIBRARIES
 LOCAL_SRC_FILES := $(VULKAN_GEN7_FILES)
 LOCAL_CFLAGS := -DGEN_VERSIONx10=70
 
-LOCAL_C_INCLUDES := $(ANV_INCLUDES)
+LOCAL_C_INCLUDES := $(VULKAN_COMMON_INCLUDES)
 
-LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_anv_entrypoints libmesa_genxml
+LOCAL_STATIC_LIBRARIES := $(ANV_STATIC_LIBRARIES)
 
 LOCAL_SHARED_LIBRARIES := $(ANV_SHARED_LIBRARIES)
+LOCAL_HEADER_LIBRARIES += $(VULKAN_COMMON_HEADER_LIBRARIES)
 
 include $(MESA_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)
@@ -122,11 +95,12 @@ LOCAL_MODULE_CLASS := STATIC_LIBRARIES
 LOCAL_SRC_FILES := $(VULKAN_GEN75_FILES)
 LOCAL_CFLAGS := -DGEN_VERSIONx10=75
 
-LOCAL_C_INCLUDES := $(ANV_INCLUDES)
+LOCAL_C_INCLUDES := $(VULKAN_COMMON_INCLUDES)
 
-LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_anv_entrypoints libmesa_genxml
+LOCAL_STATIC_LIBRARIES := $(ANV_STATIC_LIBRARIES)
 
 LOCAL_SHARED_LIBRARIES := $(ANV_SHARED_LIBRARIES)
+LOCAL_HEADER_LIBRARIES += $(VULKAN_COMMON_HEADER_LIBRARIES)
 
 include $(MESA_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)
@@ -142,11 +116,12 @@ LOCAL_MODULE_CLASS := STATIC_LIBRARIES
 LOCAL_SRC_FILES := $(VULKAN_GEN8_FILES)
 LOCAL_CFLAGS := -DGEN_VERSIONx10=80
 
-LOCAL_C_INCLUDES := $(ANV_INCLUDES)
+LOCAL_C_INCLUDES := $(VULKAN_COMMON_INCLUDES)
 
-LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_anv_entrypoints libmesa_genxml
+LOCAL_STATIC_LIBRARIES := $(ANV_STATIC_LIBRARIES)
 
 LOCAL_SHARED_LIBRARIES := $(ANV_SHARED_LIBRARIES)
+LOCAL_HEADER_LIBRARIES += $(VULKAN_COMMON_HEADER_LIBRARIES)
 
 include $(MESA_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)
@@ -162,11 +137,12 @@ LOCAL_MODULE_CLASS := STATIC_LIBRARIES
 LOCAL_SRC_FILES := $(VULKAN_GEN9_FILES)
 LOCAL_CFLAGS := -DGEN_VERSIONx10=90
 
-LOCAL_C_INCLUDES := $(ANV_INCLUDES)
+LOCAL_C_INCLUDES := $(VULKAN_COMMON_INCLUDES)
 
-LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_anv_entrypoints libmesa_genxml
+LOCAL_STATIC_LIBRARIES := $(ANV_STATIC_LIBRARIES)
 
 LOCAL_SHARED_LIBRARIES := $(ANV_SHARED_LIBRARIES)
+LOCAL_HEADER_LIBRARIES += $(VULKAN_COMMON_HEADER_LIBRARIES)
 
 include $(MESA_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)
@@ -182,11 +158,12 @@ LOCAL_MODULE_CLASS := STATIC_LIBRARIES
 LOCAL_SRC_FILES := $(VULKAN_GEN10_FILES)
 LOCAL_CFLAGS := -DGEN_VERSIONx10=100
 
-LOCAL_C_INCLUDES := $(ANV_INCLUDES)
+LOCAL_C_INCLUDES := $(VULKAN_COMMON_INCLUDES)
 
-LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_anv_entrypoints libmesa_genxml
+LOCAL_STATIC_LIBRARIES := $(ANV_STATIC_LIBRARIES)
 
 LOCAL_SHARED_LIBRARIES := $(ANV_SHARED_LIBRARIES)
+LOCAL_HEADER_LIBRARIES += $(VULKAN_COMMON_HEADER_LIBRARIES)
 
 include $(MESA_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)
@@ -202,15 +179,38 @@ LOCAL_MODULE_CLASS := STATIC_LIBRARIES
 LOCAL_SRC_FILES := $(VULKAN_GEN11_FILES)
 LOCAL_CFLAGS := -DGEN_VERSIONx10=110
 
-LOCAL_C_INCLUDES := $(ANV_INCLUDES)
+LOCAL_C_INCLUDES := $(VULKAN_COMMON_INCLUDES)
 
-LOCAL_WHOLE_STATIC_LIBRARIES := libmesa_anv_entrypoints libmesa_genxml
+LOCAL_STATIC_LIBRARIES := $(ANV_STATIC_LIBRARIES)
 
 LOCAL_SHARED_LIBRARIES := $(ANV_SHARED_LIBRARIES)
+LOCAL_HEADER_LIBRARIES += $(VULKAN_COMMON_HEADER_LIBRARIES)
 
 include $(MESA_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)
 
+#
+# libanv for gen12
+#
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := libmesa_anv_gen12
+LOCAL_MODULE_CLASS := STATIC_LIBRARIES
+
+LOCAL_SRC_FILES := $(VULKAN_GEN12_FILES)
+LOCAL_CFLAGS := -DGEN_VERSIONx10=120
+
+LOCAL_C_INCLUDES := $(VULKAN_COMMON_INCLUDES)
+
+LOCAL_STATIC_LIBRARIES := $(ANV_STATIC_LIBRARIES)
+
+LOCAL_SHARED_LIBRARIES := $(ANV_SHARED_LIBRARIES)
+LOCAL_HEADER_LIBRARIES += $(VULKAN_COMMON_HEADER_LIBRARIES)
+
+include $(MESA_COMMON_MK)
+include $(BUILD_STATIC_LIBRARY)
+
+
 #
 # libmesa_vulkan_common
 #
@@ -223,46 +223,54 @@ intermediates := $(call local-generated-sources-dir)
 
 LOCAL_SRC_FILES := $(VULKAN_FILES)
 
+LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)/vulkan
+
 LOCAL_C_INCLUDES := \
-       $(ANV_INCLUDES) \
-       $(MESA_TOP)/src/compiler
+       $(LOCAL_EXPORT_C_INCLUDE_DIRS) \
+       $(VULKAN_COMMON_INCLUDES)
 
-LOCAL_WHOLE_STATIC_LIBRARIES := \
-       libmesa_anv_entrypoints \
+LOCAL_STATIC_LIBRARIES := \
+       libmesa_nir \
        libmesa_genxml \
-       libmesa_vulkan_util
+       libmesa_git_sha1 \
+       libmesa_vulkan_util \
+       libmesa_util
 
 # The rule generates both C and H files, but due to some strange
 # reason generating the files once leads to link-time issues.
 # Work around create them here as well - we're safe from race
 # conditions since they are stored in another location.
 
-LOCAL_GENERATED_SOURCES += $(intermediates)/vulkan/anv_entrypoints.c
-LOCAL_GENERATED_SOURCES += $(intermediates)/vulkan/anv_extensions.c
-LOCAL_GENERATED_SOURCES += $(intermediates)/vulkan/anv_extensions.h
+LOCAL_GENERATED_SOURCES := $(addprefix $(intermediates)/,$(VULKAN_GENERATED_FILES))
 
-$(intermediates)/vulkan/anv_entrypoints.c:
+$(intermediates)/vulkan/anv_entrypoints.c: $(ANV_ENTRYPOINTS_GEN_SCRIPT) \
+                                          $(ANV_EXTENSIONS_SCRIPT) \
+                                          $(VULKAN_API_XML)
        @mkdir -p $(dir $@)
-       $(VK_ENTRYPOINTS_SCRIPT) \
-               --xml $(MESA_TOP)/src/vulkan/registry/vk.xml \
-               --xml $(MESA_TOP)/src/vulkan/registry/vk_android_native_buffer.xml \
+       $(MESA_PYTHON2) $(ANV_ENTRYPOINTS_GEN_SCRIPT) \
+               --xml $(VULKAN_API_XML) \
                --outdir $(dir $@)
 
-$(intermediates)/vulkan/anv_extensions.c:
+$(intermediates)/vulkan/anv_entrypoints.h: $(intermediates)/vulkan/anv_entrypoints.c
+
+$(intermediates)/vulkan/anv_extensions.c: $(ANV_EXTENSIONS_GEN_SCRIPT) \
+                                         $(ANV_EXTENSIONS_SCRIPT) \
+                                         $(VULKAN_API_XML)
        @mkdir -p $(dir $@)
-       $(VK_EXTENSIONS_SCRIPT) \
-               --xml $(MESA_TOP)/src/vulkan/registry/vk.xml \
-               --xml $(MESA_TOP)/src/vulkan/registry/vk_android_native_buffer.xml \
+       $(MESA_PYTHON2) $(ANV_EXTENSIONS_GEN_SCRIPT) \
+               --xml $(VULKAN_API_XML) \
                --out-c $@
 
-$(intermediates)/vulkan/anv_extensions.h:
+$(intermediates)/vulkan/anv_extensions.h: $(ANV_EXTENSIONS_GEN_SCRIPT) \
+                                          $(ANV_EXTENSIONS_SCRIPT) \
+                                          $(VULKAN_API_XML)
        @mkdir -p $(dir $@)
-       $(VK_EXTENSIONS_SCRIPT) \
-               --xml $(MESA_TOP)/src/vulkan/registry/vk.xml \
-               --xml $(MESA_TOP)/src/vulkan/registry/vk_android_native_buffer.xml \
+       $(MESA_PYTHON2) $(ANV_EXTENSIONS_GEN_SCRIPT) \
+               --xml $(VULKAN_API_XML) \
                --out-h $@
 
 LOCAL_SHARED_LIBRARIES := $(ANV_SHARED_LIBRARIES)
+LOCAL_HEADER_LIBRARIES += $(VULKAN_COMMON_HEADER_LIBRARIES)
 
 include $(MESA_COMMON_MK)
 include $(BUILD_STATIC_LIBRARY)
@@ -287,10 +295,6 @@ LOCAL_SRC_FILES := \
 
 LOCAL_C_INCLUDES := \
        $(VULKAN_COMMON_INCLUDES) \
-       $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_anv_entrypoints,,)/vulkan \
-       $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_vulkan_common,,)/vulkan
-
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(MESA_TOP)/src/intel/vulkan
 
 LOCAL_WHOLE_STATIC_LIBRARIES := \
        libmesa_nir \
@@ -300,17 +304,30 @@ LOCAL_WHOLE_STATIC_LIBRARIES := \
        libmesa_blorp \
        libmesa_compiler \
        libmesa_intel_common \
+       libmesa_intel_dev \
+       libmesa_intel_perf \
        libmesa_vulkan_common \
+       libmesa_vulkan_util \
        libmesa_anv_gen7 \
        libmesa_anv_gen75 \
        libmesa_anv_gen8 \
        libmesa_anv_gen9 \
        libmesa_anv_gen10 \
        libmesa_anv_gen11 \
-       libmesa_intel_compiler \
-       libmesa_anv_entrypoints
+       libmesa_anv_gen12 \
+       libmesa_intel_compiler
 
 LOCAL_SHARED_LIBRARIES := $(ANV_SHARED_LIBRARIES) libz libsync liblog
+LOCAL_HEADER_LIBRARIES += $(VULKAN_COMMON_HEADER_LIBRARIES)
+
+# If Android version >=8 MESA should static link libexpat else should dynamic link
+ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 27; echo $$?), 0)
+LOCAL_STATIC_LIBRARIES := \
+       libexpat
+else
+ LOCAL_SHARED_LIBRARIES += \
+        libexpat
+endif
 
 include $(MESA_COMMON_MK)
 include $(BUILD_SHARED_LIBRARY)