GNOME Bugzilla – Bug 680374
generation of vapi is not safe with make -j
Last modified: 2012-07-23 12:42:22 UTC
The Makefile.vapigen used by NetworkManager is perfectly willing to build multiple vapi files in parallel. This is a problem because the two vapi files generated by NetworkManager have an (undeclared) dependency. The result is that make -j fails when the process of building the second one fails to find the first one (because it is building at the same time). desrt@moonpix:~/jhbuild/checkout/NetworkManager/vapi$ make -j /home/desrt/jhbuild/install/bin/vapigen-0.18 --library libnm-util --metadatadir . ../libnm-util/NetworkManager-1.0.gir /home/desrt/jhbuild/install/bin/vapigen-0.18 --library libnm-glib --metadatadir . --vapidir . --girdir ../libnm-util ../libnm-glib/NMClient-1.0.gir error: Package `libnm-util' not found in specified Vala API directories or GObject-Introspection GIR directories Generation failed: 1 error(s), 0 warning(s) make: *** [libnm-glib.vapi] Error 1 make: *** Waiting for unfinished jobs....
Created attachment 219384 [details] [review] build: declare dependency between vapi files Unbreak 'make -j' by declaring the dependency that exists between the two generated vapi files (forcing building of the second one to wait until after the first one has been built).
Pushed as aa72d272efb8e74b5ae32b0eb39200d5d2a37910 Thanks!