commit:     a086b6d31153bbb70f19c18ef599afc6440a6f9d
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 18 08:46:08 2024 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Thu Jan 18 08:46:08 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=a086b6d3

dev-build/meson: replace xtools patch with PR #12747

Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 .../meson/files/meson-1.3.1-xtools-support.patch   | 34 ++++++++++++++--------
 1 file changed, 22 insertions(+), 12 deletions(-)

diff --git a/dev-build/meson/files/meson-1.3.1-xtools-support.patch 
b/dev-build/meson/files/meson-1.3.1-xtools-support.patch
index 6e9e670ba8..6d766afc10 100644
--- a/dev-build/meson/files/meson-1.3.1-xtools-support.patch
+++ b/dev-build/meson/files/meson-1.3.1-xtools-support.patch
@@ -1,26 +1,36 @@
-linkers_detect: detect xtools (Apple ld64 derivative)
+From 2725b6d7a35b3bbbadd65c0accd71a66ac70549d Mon Sep 17 00:00:00 2001
+From: Fabian Groffen <[email protected]>
+Date: Wed, 17 Jan 2024 17:04:45 +0100
+Subject: [PATCH] linkers_detect: detect xtools (Apple ld64 derivative)
 
-xtools is in use on x86_64 and ppc based darwin Prefix installs.  Pick
-it up as a valid linker.
+xtools is in use on Gentoo Prefix x86_64 and ppc based Darwin installs.
+Pick it up as a valid linker.
 
-Meson is the only thing known at this point to try and figure out what
-linker is in use exactly, so instead of changing the linker (xtools),
-just teach Meson about xtools.
+Since xtools is answering with a version to --version, as opposed to
+ld64, detection of xtools in the ld64 handling block is not possible,
+since --version already succeeded.
 
 Author: Fabian Groffen <[email protected]>
 Bug: https://bugs.gentoo.org/868516
+Bug: https://github.com/mesonbuild/meson/issues/10805
+Signed-off-by: Fabian Groffen <[email protected]>
+---
+ mesonbuild/linkers/detect.py | 5 +++++
+ 1 file changed, 5 insertions(+)
 
+diff --git a/mesonbuild/linkers/detect.py b/mesonbuild/linkers/detect.py
+index 918f2e63426b..1bce413f4f52 100644
 --- a/mesonbuild/linkers/detect.py
 +++ b/mesonbuild/linkers/detect.py
-@@ -185,6 +185,11 @@
+@@ -174,6 +174,11 @@ def guess_nix_linker(env: 'Environment', compiler: 
T.List[str], comp_class: T.Ty
              v = search_version(o)
  
          linker = linkers.LLVMDynamicLinker(compiler, for_machine, 
comp_class.LINKER_PREFIX, override, version=v)
-+    # detect xtools first, bug #868516
-+    elif 'xtools-' in o.split('\n')[0]:
-+        xtools = o.split(' ')[0]
-+        v = xtools.split('-')[1]
-+        linker = AppleDynamicLinker(compiler, for_machine, 
comp_class.LINKER_PREFIX, override, version=v)
++    # detect xtools first, bug #10805
++    elif 'xtools-' in o.split('\n', maxsplit=1)[0]:
++        xtools = o.split(' ', maxsplit=1)[0]
++        v = xtools.split('-', maxsplit=2)[1]
++        linker = linkers.AppleDynamicLinker(compiler, for_machine, 
comp_class.LINKER_PREFIX, override, version=v)
      # First might be apple clang, second is for real gcc, the third is icc.
      # Note that "ld: unknown option: " sometimes instead is "ld: unknown 
options:".
      elif e.endswith('(use -v to see invocation)\n') or 'macosx_version' in e 
or 'ld: unknown option' in e:

Reply via email to