Thanks for chasing this down. It couldn't have been easy. On Thu, May 30, 2019 at 3:38 PM Simon Richter <[email protected]> wrote: > > Hi, > > we have some intermittent build failures that I've tried to debug today. As > parallelism is involved, I now want to set everything on fire. > > Symptom: if we have enough CPUs, the lexer generation is started multiple > times in parallel for the same outputs. The first platform where we saw > this was MSVC, but I can also get it on Linux, although the timing is a bit > tighter there. As a result, the generated header file is broken in various > ways -- on MSVC, every second token in the enumeration swaps place with its > comma, on Linux we get two copies of the file interleaved. > > According to the fine folks on the #cmake IRC channel, what we're doing > since b7f890adb "Fix parallel build bugs." is illegal, because output files > from a custom command are consumed by two different projects -- i.e. rather > than the intention that the files are built in the custom target, now the > custom target causes another avenue where a parallel build needs to prepare > the files. > > I have no immediate idea how to write this so it is safe for any number of > CPUs and portable everywhere, so if anyone does, it'd be nice if they'd fix > it, because I probably won't get around to it for a while. > > Simon > > _______________________________________________ > Mailing list: https://launchpad.net/~kicad-developers > Post to : [email protected] > Unsubscribe : https://launchpad.net/~kicad-developers > More help : https://help.launchpad.net/ListHelp
_______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

