mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-09 22:16:58 +02:00
dev-build/meson: Sync with Gentoo
It's from Gentoo commit e538accf3e4cb33b8537290de31ce4fc503047c8.
This commit is contained in:
parent
dd19faca66
commit
03e200f567
@ -1,26 +1,39 @@
|
||||
linkers_detect: detect xtools (Apple ld64 derivative)
|
||||
From 33527630f1bd0e51093044016557cb44e7bb6547 Mon Sep 17 00:00:00 2001
|
||||
From: Fabian Groffen <grobian@gentoo.org>
|
||||
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 <grobian@gentoo.org>
|
||||
Bug: https://bugs.gentoo.org/868516
|
||||
Bug: https://github.com/mesonbuild/meson/issues/10805
|
||||
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
|
||||
Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
|
||||
---
|
||||
mesonbuild/linkers/detect.py | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/mesonbuild/linkers/detect.py b/mesonbuild/linkers/detect.py
|
||||
index 918f2e634..1bce413f4 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:
|
||||
--
|
||||
2.43.0
|
||||
|
||||
|
@ -54,13 +54,15 @@ RDEPEND="
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-1.2.1-python-path.patch
|
||||
"${FILESDIR}"/${PN}-1.3.1-xtools-support.patch
|
||||
|
||||
# backport fix for hiding compiler warnings (such as Modern C) in vala and cython
|
||||
"${FILESDIR}"/0001-ninja-backend-don-t-hide-all-compiler-warnings-for-t.patch
|
||||
|
||||
# backport revert for broken rpath changes: https://github.com/mesonbuild/meson/pull/12672
|
||||
"${FILESDIR}"/0001-Revert-clike-Deduplicate-rpath-linker-flags.patch
|
||||
|
||||
# backport macos Prefix fix: https://github.com/mesonbuild/meson/pull/12747
|
||||
"${FILESDIR}"/meson-1.3.1-xtools-support.patch
|
||||
)
|
||||
|
||||
python_prepare_all() {
|
Loading…
Reference in New Issue
Block a user