After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 624393 - parallel build broken
parallel build broken
Status: RESOLVED FIXED
Product: f-spot
Classification: Other
Component: General
GIT
Other Linux
: Normal normal
: 0.7.2
Assigned To: F-spot maintainers
F-spot maintainers
Depends on:
Blocks:
 
 
Reported: 2010-07-14 22:17 UTC by Christian Krause
Modified: 2010-07-19 08:49 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
don't hide warnings in autogen.sh (698 bytes, patch)
2010-07-14 22:19 UTC, Christian Krause
committed Details | Review
remove 2nd identical command line switch (672 bytes, patch)
2010-07-14 22:20 UTC, Christian Krause
committed Details | Review
fix parallel build (791 bytes, patch)
2010-07-14 22:26 UTC, Christian Krause
none Details | Review
fix parallel build (738 bytes, patch)
2010-07-15 20:29 UTC, Christian Krause
committed Details | Review

Description Christian Krause 2010-07-14 22:17:21 UTC
it is not possible to build f-spot with "make -j x" with x > 1:

The reason is caused by an additional all: rule in build/build.rules.mk:

all: $(ASSEMBLY_FILE) theme-icons

Automake generates an additional implicit all: rule with basically does the following in the exact order:

1. build in all SUBDIRS
2. build the local targets (like module_SCRIPTS)

The mentioned additional all: rule is treated by make as "parallel executable" to the automake all: rule. If now the build of a local file needs the compiled files in SUBDIRS as prerequisite, the build will fail if not all SUBDIRS are built.

When solely using automake magic, the problem does not happen since the local target is only built after the build of the SUBDIRS.

That's why there must be only the implicit automatically generated all: rule.

I'll attach 3 Patches - 2 or just minor cleanup of the build system and the 3rd one solves the specifc parallel build issue.

All patches are applicable to both banshee and f-spot.

"make distcheck" runs successfully with these patches (only tested for f-spot, distcheck fails in banshee due to some POTFILE errors).
Comment 1 Christian Krause 2010-07-14 22:19:44 UTC
Created attachment 165922 [details] [review]
don't hide warnings in autogen.sh
Comment 2 Christian Krause 2010-07-14 22:20:23 UTC
Created attachment 165923 [details] [review]
remove 2nd identical command line switch
Comment 3 Christian Krause 2010-07-14 22:26:56 UTC
Created attachment 165924 [details] [review]
fix parallel build
Comment 4 Christian Krause 2010-07-15 20:29:19 UTC
Created attachment 165989 [details] [review]
fix parallel build
Comment 5 Ruben Vermeersch 2010-07-19 08:39:12 UTC
Attachment 165989 [details] pushed as 9c9b9c0 - fix parallel build


Merged, thanks!

So by unhiding the warnings, I assume you take responsibility in making sure
they don't appear ;-).

I like patches like these, our autotools knowledge isn't exactly encyclopedic,
so input from anyone that knows a thing or two about it is very welcome.