From 78578a6ddb4a7faee3b1e20d6ba1ce34e9dd58ba Mon Sep 17 00:00:00 2001 From: Eric Engestrom Date: Fri, 3 Mar 2023 16:40:57 +0000 Subject: [PATCH] vk: move radv's linker symbols scripts for use in all drivers Signed-off-by: Eric Engestrom Reviewed-by: Yiwei Zhang Part-of: --- src/amd/vulkan/meson.build | 19 ++----------------- src/vulkan/meson.build | 15 +++++++++++++++ src/{amd => }/vulkan/vulkan-android.sym | 0 src/{amd => }/vulkan/vulkan.sym | 0 4 files changed, 17 insertions(+), 17 deletions(-) rename src/{amd => }/vulkan/vulkan-android.sym (100%) rename src/{amd => }/vulkan/vulkan.sym (100%) diff --git a/src/amd/vulkan/meson.build b/src/amd/vulkan/meson.build index d0ee8233c07..d3c3d4a4a44 100644 --- a/src/amd/vulkan/meson.build +++ b/src/amd/vulkan/meson.build @@ -164,21 +164,6 @@ if with_platform_android radv_deps += dep_android endif -# When static linking LLVM, all its symbols are public API. -# That may cause symbol collision, so explicitly demote everything. -libvulkan_radeon_ld_args = [] -libvulkan_radeon_link_depends = [] - -if with_ld_version_script - 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') if radv_build_id != '' radv_flags += '-DRADV_BUILD_ID_OVERRIDE="' + radv_build_id + '"' @@ -204,9 +189,9 @@ libvulkan_radeon = shared_library( c_args : [no_override_init_args, radv_flags, c_msvc_compat_args], cpp_args : [radv_flags, cpp_msvc_compat_args], link_args : [ - ld_args_build_id, ld_args_bsymbolic, ld_args_gc_sections, libvulkan_radeon_ld_args, + ld_args_build_id, ld_args_bsymbolic, ld_args_gc_sections, vulkan_icd_link_args, ], - link_depends : [libvulkan_radeon_link_depends,], + link_depends : vulkan_icd_link_depends, gnu_symbol_visibility : 'hidden', name_prefix : host_machine.system() == 'windows' ? '' : [], install : true, diff --git a/src/vulkan/meson.build b/src/vulkan/meson.build index 508a1c89c67..799f15e19ef 100644 --- a/src/vulkan/meson.build +++ b/src/vulkan/meson.build @@ -21,6 +21,21 @@ vk_api_xml = files('registry/vk.xml') vulkan_icd_symbols = files('vulkan-icd-symbols.txt') +vulkan_icd_link_args = [] +vulkan_icd_link_depends = [] + +if with_platform_android + if with_ld_version_script + vulkan_icd_link_args += ['-Wl,--version-script', join_paths(meson.current_source_dir(), 'vulkan-android.sym')] + vulkan_icd_link_depends += files('vulkan-android.sym') + endif +else + if with_ld_version_script + vulkan_icd_link_args += ['-Wl,--version-script', join_paths(meson.current_source_dir(), 'vulkan.sym')] + vulkan_icd_link_depends += files('vulkan.sym') + endif +endif + inc_vulkan_util = include_directories('util') vulkan_wsi_deps = [] diff --git a/src/amd/vulkan/vulkan-android.sym b/src/vulkan/vulkan-android.sym similarity index 100% rename from src/amd/vulkan/vulkan-android.sym rename to src/vulkan/vulkan-android.sym diff --git a/src/amd/vulkan/vulkan.sym b/src/vulkan/vulkan.sym similarity index 100% rename from src/amd/vulkan/vulkan.sym rename to src/vulkan/vulkan.sym