summaryrefslogtreecommitdiff
path: root/app-emulation/libvirt/files/libvirt-9.2.0-meson-Stop-detecting-Wl-version-script.patch
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/libvirt/files/libvirt-9.2.0-meson-Stop-detecting-Wl-version-script.patch')
-rw-r--r--app-emulation/libvirt/files/libvirt-9.2.0-meson-Stop-detecting-Wl-version-script.patch53
1 files changed, 53 insertions, 0 deletions
diff --git a/app-emulation/libvirt/files/libvirt-9.2.0-meson-Stop-detecting-Wl-version-script.patch b/app-emulation/libvirt/files/libvirt-9.2.0-meson-Stop-detecting-Wl-version-script.patch
new file mode 100644
index 000000000000..18b36c92a149
--- /dev/null
+++ b/app-emulation/libvirt/files/libvirt-9.2.0-meson-Stop-detecting-Wl-version-script.patch
@@ -0,0 +1,53 @@
+From 743fdb97c81f38adc6e9b55f402244f7982352f4 Mon Sep 17 00:00:00 2001
+Message-Id: <743fdb97c81f38adc6e9b55f402244f7982352f4.1679396460.git.mprivozn@redhat.com>
+From: Michal Privoznik <mprivozn@redhat.com>
+Date: Mon, 20 Mar 2023 13:38:27 +0100
+Subject: [PATCH] meson: Stop detecting -Wl,--version-script=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+With its version 16.0, the LLVM's linker turned on
+--no-undefined-version by default [1]. This breaks how we detect
+--version-script= detection, because at the compile time there's
+no library built yet that we can use to make --version-script=
+happy. Unfortunately, meson does not provide a way to detect this
+either [2].
+
+But there's not much sense in detecting the argument either. We
+already special case some systems (windows, darwin) and do the
+check for others, which are expected to support versioned
+symbols, because of ELF. Worst case scenario - the error is
+reported during compile time rather than configure time.
+
+1: https://reviews.llvm.org/D135402
+2: https://github.com/mesonbuild/meson/issues/3047
+
+Resolves: https://bugs.gentoo.org/902211
+Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
+Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
+---
+ meson.build | 7 +------
+ 1 file changed, 1 insertion(+), 6 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index c35823a79a..a0682e8d0b 100644
+--- a/meson.build
++++ b/meson.build
+@@ -534,12 +534,7 @@ elif host_machine.system() == 'darwin'
+ # macOS libraries don't support symbol versioning
+ version_script_flags = ''
+ else
+- test_file = '@0@/src/libvirt_qemu.syms'.format(meson.project_source_root())
+- if cc.has_link_argument('-Wl,--version-script=@0@'.format(test_file))
+- version_script_flags = '-Wl,--version-script='
+- else
+- error('No supported version script link argument found.')
+- endif
++ version_script_flags = '-Wl,--version-script='
+ endif
+
+ libvirt_flat_namespace = []
+--
+2.39.2
+