diff options
author | Vladimir Glazunov <vg@openoffice.org> | 2010-10-25 17:20:08 +0200 |
---|---|---|
committer | Vladimir Glazunov <vg@openoffice.org> | 2010-10-25 17:20:08 +0200 |
commit | 7193ff6602780443d0c0b6ec8dac057db6983e4d (patch) | |
tree | 79c2232bef874992e87a1c3c61c454e2f5d65a59 | |
parent | 0f2a20abd6aee91db528cd16809f204ae3d2f7e8 (diff) | |
parent | 05986a18a9739bc6e2022d677f6334c546aade10 (diff) |
CWS-TOOLING: integrate CWS ause126
Notes
Notes:
split repo tag: libs-extern-sys_ooo/DEV300_m91
split repo tag: libs-extern-sys_ooo/DEV300_m92
split repo tag: libs-extern-sys_ooo/DEV300_m93
split repo tag: libs-extern-sys_ooo/DEV300_m94
split repo tag: libs-extern-sys_ooo/DEV300_m95
-rw-r--r-- | nss/makefile.mk | 4 | ||||
-rw-r--r-- | python/Python-parallel-make.patch | 36 | ||||
-rw-r--r-- | python/makefile.mk | 1 |
3 files changed, 38 insertions, 3 deletions
diff --git a/nss/makefile.mk b/nss/makefile.mk index 22b126a43c57..34e278c4d84c 100644 --- a/nss/makefile.mk +++ b/nss/makefile.mk @@ -136,8 +136,6 @@ OUT2LIB= \ MOZ_MSVCVERSION= 9 .EXPORT : MOZ_MSVCVERSION moz_build:=$(shell cygpath -p $(MOZILLABUILD)) -PATH!:=$(moz_build)/msys/bin:$(moz_build)/moztools/bin:$(PATH) -.EXPORT : PATH #Using WINNT will cause at least that nspr4.dll, plc4.dll, plds4.dll #become libnspr4.dll, libplc4.dll, libplds4.dll @@ -152,7 +150,7 @@ EXT_USE_STLPORT=TRUE #To build nss one has to call "make nss_build_all" in #mozilla/security/nss NSS_BUILD_DIR= $(subst,\,/ $(PWD)/$(MISC)/build/$(TARFILE_ROOTDIR)/mozilla/security/nss) -BUILD_ACTION= $(subst,/,$/ $(MOZILLABUILD)/msys/bin/bash) -i \ +BUILD_ACTION= PATH="$(moz_build)/msys/bin:$(moz_build)/moztools/bin:$(PATH)" && $(subst,/,$/ $(MOZILLABUILD)/msys/bin/bash) -i \ -c "cd $(NSS_BUILD_DIR) && make nss_build_all" OUT2LIB= \ diff --git a/python/Python-parallel-make.patch b/python/Python-parallel-make.patch new file mode 100644 index 000000000000..81ce8dabe35b --- /dev/null +++ b/python/Python-parallel-make.patch @@ -0,0 +1,36 @@ +--- misc/Python-2.6.1/Makefile.pre.in.fix-parallel-make 2010-07-22 15:01:39.567996932 -0400 ++++ misc/build/Python-2.6.1/Makefile.pre.in 2010-07-22 15:47:02.437998509 -0400 +@@ -207,6 +207,7 @@ SIGNAL_OBJS= @SIGNAL_OBJS@ + + ########################################################################## + # Grammar ++GRAMMAR_STAMP= $(srcdir)/grammar-stamp + GRAMMAR_H= $(srcdir)/Include/graminit.h + GRAMMAR_C= $(srcdir)/Python/graminit.c + GRAMMAR_INPUT= $(srcdir)/Grammar/Grammar +@@ -530,10 +531,24 @@ Modules/getpath.o: $(srcdir)/Modules/get + Modules/python.o: $(srcdir)/Modules/python.c + $(MAINCC) -c $(PY_CFLAGS) -o $@ $(srcdir)/Modules/python.c + ++# GNU "make" interprets rules with two dependents as two copies of the rule. ++# ++# In a parallel build this can lead to pgen being run twice, once for each of ++# GRAMMAR_H and GRAMMAR_C, leading to race conditions in which the compiler ++# reads a partially-overwritten copy of one of these files, leading to syntax ++# errors (or linker errors if the fragment happens to be syntactically valid C) ++# ++# See http://www.gnu.org/software/hello/manual/automake/Multiple-Outputs.html ++# for more information ++# ++# Introduce ".grammar-stamp" as a contrived single output from PGEN to avoid ++# this: ++$(GRAMMAR_H) $(GRAMMAR_C): $(GRAMMAR_STAMP) + +-$(GRAMMAR_H) $(GRAMMAR_C): $(PGEN) $(GRAMMAR_INPUT) ++$(GRAMMAR_STAMP): $(PGEN) $(GRAMMAR_INPUT) + -@$(INSTALL) -d Include + -$(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) ++ touch $(GRAMMAR_STAMP) + + $(PGEN): $(PGENOBJS) + $(CC) $(OPT) $(LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN) diff --git a/python/makefile.mk b/python/makefile.mk index 5caa7ac1d601..607ba93ab92d 100644 --- a/python/makefile.mk +++ b/python/makefile.mk @@ -49,6 +49,7 @@ TARFILE_NAME=Python-$(PYVERSION) TARFILE_MD5=e81c2f0953aa60f8062c05a4673f2be0 PATCH_FILES=\ Python-$(PYVERSION).patch \ + Python-parallel-make.patch \ Python-ssl.patch CONFIGURE_DIR= |