[swift-dev] Support only ninja built from source

Joe Groff jgroff at apple.com
Mon Mar 14 11:47:43 CDT 2016


> On Mar 14, 2016, at 2:21 AM, Wojciech Czekalski via swift-dev <swift-dev at swift.org> wrote:
> 
> This is a humble proposal (or rather thought) to drop support for ninja which does not come from source.
> 
> This is motivated by two things:
> 1. I just wasted an hour figuring out what’s wrong, and applying workarounds
> 2. I *think* (please correct me if I’m wrong), there are no disadvantages of removing it, it will just simplify implementation of scripts.
> 
> I ran into it running `build-toolchain` script and it couldn’t find ninja. It came out that `build-toolchain` uses a preset which makes `build-script` actually build ninja.
> 
> Since it is not realistically possible to document everything in a big project like this, I think that gradually removing complexity (even if it is marginal) is a good thing.


This particular issue is documented in the readme:

https://github.com/apple/swift/blob/master/README.md#ninja

If you check out Ninja as described next to your other checkouts, build-script will build and use it for you. Ninja is significantly faster than other build options, so we're not going to drop support for it. It sounds like we might need better failovers when Ninja isn't available, though.

-Joe


More information about the swift-dev mailing list