patches/uClibc/0.9.30.1/140-gnu89-inline.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 1248 5402327d22fa
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.
     2 
     3 -= BEGIN original header =-
     4 -= END original header =-
     5 
     6 diff -durN uClibc-0.9.30.orig/Rules.mak uClibc-0.9.30/Rules.mak
     7 --- uClibc-0.9.30.orig/Rules.mak	2008-11-12 13:24:16.000000000 +0100
     8 +++ uClibc-0.9.30/Rules.mak	2009-02-07 09:57:59.000000000 +0100
     9 @@ -519,6 +519,7 @@
    10  endif
    11  
    12  CFLAGS += $(call check_gcc,-std=gnu99,)
    13 +CFLAGS += $(call check_gcc,-fgnu89-inline,)
    14  
    15  LDFLAGS_NOSTRIP:=$(CPU_LDFLAGS-y) -Wl,-shared \
    16  	-Wl,--warn-common -Wl,--warn-once -Wl,-z,combreloc