compiler.{white,black}list usage, especially in cxx11-1.1 PG context

Mihai Moldovan ionic at macports.org
Tue Apr 16 08:02:55 UTC 2019


* On 4/16/19 9:30 AM, Mihai Moldovan wrote:
> The cxx11 1.1 PG currently sets compiler.whitelist to some value (either
> mp-gcc-6.0/7.0 or mp-clang-5.0) and follows up with a bit of blacklisting if the
> stdlib is libc++ and otherwise just blacklists.

That's what I get for just skimming stuff. It's actually the other way around -
it only uses compiler.whitelist for libstdc++ systems, while the others add a
blacklist only.


> Something like
> 
> compiler.whitelist clang macports-clang-5.0
> compiler.blacklist {clang < 500}
> 
> might be a way to prefer recent-enough system compilers (needing
> compiler.blacklist for the compiler_blacklist_versions-1.0 magic), while forcing
> a fallback of macports-clang-5.0. If that is what we WANT, anyway.

Totally unnecessary in this case, since we know that systems on libstdc++ won't
have recent enough system compilers, my bad.


> In the ppc case, we can just continue to force macports-gcc-6.0
> macports-gcc-7.0, although the 7.0 part is currently redundant because we do
> have a mp-gcc-6.0 port and it would only kick in if there wasn't.
> 
> The convoluted compiler.blacklist line could just be deleted.

That still stands, though.


> So much for the cxx11-1.1 PG rant, but it's not just cxx11-1.1 that gets this
> stuff wrong. Is there really no way we can make sure that developers don't run
> into this trap any longer? The current behavior is unintuitive and requires base
> code knowledge to (mostly) get what one is looking for. Even with that knowledge
> there is currently no way to prefer *installed* compilers.

Also this.



Mihai

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 899 bytes
Desc: OpenPGP digital signature
URL: <http://lists.macports.org/pipermail/macports-dev/attachments/20190416/1af6991d/attachment-0001.sig>


More information about the macports-dev mailing list