]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Backport:
authorKaveh R. Ghazi <ghazi@caip.rutgers.edu>
Wed, 5 Mar 2008 18:16:40 +0000 (18:16 +0000)
committerKaveh Ghazi <ghazi@gcc.gnu.org>
Wed, 5 Mar 2008 18:16:40 +0000 (18:16 +0000)
2007-09-27  Matthias Klose  <doko@ubuntu.com>

* config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Use ../lib32 as the
multilib osdirname if it exists.
* config/rs6000/t-linux64 (MULTILIB_OSDIRNAMES): Likewise.

From-SVN: r132948

gcc/ChangeLog
gcc/config/i386/t-linux64
gcc/config/rs6000/t-linux64

index 9a07b6492ea5a6dab398675ef65656ccbebefca2..46b345352768802e9650c9e9b9dd41c77231b6c0 100644 (file)
@@ -1,3 +1,12 @@
+2008-03-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       Backport:
+       2007-09-27  Matthias Klose  <doko@ubuntu.com>
+
+       * config/i386/t-linux64 (MULTILIB_OSDIRNAMES): Use ../lib32 as the
+       multilib osdirname if it exists.
+       * config/rs6000/t-linux64 (MULTILIB_OSDIRNAMES): Likewise.
+
 2008-02-14  Alan Modra  <amodra@bigpond.net.au>
 
        PR target/34393
index aac59a08e36840fa0609a419e24f097520127a1b..61a13a137e5aa9c12ee58d5fdf1edb543b6135e9 100644 (file)
@@ -4,9 +4,16 @@
 SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver \
                 $(srcdir)/config/i386/libgcc-x86_64-glibc.ver
 
+# On Debian, Ubuntu and other derivative distributions, the 32bit libraries
+# are found in /lib32 and /usr/lib32, /lib64 and /usr/lib64 are symlinks to
+# /lib and /usr/lib, while other distributions install libraries into /lib64
+# and /usr/lib64.  The LSB does not enforce the use of /lib64 and /usr/lib64,
+# it doesn't tell anything about the 32bit libraries on those systems.  Set
+# MULTILIB_OSDIRNAMES according to what is found on the target.
+
 MULTILIB_OPTIONS = m64/m32
 MULTILIB_DIRNAMES = 64 32 
-MULTILIB_OSDIRNAMES = ../lib64 ../lib
+MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
 
 LIBGCC = stmp-multilib
 INSTALL_LIBGCC = install-multilib
index 2c30a89892fb45d5672ab1f53b4817cc419ed27f..d61cd80ca16c9b4a40d7865df1875cf300d3faf9 100644 (file)
@@ -6,12 +6,19 @@ LIB2FUNCS_EXTRA = tramp.S $(srcdir)/config/rs6000/ppc64-fp.c \
 
 TARGET_LIBGCC2_CFLAGS += -mno-minimal-toc
 
+# On Debian, Ubuntu and other derivative distributions, the 32bit libraries
+# are found in /lib32 and /usr/lib32, /lib64 and /usr/lib64 are symlinks to
+# /lib and /usr/lib, while other distributions install libraries into /lib64
+# and /usr/lib64.  The LSB does not enforce the use of /lib64 and /usr/lib64,
+# it doesn't tell anything about the 32bit libraries on those systems.  Set
+# MULTILIB_OSDIRNAMES according to what is found on the target.
+
 MULTILIB_OPTIONS        = m64/m32 msoft-float
 MULTILIB_DIRNAMES       = 64 32 nof
 MULTILIB_EXTRA_OPTS     = fPIC mstrict-align
 MULTILIB_EXCEPTIONS     = m64/msoft-float
 MULTILIB_EXCLUSIONS     = m64/!m32/msoft-float
-MULTILIB_OSDIRNAMES    = ../lib64 ../lib nof
+MULTILIB_OSDIRNAMES    = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) nof
 MULTILIB_MATCHES        = $(MULTILIB_MATCHES_FLOAT)
 
 # We want fine grained libraries, so use the new code to build the