patches/gcc/4.4.1/370-bootstrap-target_lib_path.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Tue Oct 16 20:57:44 2012 +0200 (2012-10-16)
changeset 3079 37831a33e07e
permissions -rw-r--r--
kernel/linux: fix using custom location

Currently, extract and patch are skipped as thus:
- using a custom directory of pre-installed headers
- a correctly named directory already exists

Otherwise, extract and patch are done.

The current second condition is wrong, because it allows the following
sequence to happen:
- a non-custom kernel is used
- a previous build only partially extracted the non-custom sources
- that p[revious build broke during extraction (eg. incomplete tarball...)
- a subsequent build will find a properly named directory, and will
thus skip extract and patch, which is wrong

Fix that by following the conditions in this table:

Type | Extract | Patch
----------------------+---------+-------
Pre-installed headers | N | N
custom directory | N | N
custom tarball | Y | N
mainstream tarball | Y | Y

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