Criteria for picking compilers from fallback list ?

Joshua Root jmr at macports.org
Wed Dec 7 17:32:40 CET 2016


On 2016-12-8 04:24 , Chris Jones wrote:
> Hi,
>
> I'm working on an update to the root6 port, where the minimum compiler
> requirement has been increased in the latest release, such that I need
> to update the compiler blacklist/fallback to force a macports compiler
> to be used on OSX 10.8 and 10.9 (whereas previously the system one was OK).
>
> This is all working OK, but I have noticed one thing I am trying to
> understand is on 10.8 and 10.9 different fallbacks are being picked.
>
> I have
>
> compiler.blacklist-append *gcc* {clang < 602} macports-clang-3.3
> macports-clang-3.4 macports-clang-3.5 macports-clang-3.6
> compiler.fallback-append macports-clang-3.9 macports-clang-3.8
> macports-clang-3.7
>
> On 10.8 this is causing macports clang 3.9 to be picked, whereas on 10.9
> clang 3.8 is being used. I am curious as to what the logic is in the
> blacklist portgroup that is leading to this different decisions to be
> made ? I thought perhaps it was based on what clang ports where already
> installed, but even after uninstalling all clang versions, the same
> decisions are being made. Just curious...

The initial value of compiler.fallback differs based on cxx_stdlib 
because clang 3.5+ needs libc++. And yes, this will mean trouble for 
users on 10.8 who are using the default cxx_stdlib.

- Josh


More information about the macports-dev mailing list