Changing default cxx_stdlib to libc++

Ryan Schmidt ryandesign at macports.org
Mon Mar 12 20:50:24 UTC 2018


On Mar 8, 2018, at 18:27, Ryan Schmidt wrote:

> On Mar 8, 2018, at 15:26, Joshua Root wrote:
> 
>> On 2018-3-9 07:07 , Ryan Schmidt wrote:
>> 
>>> On Mar 8, 2018, at 11:24, Joshua Root wrote:
>>> 
>>>> Code to check C++ stdlib linkage in rev-upgrade is now in master. That
>>>> takes care of the main obstacle to being able to change the default stdlib.
>>> 
>>> Currently, we publish archives on packages.macports.org for 10.8 and earlier that are built for libstdc++. Currently, if we were to create archives for libc++ on those systems, the archive names would be the same. Is your plan to leave it that way, or to change the archive names for libc++ to distinguish them from the old libstdc++ archives?
>> 
>> I was not planning to rename the archives. It would work if we left all
>> the existing archives, albeit inefficiently when an archive using the
>> old stdlib is downloaded and immediately gets rebuilt.
> 
> Ok, rev-upgrade would detect a mismatch between the user's selected cxx_stdlib and the one in the archive they received. That does answer one concern of mine.

Well, no it doesn't. You are proposing to "stealth update" our current libstdc++ archives and replace them with libc++ archives. This would horribly break the MacPorts installations of anyone running any version of MacPorts that's current today, which doesn't have a rev-upgrade that knows about cxx_stdlib nor does it know what cxx_stdlib or delete_la_files setting an archive site uses. So we need to be sure that all users have upgraded to the future version of MacPorts that have those capabilities before replacing the archives. How do we know when all users have done that?



More information about the macports-dev mailing list