commit: e87a1383004c856e74741f682c556bc3e8c67990 Author: Fabian Groffen <grobian <AT> gentoo <DOT> org> AuthorDate: Sun Sep 11 15:08:10 2022 +0000 Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org> CommitDate: Sun Sep 11 15:09:34 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e87a1383
dev-util/meson-0.63.2-r1: teach meson to detect xtools linkers Unbreak x86_64 and ppc based darwin targets. Closes: https://bugs.gentoo.org/868516 Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org> .../meson/files/meson-0.63-xtools-support.patch | 26 ++++++++++++++++++++++ ...{meson-0.63.2.ebuild => meson-0.63.2-r1.ebuild} | 4 ++++ dev-util/meson/meson-9999.ebuild | 4 ++++ 3 files changed, 34 insertions(+) diff --git a/dev-util/meson/files/meson-0.63-xtools-support.patch b/dev-util/meson/files/meson-0.63-xtools-support.patch new file mode 100644 index 000000000000..ea1e8597b00a --- /dev/null +++ b/dev-util/meson/files/meson-0.63-xtools-support.patch @@ -0,0 +1,26 @@ +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. + +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. + +Author: Fabian Groffen <[email protected]> +Bug: https://bugs.gentoo.org/868516 + +--- a/mesonbuild/linkers/detect.py ++++ b/mesonbuild/linkers/detect.py +@@ -188,6 +188,11 @@ + v = search_version(o) + + linker = 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) + # first might be apple clang, second is for real gcc, the third is icc + elif e.endswith('(use -v to see invocation)\n') or 'macosx_version' in e or 'ld: unknown option:' in e: + if isinstance(comp_class.LINKER_PREFIX, str): diff --git a/dev-util/meson/meson-0.63.2.ebuild b/dev-util/meson/meson-0.63.2-r1.ebuild similarity index 97% rename from dev-util/meson/meson-0.63.2.ebuild rename to dev-util/meson/meson-0.63.2-r1.ebuild index 14ecaa4f465b..f2e31397c003 100644 --- a/dev-util/meson/meson-0.63.2.ebuild +++ b/dev-util/meson/meson-0.63.2-r1.ebuild @@ -37,6 +37,10 @@ DEPEND=" ) " +PATCHES=( + "${FILESDIR}"/${PN}-0.63-xtools-support.patch +) + python_prepare_all() { local disable_unittests=( # ASAN and sandbox both want control over LD_PRELOAD diff --git a/dev-util/meson/meson-9999.ebuild b/dev-util/meson/meson-9999.ebuild index 14ecaa4f465b..f2e31397c003 100644 --- a/dev-util/meson/meson-9999.ebuild +++ b/dev-util/meson/meson-9999.ebuild @@ -37,6 +37,10 @@ DEPEND=" ) " +PATCHES=( + "${FILESDIR}"/${PN}-0.63-xtools-support.patch +) + python_prepare_all() { local disable_unittests=( # ASAN and sandbox both want control over LD_PRELOAD
