Hi Ryan,

> On Sep 24, 2018, at 2:22 AM, Ryan Schmidt <[email protected]> wrote:
> 
> The release of macOS Mojave is imminent and I want to make sure we do the 
> right thing for the first release of MacPorts on Mojave. Let me know if you 
> have any thoughts about the below.
> 
> Ideally I would like to keep the ability to build 32-bit ports in MacPorts on 
> Mojave, mainly because I don't want my wine ports to stop working. The checks 
> that currently set universal_archs to only x86_64 on 10.14 would be bumped to 
> 10.15.
> 
> The 10.13 (or earlier) SDK would have to be used when building 32-bit. I have 
> a port for installing SDKs which I will finish up and submit as a PR. Here is 
> the preliminary port:
> 
> https://github.com/ryandesign/macports-ports/blob/MacOSX.sdk/devel/MacOSX.sdk/Portfile
> 
> I would then like to modify base so that if configure.sdk_version is set to a 
> version that is not provided by Xcode or the command line tools, it will use 
> one provided by a subport of the MacOSX.sdk port instead of generating an 
> error as it currently does. And also, if we are building for 32-bit on 
> Mojave, default to the 10.13 SDK. Here is a preliminary version of those 
> changes:
> 
> https://github.com/ryandesign/macports-base/commits/MacOSX.sdk
> 
> This should allow those few 32-bit-only ports, and wine which requires a 
> universal build, to continue to be usable on Mojave. But I have not tested 
> this on Mojave yet.
> 
> This should also allow us to fix build failures of a variety of ports on 
> older systems that need newer SDKs, such as textmate2. 
> 
> This will give us the year until 10.15 is released to figure out the solution 
> to disabling the universal variant when it won't work 
> (https://trac.macports.org/ticket/57133).
> 
> Either now for 10.14 if the above is unworkable, or at the latest for 10.15, 
> we still have the problem that upgrading users will have macports.conf files 
> that say "universal_archs x86_64 i386" but new installations will say 
> "universal_archs x86_64". Most of the settings that we write into 
> macports.conf are commented out so that defaults take effect, but for some 
> reason universal_archs is one of the few settings where we don't comment it 
> out. If we do nothing in base to handle this, we'll have to write a 
> ProblemHotlist entry and probably constantly guide users through making this 
> change.
> 
> There is also the problem that the --with-universal-archs MacPorts configure 
> flag affects not only the universal_archs macports.conf setting but also the 
> archs used to build the darwintrace part of MacPorts base. On Mojave I think 
> we want to be able to build MacPorts base x86_64 only, but have 
> universal_archs in macports.conf be x86_64 i386. Building base universal 
> x86_64 i386 is possible on Mojave using the 10.13 SDK which we could manage 
> when building the binary installers, but it's not going to work for users 
> when they run selfupdate and the 10.13 SDK isn't there.

This looks great! Thank you for working on this issue. I look forward to trying 
it on the release of Mojave soon. 

I am curious about the solution that the Crossover project has in mind for wine 
on 64-bit. 


Cheers!
Frank

Reply via email to