[MacPorts] #70227: gcc13 @13.2.0_4 +stdlib_flag+universal: configuration stage 1 of intl fails
MacPorts
noreply at macports.org
Sat Jun 15 21:56:03 UTC 2024
#70227: gcc13 @13.2.0_4 +stdlib_flag+universal: configuration stage 1 of intl fails
-------------------------+--------------------
Reporter: ar-an-ribe | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.9.3
Resolution: | Keywords:
Port: gcc13 |
-------------------------+--------------------
Comment (by ar-an-ribe):
The `-no_deduplicate` option is indeed unrecognized by the `ld64-236.4`
version of `ld`.
This option is most likely being added through `llvm`, represented in this
ticket by `clang-mp-16`.
In the source for `llvm-15 @15.0.7_0`, this option is added to the command
line depending upon the result of the `shouldLinkerNotDedup`() static
function of `clang/lib/Driver/ToolChains/Darwin.cpp`. Support for this
option in `ld64` must have been added after version 236.4 and before
version 262, since a comment in the `darwin::Linker::AddLinkArgs`()
function in the same file notes that this option is added automatically
starting with version 262 of `ld64`.
Presuming that this file’s code is similar in other versions of `llvm` as
well, the `darwin::Linker::AddLinkArgs`() function in this file should be
patched so that the `-no_deduplicate` option is not “pushed back” into the
command arguments when `Version <= VersionTuple(236)` (if I’ve understood
that code correctly—`VersionTuple`s are used for more things in this code
than just the `ld64` version). If versions of Xcode `ld64` on releases of
macOS that are newer than Mavericks also don’t recognize the
`-no_deduplicate` option, then that “236” value in the `VersionTuple`
comparison should be increased to match the latest `ld64` version that
lacks support for the `-no_deduplicate` option.
--
Ticket URL: <https://trac.macports.org/ticket/70227#comment:3>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list