summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Rentz [dr] <daniel.rentz@oracle.com>2010-11-09 15:15:30 +0100
committerDaniel Rentz [dr] <daniel.rentz@oracle.com>2010-11-09 15:15:30 +0100
commitc70236f80105c81757a1dc06efc761902f5c1be5 (patch)
tree79c2232bef874992e87a1c3c61c454e2f5d65a59
parent2f799fd884a54022df843e4302bfd77eb9c17b78 (diff)
parent7193ff6602780443d0c0b6ec8dac057db6983e4d (diff)
dr77: rebase to DEV300m92
-rw-r--r--berkeleydb/makefile.mk2
-rw-r--r--cairo/cairo/makefile.mk2
-rw-r--r--cairo/pixman/makefile.mk2
-rw-r--r--curl/makefile.mk4
-rw-r--r--icu/makefile.mk5
-rw-r--r--libxml2/makefile.mk4
-rw-r--r--libxslt/makefile.mk2
-rw-r--r--nss/makefile.mk4
-rw-r--r--python/Python-parallel-make.patch36
-rw-r--r--python/makefile.mk5
10 files changed, 42 insertions, 24 deletions
diff --git a/berkeleydb/makefile.mk b/berkeleydb/makefile.mk
index 0b6bbde381cb..751af3ca687c 100644
--- a/berkeleydb/makefile.mk
+++ b/berkeleydb/makefile.mk
@@ -76,7 +76,7 @@ CXXFLAGS:=-fno-strict-aliasing $(EXTRA_CFLAGS)
.IF "$(GUI)"=="UNX"
.IF "$(OS)$(COM)"=="LINUXGCC"
-LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN' -Wl,-z,noexecstack
+LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN'
.EXPORT: LDFLAGS
#The current dir when linking is unxlngi6.pro/misc/build/db-4.2.52.NC/out
# the map file is in unxlngi6.pro/misc/build/db-4.2.52.NC
diff --git a/cairo/cairo/makefile.mk b/cairo/cairo/makefile.mk
index a29012892576..a5ddbc6af935 100644
--- a/cairo/cairo/makefile.mk
+++ b/cairo/cairo/makefile.mk
@@ -120,7 +120,7 @@ OUT2INC+=src$/cairo-quartz.h
.ELSE
# ----------- Unix ---------------------------------------------------------
.IF "$(OS)$(COM)"=="LINUXGCC" || "$(OS)$(COM)"=="FREEBSDGCC"
-cairo_LDFLAGS+=-Wl,-rpath,'$$$$ORIGIN:$$$$ORIGIN/../ure-link/lib' -Wl,-noinhibit-exec -Wl,-z,noexecstack
+cairo_LDFLAGS+=-Wl,-rpath,'$$$$ORIGIN:$$$$ORIGIN/../ure-link/lib' -Wl,-noinhibit-exec
.ELIF "$(OS)$(COM)"=="SOLARISC52"
cairo_LDFLAGS+=-Wl,-R'$$$$ORIGIN:$$$$ORIGIN/../ure-link/lib'
.ENDIF # "$(OS)$(COM)"=="LINUXGCC" || "$(OS)$(COM)"=="FREEBSDGCC"
diff --git a/cairo/pixman/makefile.mk b/cairo/pixman/makefile.mk
index f3c1c091639c..b94e7673d996 100644
--- a/cairo/pixman/makefile.mk
+++ b/cairo/pixman/makefile.mk
@@ -92,7 +92,7 @@ BUILD_DIR=$(CONFIGURE_DIR)
.ELSE
# ----------- Unix ---------------------------------------------------------
.IF "$(OS)$(COM)"=="LINUXGCC" || "$(OS)$(COM)"=="FREEBSDGCC"
-LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN:$$$$ORIGIN/../ure-link/lib' -Wl,-noinhibit-exec -Wl,-z,noexecstack
+LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN:$$$$ORIGIN/../ure-link/lib' -Wl,-noinhibit-exec
.ENDIF # "$(OS)$(COM)"=="LINUXGCC"
.IF "$(OS)$(COM)"=="SOLARISC52"
diff --git a/curl/makefile.mk b/curl/makefile.mk
index adab75f41d49..f4e4c7f8ffd1 100644
--- a/curl/makefile.mk
+++ b/curl/makefile.mk
@@ -65,10 +65,6 @@ curl_CFLAGS+=-I$(SYSBASE)$/usr$/include
curl_LDFLAGS+=-L$(SYSBASE)$/usr$/lib
.ENDIF # "$(SYSBASE)"!=""
-.IF "$(OS)$(COM)$(CPU)"=="LINUXGCCI"
-curl_LDFLAGS+=-Wl,-z,noexecstack
-.ENDIF
-
.IF "$(OS)$(CPU)"=="SOLARISU"
curl_CFLAGS+:=$(ARCH_FLAGS)
curl_LDFLAGS+:=$(ARCH_FLAGS)
diff --git a/icu/makefile.mk b/icu/makefile.mk
index 92c5744a67f7..7542aeb1ccd1 100644
--- a/icu/makefile.mk
+++ b/icu/makefile.mk
@@ -78,11 +78,6 @@ CC:=gcc $(EXTRA_CFLAGS)
.ENDIF # "$(EXTRA_CFLAGS)"!=""
.ENDIF # "$(OS)"=="MACOSX"
-# Disable executable stack
-.IF "$(OS)$(COM)"=="LINUXGCC"
-icu_LDFLAGS+=-Wl,-z,noexecstack
-.ENDIF
-
icu_CFLAGS+=-O $(ARCH_FLAGS) $(EXTRA_CDEFS)
icu_LDFLAGS+=$(EXTRA_LINKFLAGS)
icu_CXXFLAGS+=-O $(ARCH_FLAGS) $(EXTRA_CDEFS)
diff --git a/libxml2/makefile.mk b/libxml2/makefile.mk
index bef2d43aa6e3..453ba3a68406 100644
--- a/libxml2/makefile.mk
+++ b/libxml2/makefile.mk
@@ -90,10 +90,6 @@ xml2_CFLAGS+=$(ARCH_FLAGS) $(C_RESTRICTIONFLAGS)
xml2_LDFLAGS+=-L$(SYSBASE)$/usr$/lib
.ENDIF # "$(SYSBASE)"!=""
-.IF "$(OS)$(COM)"=="LINUXGCC"
-xml2_LDFLAGS+=-Wl,-z,noexecstack
-.ENDIF
-
CONFIGURE_DIR=
.IF "$(OS)"=="OS2"
CONFIGURE_ACTION=sh .$/configure
diff --git a/libxslt/makefile.mk b/libxslt/makefile.mk
index fd7273b0c6b9..c4bb5f50977b 100644
--- a/libxslt/makefile.mk
+++ b/libxslt/makefile.mk
@@ -91,7 +91,7 @@ BUILD_DIR=$(CONFIGURE_DIR)
.ELSE
.IF "$(OS)$(COM)"=="LINUXGCC" || "$(OS)$(COM)"=="FREEBSDGCC"
-LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN:$$$$ORIGIN/../ure-link/lib' -Wl,-noinhibit-exec -Wl,-z,noexecstack
+LDFLAGS:=-Wl,-rpath,'$$$$ORIGIN:$$$$ORIGIN/../ure-link/lib' -Wl,-noinhibit-exec
.ENDIF # "$(OS)$(COM)"=="LINUXGCC"
.IF "$(OS)$(COM)"=="SOLARISC52"
LDFLAGS:=-Wl,-R'$$$$ORIGIN:$$$$ORIGIN/../ure-link/lib'
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 a35e596669a0..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=
@@ -66,10 +67,6 @@ CC+:=$(C_RESTRICTIONFLAGS)
.ENDIF # "$(COMNAME)"=="sunpro5"
.ENDIF # "$(SYSBASE)"!=""
-.IF "$(OS)$(COM)"=="LINUXGCC"
-python_LDFLAGS+=-Wl,-z,noexecstack
-.ENDIF
-
.IF "$(OS)$(CPU)"=="SOLARISU"
CC+:=$(ARCH_FLAGS)
python_LDFLAGS+=$(ARCH_FLAGS)