patches/glibc/2.9/110-respect-env-CPPFLAGS.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Sep 12 23:51:25 2010 +0200 (2010-09-12)
changeset 2123 ff2181adbd28
parent 1201 c9967a6e3b25
permissions -rw-r--r--
cc/gcc: disable complibs if not selected

Force gcc to not link with some companion libraries when
there are not needed (because selected-out).

There is no option to tell gcc *not* to build the Graphite and/or
LTO stuff. They *will* be built if gcc finds the suitable companion
libraries. If we do not provide them, but the host has them, then
gcc *will* find them, and link with them.

Consider the following:
- host has suitable PPL and CLooG (eg. Debian Squeeze)
- user wants to build gcc>=4.4
- user de-selects GRAPHITE
- gcc will find the hosts PPL and CLooG, and will use them
- the user moves the toolchain to an older host that does
not have them (eg. Debian Lenny)
- the toolchain fails, when it was properly setup not to

So, explicitly tell gcc *not* to use unneeded companion libs.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 Original patch from: gentoo/src/patchsets/glibc/2.9/0030_all_glibc-respect-env-CPPFLAGS.patch
     2 
     3 -= BEGIN original header =-
     4 Respect environment CPPFLAGS when we run ./configure so we can inject
     5 random -D things without having to set CFLAGS/ASFLAGS
     6 
     7 -= END original header =-
     8 
     9 diff -durN glibc-2_9.orig/Makeconfig glibc-2_9/Makeconfig
    10 --- glibc-2_9.orig/Makeconfig	2008-08-18 11:42:17.000000000 +0200
    11 +++ glibc-2_9/Makeconfig	2009-02-02 22:00:35.000000000 +0100
    12 @@ -673,6 +673,7 @@
    13  	   $(foreach lib,$(libof-$(basename $(@F))) \
    14  		         $(libof-$(<F)) $(libof-$(@F)),$(CPPFLAGS-$(lib))) \
    15  	   $(CPPFLAGS-$(<F)) $(CPPFLAGS-$(@F)) $(CPPFLAGS-$(basename $(@F)))
    16 +CPPFLAGS += $(CPPFLAGS-config)
    17  override CFLAGS	= -std=gnu99 $(gnu89-inline-CFLAGS) \
    18  		  $(filter-out %frame-pointer,$(+cflags)) $(+gccwarn-c) \
    19  		  $(sysdep-CFLAGS) $(CFLAGS-$(suffix $@)) $(CFLAGS-$(<F)) \
    20 diff -durN glibc-2_9.orig/config.make.in glibc-2_9/config.make.in
    21 --- glibc-2_9.orig/config.make.in	2008-08-18 11:42:17.000000000 +0200
    22 +++ glibc-2_9/config.make.in	2009-02-02 22:00:35.000000000 +0100
    23 @@ -97,6 +97,7 @@
    24  CXX = @CXX@
    25  BUILD_CC = @BUILD_CC@
    26  CFLAGS = @CFLAGS@
    27 +CPPFLAGS-config = @CPPFLAGS@
    28  ASFLAGS-config = @ASFLAGS_config@
    29  AR = @AR@
    30  RANLIB = @RANLIB@