Xcode 9 introduced a new build system behind the scenes, but it was not the 
default, so most of us building OSS didn't really notice.

<https://medium.com/xcblog/xcode-new-build-system-for-speedy-swift-builds-c39ea6596e17>


Xcode10 has made it the default, and now a number of errors are showing up 
building ports that previously would build without trouble (aquaterm, macvim, 
irrlicht, and probably many ports using xcodebuild once they hit the buildbot).

Actively maintained projects will no doubt soon fix the issues with the new 
build system. Older projects not so much perhaps, and also updating the xcode 
projects with current versions of Xcode may well make them incompatible with 
older systems.

To force Xcode10 to use the old build system (as it did before) add this flag 
to the xcodebuild args. Some ports need this in both the build and destroot 
args (aquaterm), others pass it in a different way (macvim). 

UseNewBuildSystem=NO

Naturally if you know how to make the xcode project compatible with the new 
build system and you want to fix it and pass it on upstream, feel free.

No doubt at some point the old xcode build system will be removed from Xcode, 
and then we'll have to see how the dust has settled.

As an aside, if you're looking for a way to convert older xcode projects to 
cmake, the "mulle-xcode-to-cmake" does a pretty good job of the first 90% of 
this conversion.

Ken

Reply via email to