kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #41272
Re: Bug 1833851 - Massively Parallel Builds
On Sonntag, 30. Juni 2019 16:45:19 CEST Seth Hillbrand wrote:
> Hi Devs-
>
> I'm stuck at a decision on this bug and would like some opinions from
> others.
>
> The background is the GNU make is not intelligent about parallel builds
> and doesn't merge generated targets. So we need to serialize the
> dependencies but this breaks everytime we include the lexer header file
> in a different object or use the generated DSO for more than one target.
> Eventually, we have sufficient parallel processes that the header gets
> generated twice. If this happens at the same time, the build breaks.
I have seen errors like this several times, and every time it has been an
error in the underlying cmake rules. Most of the times this happens when
mixing custom_targets and custom_commands, and specifying the wrong dependency
(dependency on a file when a target dependency should be used, and vice
versa). kicad-doc had a problem in this regard as well, but it is fine now.
One obvious thing that is fishy is generating the files in
CMAKE_CURRENT_SOURCE_DIR - generated files should *always* go into
CMAKE_CURRENT_BINARY_DIR.
Kind regards,
Stefan
--
Stefan Brüns / Bergstraße 21 / 52062 Aachen
home: +49 241 53809034 mobile: +49 151 50412019
Attachment:
signature.asc
Description: This is a digitally signed message part.
References