Mesa (master): radv: Add Android module info to linker script.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Jan 12 20:27:57 UTC 2021


Module: Mesa
Branch: master
Commit: 4956f6d0bf477568731f3965125299b8857d5835
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4956f6d0bf477568731f3965125299b8857d5835

Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Tue Jan 12 12:47:59 2021 +0100

radv: Add Android module info to linker script.

The Android Vulkan loader needs this symbol, so the addition of the
linker script broke Vulkan for Android.

(For non-Android builds: I checked that having a non-existent symbol in
 the linker script works ok and doesn't put the symbol in the library)

Fixes: 41bb6459d3a ("radv: restrict exported symbols with static llvm")
Acked-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8437>

---

 src/amd/vulkan/vulkan.sym | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/amd/vulkan/vulkan.sym b/src/amd/vulkan/vulkan.sym
index c85a22e905a..2ca40faa09e 100644
--- a/src/amd/vulkan/vulkan.sym
+++ b/src/amd/vulkan/vulkan.sym
@@ -4,6 +4,11 @@
 		vk_icdGetPhysicalDeviceProcAddr;
 		vk_icdNegotiateLoaderICDInterfaceVersion;
 
+		# Andoid looks for this global in HAL modules. In the source it occurs
+		# as HAL_MODULE_INFO_SYM (which is just a #define for HMI) and it's an
+		# instance of struct hwvulkan_module_t.
+		HMI;
+
 	local:
 		# When static linking LLVM, all its symbols are public API.
 		# That may cause symbol collision, so explicitly demote everything.



More information about the mesa-commit mailing list