patches/gcc/4.4.3/370-bootstrap-target_lib_path.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Mon Feb 21 23:39:46 2011 +0100 (2011-02-21)
changeset 2312 8b9938edd3d8
parent 1698 9c8f68607d75
permissions -rw-r--r--
libc/glibc: add fortify option

By default, recent versions of glibc and eglibc will build some
functions that take format strings (eg. printf, syslog...) with
run-time checks against some format string attacks. This is
called a fortified build.

Unfortunately, this fails somehow while building the instrumented
version of syslog, with some kind of circular dependency...

Disable fortified builds by default, and hide the enabling option
behind EXPERIMENTAL for daring users...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@1698
     1
ChangeLog:
yann@1698
     2
2010-01-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
yann@1698
     3
yann@1698
     4
	PR bootstrap/41818
yann@1698
     5
	* Makefile.tpl (BASE_TARGET_EXPORTS): Only add TARGET_LIB_PATH
yann@1698
     6
	to $(RPATH_ENVVAR) if bootstrapping.
yann@1698
     7
	* Makefile.in: Regenerate.
yann@1698
     8
yann@1698
     9
diff --git a/Makefile.in b/Makefile.in
yann@1698
    10
index e5fa1d3..dbfc1f0 100644
yann@1698
    11
--- a/Makefile.in
yann@1698
    12
+++ b/Makefile.in
yann@1698
    13
@@ -281,7 +281,10 @@ BASE_TARGET_EXPORTS = \
yann@1698
    14
 	STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
yann@1698
    15
 	WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
yann@1698
    16
 	WINDMC="$(WINDMC_FOR_TARGET)"; export WINDMC; \
yann@1698
    17
-	$(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
yann@1698
    18
+@if gcc-bootstrap
yann@1698
    19
+	$(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
yann@1698
    20
+@endif gcc-bootstrap
yann@1698
    21
+	$(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
yann@1698
    22
 
yann@1698
    23
 RAW_CXX_TARGET_EXPORTS = \
yann@1698
    24
 	$(BASE_TARGET_EXPORTS) \
yann@1698
    25
diff --git a/Makefile.tpl b/Makefile.tpl
yann@1698
    26
index 15102e5..452d47c 100644
yann@1698
    27
--- a/Makefile.tpl
yann@1698
    28
+++ b/Makefile.tpl
yann@1698
    29
@@ -284,7 +284,10 @@ BASE_TARGET_EXPORTS = \
yann@1698
    30
 	STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
yann@1698
    31
 	WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
yann@1698
    32
 	WINDMC="$(WINDMC_FOR_TARGET)"; export WINDMC; \
yann@1698
    33
-	$(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
yann@1698
    34
+@if gcc-bootstrap
yann@1698
    35
+	$(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
yann@1698
    36
+@endif gcc-bootstrap
yann@1698
    37
+	$(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
yann@1698
    38
 
yann@1698
    39
 RAW_CXX_TARGET_EXPORTS = \
yann@1698
    40
 	$(BASE_TARGET_EXPORTS) \