diff --git a/packages/toolchain/lang/gcc/meta b/packages/toolchain/lang/gcc/meta index 9a320774b4..1928325136 100644 --- a/packages/toolchain/lang/gcc/meta +++ b/packages/toolchain/lang/gcc/meta @@ -19,7 +19,7 @@ ################################################################################ PKG_NAME="gcc" -PKG_VERSION="4.7.0" +PKG_VERSION="4.6.3" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/toolchain/lang/gcc/patches/gcc-4.6.3-PR48805_Do_not_instantiate_ADDR_EXPRs.patch b/packages/toolchain/lang/gcc/patches/gcc-4.6.3-PR48805_Do_not_instantiate_ADDR_EXPRs.patch new file mode 100644 index 0000000000..e68001ca3a --- /dev/null +++ b/packages/toolchain/lang/gcc/patches/gcc-4.6.3-PR48805_Do_not_instantiate_ADDR_EXPRs.patch @@ -0,0 +1,89 @@ +From gcc-patches-return-297783-listarch-gcc-patches=gcc dot gnu dot org at gcc dot gnu dot org Sat Jul 23 14:36:33 2011 +Return-Path: +Delivered-To: listarch-gcc-patches at gcc dot gnu dot org +Received: (qmail 13569 invoked by alias); 23 Jul 2011 14:36:33 -0000 +Received: (qmail 13561 invoked by uid 22791); 23 Jul 2011 14:36:32 -0000 +X-SWARE-Spam-Status: No, hits=-2.6 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,T_TO_NO_BRKTS_FREEMAIL +X-Spam-Check-By: sourceware.org +Received: from mail-gy0-f175.google.com (HELO mail-gy0-f175.google.com) (209.85.160.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 23 Jul 2011 14:36:10 +0000 +Received: by gyd12 with SMTP id 12so1979920gyd.20 for ; Sat, 23 Jul 2011 07:36:10 -0700 (PDT) +Received: by 10.236.76.197 with SMTP id b45mr3893810yhe.147.1311431770250; Sat, 23 Jul 2011 07:36:10 -0700 (PDT) +Received: from napoca (adsl-99-184-92-236.dsl.austtx.sbcglobal.net [99.184.92.236]) by mx.google.com with ESMTPS id j9sm565418yhn.81.2011.07.23.07.36.08 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 23 Jul 2011 07:36:09 -0700 (PDT) +Received: by napoca (sSMTP sendmail emulation); Sat, 23 Jul 2011 09:36:01 -0500 +From: Sebastian Pop +To: gcc-patches at gcc dot gnu dot org +Cc: rguenther at suse dot de, Sebastian Pop +Subject: [PATCH] Fix PR48805: Do not instantiate ADDR_EXPRs +Date: Sat, 23 Jul 2011 09:35:56 -0500 +Message-Id: <1311431756-16262-1-git-send-email-sebpop@gmail.com> +X-IsSubscribed: yes +Mailing-List: contact gcc-patches-help at gcc dot gnu dot org; run by ezmlm +Precedence: bulk +List-Id: +List-Archive: +List-Post: +List-Help: +Sender: gcc-patches-owner at gcc dot gnu dot org +Delivered-To: mailing list gcc-patches at gcc dot gnu dot org + +With this patch we avoid instantiating ADDR_EXPR: it makes no sense +to translate b[i] into b[{0, +, 1}_1]. + +Bootstrapped and tested on amd64-linux. + +2011-07-22 Sebastian Pop + + PR middle-end/48805 + * tree-scalar-evolution.c (instantiate_scev_r): Return + chrec_dont_know for ADDR_EXPR. + + * gcc.dg/graphite/id-pr48805.c: New. +--- + gcc/ChangeLog | 6 ++++++ + gcc/testsuite/ChangeLog | 5 +++++ + gcc/testsuite/gcc.dg/graphite/id-pr48805.c | 20 ++++++++++++++++++++ + gcc/tree-scalar-evolution.c | 1 + + 4 files changed, 32 insertions(+), 0 deletions(-) + create mode 100644 gcc/testsuite/gcc.dg/graphite/id-pr48805.c + +diff --git a/gcc/testsuite/gcc.dg/graphite/id-pr48805.c b/gcc/testsuite/gcc.dg/graphite/id-pr48805.c +new file mode 100644 +index 0000000..f13a828 +--- /dev/null ++++ b/gcc/testsuite/gcc.dg/graphite/id-pr48805.c +@@ -0,0 +1,20 @@ ++void *A(const void *a); ++void C(void); ++ ++static void B(unsigned short a[]) ++{ ++ long i, j, tmp; ++ ++ for(i = 0; i < 3; i++) { ++ for(j = 1; j <= 3; j++) ++ tmp -= a[i - j]; ++ ++ a[i] = (unsigned short)(tmp >> 1); ++ } ++} ++void C(void) ++{ ++ unsigned short a[3], b[3]; ++ B(b + 1); ++ A(a); ++} +diff --git a/gcc/tree-scalar-evolution.c b/gcc/tree-scalar-evolution.c +index bfa8c93..00fcd3f 100644 +--- a/gcc/tree-scalar-evolution.c ++++ b/gcc/tree-scalar-evolution.c +@@ -2645,6 +2645,7 @@ instantiate_scev_r (basic_block instantiate_below, + TREE_OPERAND (chrec, 0), + fold_conversions, cache, size_expr); + ++ case ADDR_EXPR: + case SCEV_NOT_KNOWN: + return chrec_dont_know; + +-- +1.7.4.1 + diff --git a/packages/toolchain/lang/gcc/patches/gcc-4.6.3-disable_multilib_i386_linux64.patch b/packages/toolchain/lang/gcc/patches/gcc-4.6.3-disable_multilib_i386_linux64.patch new file mode 100644 index 0000000000..b293a951be --- /dev/null +++ b/packages/toolchain/lang/gcc/patches/gcc-4.6.3-disable_multilib_i386_linux64.patch @@ -0,0 +1,25 @@ +diff -Naur gcc-4.6.0-old/gcc/config/i386/t-linux64 gcc-4.6.0-new/gcc/config/i386/t-linux64 +--- gcc-4.6.0-old/gcc/config/i386/t-linux64 2009-04-21 12:03:23.000000000 -0700 ++++ gcc-4.6.0-new/gcc/config/i386/t-linux64 2011-03-28 21:12:19.000000000 -0700 +@@ -23,13 +23,13 @@ + # 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 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) ++#MULTILIB_OPTIONS = m64/m32 ++#MULTILIB_DIRNAMES = 64 32 ++#MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) + +-LIBGCC = stmp-multilib +-INSTALL_LIBGCC = install-multilib ++#LIBGCC = stmp-multilib ++#INSTALL_LIBGCC = install-multilib + +-EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o crtbeginS.o crtendS.o \ +- crtbeginT.o crtprec32.o crtprec64.o crtprec80.o \ +- crtfastmath.o ++#EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o crtbeginS.o crtendS.o \ ++# crtbeginT.o crtprec32.o crtprec64.o crtprec80.o \ ++# crtfastmath.o diff --git a/packages/toolchain/lang/gcc/patches/gcc-4.7.0-dynamic_linker.patch b/packages/toolchain/lang/gcc/patches/gcc-4.6.3-dynamic_linker.patch similarity index 70% rename from packages/toolchain/lang/gcc/patches/gcc-4.7.0-dynamic_linker.patch rename to packages/toolchain/lang/gcc/patches/gcc-4.6.3-dynamic_linker.patch index a426c480a8..bf0dc1e4e3 100644 --- a/packages/toolchain/lang/gcc/patches/gcc-4.7.0-dynamic_linker.patch +++ b/packages/toolchain/lang/gcc/patches/gcc-4.6.3-dynamic_linker.patch @@ -1,18 +1,19 @@ -diff -Naur gcc-4.7.0/gcc/config/i386/linux64.h gcc-4.7.0.patch/gcc/config/i386/linux64.h ---- gcc-4.7.0/gcc/config/i386/linux64.h 2011-07-07 17:38:34.000000000 +0200 -+++ gcc-4.7.0.patch/gcc/config/i386/linux64.h 2012-03-24 04:52:53.523141300 +0100 -@@ -29,5 +29,5 @@ - #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64" +diff -Naur gcc-4.6.0-old/gcc/config/i386/linux64.h gcc-4.6.0-new/gcc/config/i386/linux64.h +--- gcc-4.6.0-old/gcc/config/i386/linux64.h 2011-03-28 21:06:17.000000000 -0700 ++++ gcc-4.6.0-new/gcc/config/i386/linux64.h 2011-03-28 21:07:35.000000000 -0700 +@@ -63,7 +63,7 @@ + done. */ #define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" -#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" --#define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2" +#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2" -+#define GLIBC_DYNAMIC_LINKERX32 "/lib/ld-linux-x32.so.2" -diff -Naur gcc-4.7.0/gcc/config/mips/iris6.h gcc-4.7.0.patch/gcc/config/mips/iris6.h ---- gcc-4.7.0/gcc/config/mips/iris6.h 2012-03-05 11:43:22.000000000 +0100 -+++ gcc-4.7.0.patch/gcc/config/mips/iris6.h 2012-03-24 04:52:13.358338349 +0100 -@@ -256,27 +256,27 @@ + + #if TARGET_64BIT_DEFAULT + #define SPEC_32 "m32" +diff -Naur gcc-4.6.0-old/gcc/config/mips/iris6.h gcc-4.6.0-new/gcc/config/mips/iris6.h +--- gcc-4.6.0-old/gcc/config/mips/iris6.h 2011-03-28 21:06:17.000000000 -0700 ++++ gcc-4.6.0-new/gcc/config/mips/iris6.h 2011-03-28 21:08:12.000000000 -0700 +@@ -226,27 +226,27 @@ #define STARTFILE_SPEC \ "%{!shared: \ %{mabi=n32: \ @@ -56,9 +57,9 @@ diff -Naur gcc-4.7.0/gcc/config/mips/iris6.h gcc-4.7.0.patch/gcc/config/mips/iri %{!shared:" \ SUBTARGET_DONT_WARN_UNUSED_SPEC \ " %{pthread:-lpthread} %{p:libprof1.a%s}%{pg:libprof1.a%s} -lc " \ -@@ -293,10 +293,10 @@ - "%{Ofast|ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \ - crtend.o%s irix-crtn.o%s \ +@@ -262,10 +262,10 @@ + #define ENDFILE_SPEC \ + "crtend.o%s irix-crtn.o%s \ %{!shared: \ - %{mabi=n32:%{mips4:/usr/lib32/mips4/crtn.o%s}\ - %{!mips4:/usr/lib32/mips3/crtn.o%s}}\ @@ -71,11 +72,11 @@ diff -Naur gcc-4.7.0/gcc/config/mips/iris6.h gcc-4.7.0.patch/gcc/config/mips/iri /* Generic part of the LINK_SPEC. */ #undef LINK_SPEC -diff -Naur gcc-4.7.0/gcc/config/mips/linux64.h gcc-4.7.0.patch/gcc/config/mips/linux64.h ---- gcc-4.7.0/gcc/config/mips/linux64.h 2011-07-19 20:00:27.000000000 +0200 -+++ gcc-4.7.0.patch/gcc/config/mips/linux64.h 2012-03-24 04:52:13.363338449 +0100 -@@ -24,9 +24,9 @@ - #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32" +diff -Naur gcc-4.6.0-old/gcc/config/mips/linux64.h gcc-4.6.0-new/gcc/config/mips/linux64.h +--- gcc-4.6.0-old/gcc/config/mips/linux64.h 2011-03-28 21:06:17.000000000 -0700 ++++ gcc-4.6.0-new/gcc/config/mips/linux64.h 2011-03-28 21:08:52.000000000 -0700 +@@ -36,9 +36,9 @@ + %{profile:-lc_p} %{!profile:-lc}}" #define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" -#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld.so.1" @@ -85,12 +86,12 @@ diff -Naur gcc-4.7.0/gcc/config/mips/linux64.h gcc-4.7.0.patch/gcc/config/mips/l +#define GLIBC_DYNAMIC_LINKERN32 "/lib/ld.so.1" +#define UCLIBC_DYNAMIC_LINKERN32 "/lib/ld-uClibc.so.0" #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32" - #define GNU_USER_DYNAMIC_LINKERN32 \ + #define LINUX_DYNAMIC_LINKERN32 \ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \ -diff -Naur gcc-4.7.0/gcc/config/rs6000/linux64.h gcc-4.7.0.patch/gcc/config/rs6000/linux64.h ---- gcc-4.7.0/gcc/config/rs6000/linux64.h 2012-03-12 17:16:51.000000000 +0100 -+++ gcc-4.7.0.patch/gcc/config/rs6000/linux64.h 2012-03-24 04:52:13.364338469 +0100 -@@ -359,7 +359,7 @@ +diff -Naur gcc-4.6.0-old/gcc/config/rs6000/linux64.h gcc-4.6.0-new/gcc/config/rs6000/linux64.h +--- gcc-4.6.0-old/gcc/config/rs6000/linux64.h 2011-03-28 21:06:17.000000000 -0700 ++++ gcc-4.6.0-new/gcc/config/rs6000/linux64.h 2011-03-28 21:07:35.000000000 -0700 +@@ -373,7 +373,7 @@ #define LINK_OS_DEFAULT_SPEC "%(link_os_linux)" #define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" @@ -99,10 +100,10 @@ diff -Naur gcc-4.7.0/gcc/config/rs6000/linux64.h gcc-4.7.0.patch/gcc/config/rs60 #define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" #define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" #if DEFAULT_LIBC == LIBC_UCLIBC -diff -Naur gcc-4.7.0/gcc/config/sparc/linux64.h gcc-4.7.0.patch/gcc/config/sparc/linux64.h ---- gcc-4.7.0/gcc/config/sparc/linux64.h 2011-11-12 02:05:07.000000000 +0100 -+++ gcc-4.7.0.patch/gcc/config/sparc/linux64.h 2012-03-24 04:52:13.365338489 +0100 -@@ -94,7 +94,7 @@ +diff -Naur gcc-4.6.0-old/gcc/config/sparc/linux64.h gcc-4.6.0-new/gcc/config/sparc/linux64.h +--- gcc-4.6.0-old/gcc/config/sparc/linux64.h 2011-03-28 21:06:17.000000000 -0700 ++++ gcc-4.6.0-new/gcc/config/sparc/linux64.h 2011-03-28 21:07:35.000000000 -0700 +@@ -102,7 +102,7 @@ done. */ #define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" @@ -111,7 +112,7 @@ diff -Naur gcc-4.7.0/gcc/config/sparc/linux64.h gcc-4.7.0.patch/gcc/config/sparc #ifdef SPARC_BI_ARCH -@@ -113,7 +113,7 @@ +@@ -121,7 +121,7 @@ %{static:-static}} \ " @@ -120,7 +121,7 @@ diff -Naur gcc-4.7.0/gcc/config/sparc/linux64.h gcc-4.7.0.patch/gcc/config/sparc %{!shared: \ %{!static: \ %{rdynamic:-export-dynamic} \ -@@ -202,7 +202,7 @@ +@@ -193,7 +193,7 @@ #else /* !SPARC_BI_ARCH */ #undef LINK_SPEC diff --git a/packages/toolchain/lang/gcc/patches/gcc-4.7.0-libstdc++-v3_config.patch b/packages/toolchain/lang/gcc/patches/gcc-4.6.3-libstdc++-v3_config.patch similarity index 84% rename from packages/toolchain/lang/gcc/patches/gcc-4.7.0-libstdc++-v3_config.patch rename to packages/toolchain/lang/gcc/patches/gcc-4.6.3-libstdc++-v3_config.patch index 12a99c3e30..e35dd2cc0b 100644 --- a/packages/toolchain/lang/gcc/patches/gcc-4.7.0-libstdc++-v3_config.patch +++ b/packages/toolchain/lang/gcc/patches/gcc-4.6.3-libstdc++-v3_config.patch @@ -1,7 +1,7 @@ -diff -Naur gcc-4.7.0-old/libstdc++-v3/config.h.in gcc-4.7.0-new/libstdc++-v3/config.h.in ---- gcc-4.7.0-old/libstdc++-v3/config.h.in 2012-03-22 08:25:54.000000000 -0700 -+++ gcc-4.7.0-new/libstdc++-v3/config.h.in 2012-03-22 08:28:32.000000000 -0700 -@@ -130,7 +130,7 @@ +diff -Naur gcc-4.6.0-old/libstdc++-v3/config.h.in gcc-4.6.0-new/libstdc++-v3/config.h.in +--- gcc-4.6.0-old/libstdc++-v3/config.h.in 2011-03-28 21:07:18.000000000 -0700 ++++ gcc-4.6.0-new/libstdc++-v3/config.h.in 2011-03-28 21:10:03.000000000 -0700 +@@ -115,7 +115,7 @@ #undef HAVE_FABSL /* Define to 1 if you have the header file. */ @@ -10,7 +10,7 @@ diff -Naur gcc-4.7.0-old/libstdc++-v3/config.h.in gcc-4.7.0-new/libstdc++-v3/con /* Define to 1 if you have the `finite' function. */ #undef HAVE_FINITE -@@ -184,7 +184,7 @@ +@@ -170,7 +170,7 @@ #undef HAVE_HYPOTL /* Define if you have the iconv() function. */ @@ -19,7 +19,7 @@ diff -Naur gcc-4.7.0-old/libstdc++-v3/config.h.in gcc-4.7.0-new/libstdc++-v3/con /* Define to 1 if you have the header file. */ #undef HAVE_IEEEFP_H -@@ -223,7 +223,7 @@ +@@ -209,7 +209,7 @@ #undef HAVE_ISWBLANK /* Define if LC_MESSAGES is available in . */ @@ -28,7 +28,7 @@ diff -Naur gcc-4.7.0-old/libstdc++-v3/config.h.in gcc-4.7.0-new/libstdc++-v3/con /* Define to 1 if you have the `ldexpf' function. */ #undef HAVE_LDEXPF -@@ -304,7 +304,7 @@ +@@ -290,7 +290,7 @@ #undef HAVE_QFPCLASS /* Define to 1 if you have the `setenv' function. */ @@ -37,7 +37,7 @@ diff -Naur gcc-4.7.0-old/libstdc++-v3/config.h.in gcc-4.7.0-new/libstdc++-v3/con /* Define to 1 if you have the `sincos' function. */ #undef HAVE_SINCOS -@@ -346,7 +346,7 @@ +@@ -329,7 +329,7 @@ #undef HAVE_STDLIB_H /* Define if strerror_l is available in . */ @@ -46,7 +46,7 @@ diff -Naur gcc-4.7.0-old/libstdc++-v3/config.h.in gcc-4.7.0-new/libstdc++-v3/con /* Define if strerror_r is available in . */ #undef HAVE_STRERROR_R -@@ -377,7 +377,7 @@ +@@ -360,7 +360,7 @@ #undef HAVE_SYS_IOCTL_H /* Define to 1 if you have the header file. */ @@ -55,7 +55,7 @@ diff -Naur gcc-4.7.0-old/libstdc++-v3/config.h.in gcc-4.7.0-new/libstdc++-v3/con /* Define to 1 if you have the header file. */ #undef HAVE_SYS_ISA_DEFS_H -@@ -389,10 +389,10 @@ +@@ -372,16 +372,16 @@ #undef HAVE_SYS_PARAM_H /* Define to 1 if you have the header file. */ @@ -68,8 +68,6 @@ diff -Naur gcc-4.7.0-old/libstdc++-v3/config.h.in gcc-4.7.0-new/libstdc++-v3/con /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H -@@ -401,7 +401,7 @@ - #undef HAVE_SYS_SYSINFO_H /* Define to 1 if you have the header file. */ -#undef HAVE_SYS_TIME_H @@ -77,7 +75,7 @@ diff -Naur gcc-4.7.0-old/libstdc++-v3/config.h.in gcc-4.7.0-new/libstdc++-v3/con /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H -@@ -431,7 +431,7 @@ +@@ -411,7 +411,7 @@ #undef HAVE_TGMATH_H /* Define to 1 if the target supports thread-local storage. */ @@ -86,7 +84,7 @@ diff -Naur gcc-4.7.0-old/libstdc++-v3/config.h.in gcc-4.7.0-new/libstdc++-v3/con /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H -@@ -644,7 +644,7 @@ +@@ -624,7 +624,7 @@ #undef HAVE__TANL /* Define as const if the declaration of iconv() needs const. */ diff --git a/packages/toolchain/lang/gcc/patches/gcc-4.7.0-disable_multilib_i386_linux64.patch b/packages/toolchain/lang/gcc/patches/gcc-4.7.0-disable_multilib_i386_linux64.patch deleted file mode 100644 index e186a5b63c..0000000000 --- a/packages/toolchain/lang/gcc/patches/gcc-4.7.0-disable_multilib_i386_linux64.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -Naur gcc-4.7.0-old/gcc/config/i386/t-linux64 gcc-4.7.0-new/gcc/config/i386/t-linux64 ---- gcc-4.7.0-old/gcc/config/i386/t-linux64 2012-03-22 08:21:36.000000000 -0700 -+++ gcc-4.7.0-new/gcc/config/i386/t-linux64 2012-03-22 08:24:29.000000000 -0700 -@@ -31,9 +31,9 @@ - # /lib64 has x86-64 libraries. - # /libx32 has x32 libraries. - # --comma=, --MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG)) --MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS))) --MULTILIB_OSDIRNAMES = m64=../lib64 --MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) --MULTILIB_OSDIRNAMES+= mx32=../libx32 -+comma=, -+MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG)) -+MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS))) -+#MULTILIB_OSDIRNAMES = m64=../lib64 -+#MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) -+#MULTILIB_OSDIRNAMES+= mx32=../libx32