mozangle seems to be being built twice
The first time we compile each file individually. The second time we pass all the files to a single cl instance. I don't yet understand why.
We build both a static library and a DLL in https://github.com/servo/mozangle/blob/e344a1b183e4f0f56486a900e5461eafc236635d/build.rs#L99-L121.
Ah. Maybe we should only build one depending on the needs of the consumer? Also one of them doesn't build in parallel.
Also, is it necessary to build twice to produce both outputs?
I honestly don't know. And yes, I would be open to adding features to control generation of the DLL and static libraries.
If you can figure out a way to get the DLL to build in parallel, that would be helpful. Building shared libraries has been declared outside the scope of the cc crate, unfortunately.
It looks like this is causing the webrender CI to timeout which is preventing the github repo from being updated: https://github.com/servo/webrender/pull/3753#issuecomment-530606372. @jdm is it possible for you to make this double building behaviour opt in?