Closed Bug 429797 Opened 18 years ago Closed 15 years ago

Race conditions during parallel build

Categories

(Firefox Build System :: General, defect)

All
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: glandium, Unassigned)

Details

While building with -j4, I got the following error: gtkmozembed2.cpp: In function 'void gtk_moz_embed_class_init(GtkMozEmbedClass*)': gtkmozembed2.cpp:211: error: 'gtkmozembed_VOID__STRING_INT_INT' was not declared in this scope gtkmozembed2.cpp:221: error: 'gtkmozembed_VOID__INT_UINT' was not declared in this scope gtkmozembed2.cpp:229: error: 'gtkmozembed_VOID__STRING_INT_UINT' was not declared in this scope gtkmozembed2.cpp:279: error: 'gtkmozembed_BOOL__STRING' was not declared in this scope gtkmozembed2.cpp:376: error: 'gtkmozembed_VOID__POINTER_INT_POINTER' was not declared in this scope What seems to have happened is that gtkmozembedmarshal.h was created but not yet (totally) filled... This is likely to happen with all generated files which other sources depend upon. It would be safer to create a temporary file and move it when done.
Component: Build Config → Embedding: GTK Widget
QA Contact: build-config → gtk-widget
I have to disagree on your component assignment. This is something that is potentially all over Makefiles, whenever .h files are generated.
Oh... well, I know gtkmozembedmarshal.h is specially created in a way that I don't believe is used by most things, so that's why I moved it to GTK Widget specifically. http://mxr.mozilla.org/mozilla/source/embedding/browser/gtk/src/Makefile.in#123 If you feel that this isn't just a gtkmozembedmarshal.h issue, feel free to move it back to Build Config.
There is at least a potential problem with modules/staticmod/module_list.h, db/sqlite3/src/sqlite-version.h and js/src/jsautokw.h. Though for 2 of these, as they are in exports, it /might/ be less of a problem... So, that seems to only leave modules/staticmod/module_list.h and embedding/browser/gtk/src/gtkmozembedmarshal.h...
Component: Embedding: GTK Widget → Build Config
QA Contact: gtk-widget → build-config
I've been building with -j3, -j12 or -j for a while, and haven't hit any race condition for more than a year. I guess it's safe to assume it's okay, now. Will file individual races if some ever happen.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → WORKSFORME
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.