emacs-pretest-bug
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

fix for parallel make failure


From: Dan Nicolaescu
Subject: fix for parallel make failure
Date: Wed, 24 Jan 2007 10:13:52 -0800


I got a report for a parallel make failure when doing:

make -j4 -C lisp updates 

Here is the relevant portion of the log: 


Generating autoloads for subdirs.el...
Generating autoloads for subdirs.el...done
Generating autoloads for eshell/esh-groups.el...
Generating autoloads for eshell/esh-groups.el...done
Saving file /builddir/build/BUILD/emacs-22.0.93/lisp/loaddefs.el...
Opening input file: no such file or directory,
/builddir/build/BUILD/emacs-22.0.93/lisp/loaddefs.el
make: *** [finder-data] Error 255
make: *** Waiting for unfinished jobs....
Wrote /builddir/build/BUILD/emacs-22.0.93/lisp/loaddefs.el
Directory /builddir/build/BUILD/emacs-22.0.93/lisp/./emulation
Directory /builddir/build/BUILD/emacs-22.0.93/lisp/./mh-e
Directory /builddir/build/BUILD/emacs-22.0.93/lisp/./gnus
Directory /builddir/build/BUILD/emacs-22.0.93/lisp/./calendar
Directory /builddir/build/BUILD/emacs-22.0.93/lisp/./international
....


What I think happens is that one job is writing loaddefs.el while
another one is trying to use it. 

"updates" is defined like this:
updates: update-subdirs autoloads finder-data custom-deps

making finder-data and custom-deps depend on loaddefs.el should avoid this 
issue. 

Is this patch correct?

--- Makefile.in~        Wed Jan 24 10:04:42 2007
+++ Makefile.in Wed Jan 24 10:05:05 2007
@@ -87,12 +87,12 @@
 
 $(lisp)/cus-load.el:
        touch $@
-custom-deps: $(lisp)/cus-load.el doit
+custom-deps: $(lisp)/loaddefs.el $(lisp)/cus-load.el doit
        wd=$(lisp); $(setwins_almost); \
        echo Directories: $$wins; \
        $(EMACS) $(EMACSOPT) -l cus-dep --eval '(setq 
generated-custom-dependencies-file "$(lisp)/cus-load.el")' -f 
custom-make-dependencies $$wins
 
-finder-data: doit
+finder-data: $(lisp)/loaddefs.el doit
        wd=$(lisp); $(setwins_almost); \
        echo Directories: $$wins; \
        $(EMACS) $(EMACSOPT) -l finder --eval '(setq 
generated-finder-keywords-file "$(lisp)/finder-inf.el")' -f 
finder-compile-keywords-mak





reply via email to

[Prev in Thread] Current Thread [Next in Thread]