[MacPorts] #71669: macports-libcxx: uses older c++ headers on newer macports-clang compilers
MacPorts
noreply at macports.org
Sat Dec 28 16:40:12 UTC 2024
#71669: macports-libcxx: uses older c++ headers on newer macports-clang compilers
--------------------+-----------------------------
Reporter: kencu | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Keywords: | Port: macports-libcxx
--------------------+-----------------------------
currently, the macports-libcxx port copies the headers from clang11 thst
match the libcxx being used, modifies them slightly to override Apple’s
availabilty tests that are based on system version, and installs them.
https://github.com/macports/macports-
ports/blob/f9cde8c670027940c9b222eba81ccdc99d587f52/lang/macports-
libcxx/Portfile#L51
legacysupport then forces these modified headers to be used:
https://github.com/macports/macports-
ports/blob/f9cde8c670027940c9b222eba81ccdc99d587f52/_resources/port1.0/group/legacysupport-1.1.tcl#L183
(Ignore for the moment these are mistakenly being added to the cppflags
instead of the cxxflags).
The end effect of this is that the headers being used by compilers newer
than clang-11 are in fact older headers. This is not ideal.
Also, llvm and Apple have changed the way certain things are being done
with respect to c++ hesders, and these c++ headers are now being shipped
with the system SDKs rather than with the llvm / clang compiler
installation, so we’ll also need to ponder that fact too, if we decide to
change something aboutbhow we do the header overrides in the future.
--
Ticket URL: <https://trac.macports.org/ticket/71669>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list