Re: [swift-dev] ccache and/or distcc for swift

2016-09-28 Thread Oscar Bonilla via swift-dev
Yeah, speeding up builds from scratch is the case I'm trying to solve. I'm willing to dedicate time to solve the problem but I'm unfamiliar with the swift source base so I would need a lot of guidance ;) I am looking at Xcode + Swift. I'm currently using xcodebuild from the command line for the b

Re: [swift-dev] ccache and/or distcc for swift

2016-09-28 Thread Oscar Bonilla via swift-dev
Oh, thanks for that link. Very useful... I'm still digesting it to understand the implications... -- *Oscar Bonilla* Staff Software Engineer Tools Group oboni...@linkedin.com linkedin.com/in/seeob On Wed, Sep 28, 2016 at 2:10 PM, Jordan Rose wrote: > I just wrote up a document describing wh

Re: [swift-dev] ccache and/or distcc for swift

2016-09-28 Thread Daniel Dunbar via swift-dev
Ah, if you are specifically asking about the case of speeding up builds from scratch using cached results, that *is* somewhat doable, but it is still true that I don't know of an existing system for managing it for you. I want llbuild + swiftc to grow in the direction of being able to solve that

Re: [swift-dev] ccache and/or distcc for swift

2016-09-28 Thread Jordan Rose via swift-dev
I just wrote up a document describing why this is tricky. :-) Check it out: https://github.com/apple/swift/blob/master/docs/Driver.md Jordan > On Sep 28, 2016, at 14:05, Oscar Bonilla via swift-dev > wrote: > > Hi Daniel, > > Thanks for the reply. It seems that maybe this should be a collab

Re: [swift-dev] ccache and/or distcc for swift

2016-09-28 Thread Oscar Bonilla via swift-dev
Hi Daniel, Thanks for the reply. It seems that maybe this should be a collaboration between the swift compiler and the build system. I'm thinking something along the lines of the swift compiler being able to print out a list of file-level dependencies that the build system can use to decide whethe

Re: [swift-dev] ccache and/or distcc for swift

2016-09-28 Thread Oscar Bonilla via swift-dev
Thanks! It seems that is for building swift itself, not for building projects written in swift ;( -- *Oscar Bonilla* Staff Software Engineer Tools Group oboni...@linkedin.com linkedin.com/in/seeob On Tue, Sep 27, 2016 at 12:04 PM, mishal_shah wrote: > Hi Oscar, > > I am not aware any distri

Re: [swift-dev] ccache and/or distcc for swift

2016-09-28 Thread Oscar Bonilla via swift-dev
Primarily many builds from scratch. Specifically for a CI pipeline. That's why I was also wondering about distcc, so the build objects could be cached and shared among many machines. -- *Oscar Bonilla* Staff Software Engineer Tools Group oboni...@linkedin.com linkedin.com/in/seeob On Tue, Sep

Re: [swift-dev] ccache and/or distcc for swift

2016-09-27 Thread Daniel Dunbar via swift-dev
Hi Oscar, Nothing exists like that for Swift yet -- it is non-trivial for several reasons, the big two are: 1. The Swift compilation model relies on global information for a module, and needs to see all the sources. This process is currently embedded in the `swiftc` driver which would need to b

Re: [swift-dev] ccache and/or distcc for swift

2016-09-27 Thread mishal_shah via swift-dev
Hi Oscar, I am not aware any distributed build system which builds swift files however, swift build-script has support for distcc to build cpp files. https://github.com/apple/swift/blob/master/utils/build-script#L1005 Thanks, Mishal Shah > On Sep 27, 2016, at 11:09 AM, Oscar Bonilla via swi

Re: [swift-dev] ccache and/or distcc for swift

2016-09-27 Thread Kevin Choi via swift-dev
Just curious, are there scenarios other than simple local build that you wish to speed up? I don't know if ccache offers much more than incremental build by existing build systems. -Kevin On Tue, Sep 27, 2016 at 11:09 AM, Oscar Bonilla via swift-dev < swift-dev@swift.org> wrote: > Hello swift dev

[swift-dev] ccache and/or distcc for swift

2016-09-27 Thread Oscar Bonilla via swift-dev
Hello swift developers, I was wondering if any of you knows anything about something like ccache and/or distcc for swift. Basically, what I want is to speed up compiles by caching the result (like ccache does) and then reusing the compilation results across multiple machines. Does anything like