diff options
author | Eli Zaretskii <[email protected]> | 2012-06-26 19:57:54 +0300 |
---|---|---|
committer | Eli Zaretskii <[email protected]> | 2012-06-26 19:57:54 +0300 |
commit | cc06e7e7107b47250ad2a91817932b8079f4bc6e (patch) | |
tree | 09a7ab632dffb179442e5c82976ccd5fdd50d126 | |
parent | d2c32364fd1873a6e9cfa52d2531dfbe500ad297 (diff) |
Fix parallel bootstrap on MS-Windows in lib/ and lisp/.
lib/makefile.w32-in ($(GNULIBOBJS)): Depend on stamp_BLD. This
replaces separate dependency for each object file, which required
the same object file to be mentioned twice, causing failures in
parallel builds.
lisp/makefile.w32-in (compile, compile-always): Depend on
update-subdirs, not on subdirs.el. Otherwise, several different
sub-targets of 'bootstrap' running in parallel could
simultaneously write to subdirs.el, producing a garbled file.
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | lib/makefile.w32-in | 5 | ||||
-rw-r--r-- | lisp/ChangeLog | 7 | ||||
-rw-r--r-- | lisp/makefile.w32-in | 4 |
4 files changed, 17 insertions, 6 deletions
@@ -1,3 +1,10 @@ +2012-06-26 Eli Zaretskii <[email protected]> + + * lib/makefile.w32-in ($(GNULIBOBJS)): Depend on stamp_BLD. This + replaces separate dependency for each object file, which required + the same object file to be mentioned twice, causing failures in + parallel builds. + 2012-06-26 Paul Eggert <[email protected]> Clean out last vestiges of the old HAVE_CONFIG_H stuff. diff --git a/lib/makefile.w32-in b/lib/makefile.w32-in index 92fd7a8184..78a0de0a0e 100644 --- a/lib/makefile.w32-in +++ b/lib/makefile.w32-in @@ -183,10 +183,7 @@ $(BLD)/filemode.$(O) : \ # The following dependencies are for supporting parallel builds, where # we must make sure $(BLD) exists before any compilation starts. # -$(BLD)/dtoastr.$(O) $(BLD)/getopt.$(O) $(BLD)/getopt1.$(O): stamp_BLD -$(BLD)/strftime.$(O) $(BLD)/time_r.$(O) $(BLD)/md5.$(O): stamp_BLD -$(BLD)/sha1.$(O) $(BLD)/sha256.$(O) $(BLD)/sha512.$(O): stamp_BLD -$(BLD)/filemode.$(O): stamp_BLD +$(GNULIBOBJS): stamp_BLD # # Headers we would preprocess if we could. diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 701dae6c4e..144446a0d0 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2012-06-26 Eli Zaretskii <[email protected]> + + * makefile.w32-in (compile, compile-always): Depend on + update-subdirs, not on subdirs.el. Otherwise, several different + sub-targets of 'bootstrap' running in parallel could + simultaneously write to subdirs.el, producing a garbled file. + 2012-06-26 Sam Steingold <[email protected]> * files.el (file-name-base): New convenience function. diff --git a/lisp/makefile.w32-in b/lisp/makefile.w32-in index 91a25b7c07..0c021cec77 100644 --- a/lisp/makefile.w32-in +++ b/lisp/makefile.w32-in @@ -311,7 +311,7 @@ TAGS-LISP-CMD: $(lisptagsfiles1) $(lisptagsfiles2) $(lisptagsfiles3) $(lisptagsf # compiled find the right files. # Need separate version for sh and native cmd.exe -compile: $(lisp)/subdirs.el compile-$(SHELLTYPE) doit +compile: update-subdirs compile-$(SHELLTYPE) doit compile-CMD: autoloads # -for %%f in ($(lisp) $(WINS)) do for %%g in (%%f\*.elc) do @attrib -r %%g @@ -340,7 +340,7 @@ compile-SH: autoloads # unconditionally. Some files don't actually get compiled because they # set the local variable no-byte-compile. -compile-always: $(lisp)/subdirs.el compile-always-$(SHELLTYPE) doit +compile-always: update-subdirs compile-always-$(SHELLTYPE) doit compile-always-CMD: # -for %%f in ($(lisp) $(WINS)) do for %%g in (%%f\*.elc) do @attrib -r %%g |