patches/gcc/4.4.6/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
parent 2149 98b7806295cc
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 -durN gcc-4.4.5.orig/Makefile.in gcc-4.4.5/Makefile.in
    10 --- gcc-4.4.5.orig/Makefile.in	2009-04-25 06:10:29.000000000 +0200
    11 +++ gcc-4.4.5/Makefile.in	2010-10-09 23:13:50.000000000 +0200
    12 @@ -245,7 +245,10 @@
    13  	STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
    14  	WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
    15  	WINDMC="$(WINDMC_FOR_TARGET)"; export WINDMC; \
    16 -	$(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
    17 +@if gcc-bootstrap
    18 +	$(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
    19 +@endif gcc-bootstrap
    20 +	$(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
    21  
    22  RAW_CXX_TARGET_EXPORTS = \
    23  	$(BASE_TARGET_EXPORTS) \
    24 diff -durN gcc-4.4.5.orig/Makefile.tpl gcc-4.4.5/Makefile.tpl
    25 --- gcc-4.4.5.orig/Makefile.tpl	2009-04-14 10:57:33.000000000 +0200
    26 +++ gcc-4.4.5/Makefile.tpl	2010-10-09 23:13:50.000000000 +0200
    27 @@ -248,7 +248,10 @@
    28  	STRIP="$(STRIP_FOR_TARGET)"; export STRIP; \
    29  	WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \
    30  	WINDMC="$(WINDMC_FOR_TARGET)"; export WINDMC; \
    31 -	$(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
    32 +@if gcc-bootstrap
    33 +	$(RPATH_ENVVAR)=`echo "$(TARGET_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); \
    34 +@endif gcc-bootstrap
    35 +	$(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH)$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR);
    36  
    37  RAW_CXX_TARGET_EXPORTS = \
    38  	$(BASE_TARGET_EXPORTS) \