radv: split linker script for android since it requires different symbols
Fixes: 4956f6d0bf ("radv: Add Android module info to linker script.")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8338
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: David Heidelberg <david.heidelberg@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21518>
This commit is contained in:
committed by
Marge Bot
parent
669a68489d
commit
735df516e9
@@ -170,8 +170,13 @@ libvulkan_radeon_ld_args = []
|
||||
libvulkan_radeon_link_depends = []
|
||||
|
||||
if with_ld_version_script
|
||||
libvulkan_radeon_ld_args += ['-Wl,--version-script', join_paths(meson.current_source_dir(), 'vulkan.sym')]
|
||||
libvulkan_radeon_link_depends += files('vulkan.sym')
|
||||
if with_platform_android
|
||||
libvulkan_radeon_ld_args += ['-Wl,--version-script', join_paths(meson.current_source_dir(), 'vulkan-android.sym')]
|
||||
libvulkan_radeon_link_depends += files('vulkan-android.sym')
|
||||
else
|
||||
libvulkan_radeon_ld_args += ['-Wl,--version-script', join_paths(meson.current_source_dir(), 'vulkan.sym')]
|
||||
libvulkan_radeon_link_depends += files('vulkan.sym')
|
||||
endif
|
||||
endif
|
||||
|
||||
radv_build_id = get_option('radv-build-id')
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
global:
|
||||
vk_icdGetInstanceProcAddr;
|
||||
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.
|
||||
*;
|
||||
};
|
||||
@@ -4,11 +4,6 @@
|
||||
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.
|
||||
|
||||
Reference in New Issue
Block a user