diff options
| -rw-r--r-- | meta/recipes-devtools/binutils/binutils-cross.inc | 3 | ||||
| -rw-r--r-- | meta/recipes-devtools/binutils/binutils.inc | 3 | ||||
| -rw-r--r-- | meta/recipes-devtools/gcc/gcc-common.inc | 10 | ||||
| -rw-r--r-- | meta/recipes-devtools/gcc/gcc-configure-common.inc | 3 | 
4 files changed, 16 insertions, 3 deletions
| diff --git a/meta/recipes-devtools/binutils/binutils-cross.inc b/meta/recipes-devtools/binutils/binutils-cross.inc index 982224ff2f..f07907ef13 100644 --- a/meta/recipes-devtools/binutils/binutils-cross.inc +++ b/meta/recipes-devtools/binutils/binutils-cross.inc @@ -10,7 +10,8 @@ EXTRA_OECONF = "--with-sysroot=${STAGING_DIR_TARGET} \                  --disable-werror \                  --disable-nls \                  --enable-poison-system-directories \ -		${@base_contains('DISTRO_FEATURES', 'ld-is-gold', '--enable-gold=default', '', d)}" +                ${@base_contains('DISTRO_FEATURES', 'ld-is-gold', '--enable-gold=default', '', d)} \ +                ${@base_contains('DISTRO_FEATURES', 'multiarch', '--enable-64-bit-bfd', '', d)}"  do_install () {  	oe_runmake 'DESTDIR=${D}' install diff --git a/meta/recipes-devtools/binutils/binutils.inc b/meta/recipes-devtools/binutils/binutils.inc index 58fee854e3..51e425791c 100644 --- a/meta/recipes-devtools/binutils/binutils.inc +++ b/meta/recipes-devtools/binutils/binutils.inc @@ -49,7 +49,8 @@ B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"  EXTRA_OECONF = "--program-prefix=${TARGET_PREFIX} \                  --enable-install-libbfd \ -                --enable-shared" +                --enable-shared \ +                ${@base_contains('DISTRO_FEATURES', 'multiarch', '--enable-64-bit-bfd', '', d)}"  EXTRA_OECONF_virtclass-native = "--enable-target=all --enable-64-bit-bfd --enable-install-libbfd" diff --git a/meta/recipes-devtools/gcc/gcc-common.inc b/meta/recipes-devtools/gcc/gcc-common.inc index 69e0213e9f..7ec2f7e463 100644 --- a/meta/recipes-devtools/gcc/gcc-common.inc +++ b/meta/recipes-devtools/gcc/gcc-common.inc @@ -21,6 +21,16 @@ def get_gcc_mips_plt_setting(bb, d):          return "--with-mips-plt"      return "" +def get_gcc_multiarch_setting(bb, d): +    if 'multiarch' in bb.data.getVar('DISTRO_FEATURES',d,1).split() : +        if bb.data.getVar('TARGET_ARCH', d, 1) in [ 'i586', 'i686' ] : +            return "--enable-targets=all" +        if bb.data.getVar('TARGET_ARCH', d, 1) in [ 'powerpc' ] : +            return "--enable-targets=powerpc64" +        if bb.data.getVar('TARGET_ARCH', d, 1) in [ 'sparc' ] : +            return "--enable-targets=all" +    return "" +  # We really need HOST_SYS here for some packages and TARGET_SYS for others.  # For now, libgcc is most important so we fix for that - RP.  SHLIBSDIR = "${STAGING_DIR_TARGET}/shlibs" diff --git a/meta/recipes-devtools/gcc/gcc-configure-common.inc b/meta/recipes-devtools/gcc/gcc-configure-common.inc index ae23e8ee49..d0149801db 100644 --- a/meta/recipes-devtools/gcc/gcc-configure-common.inc +++ b/meta/recipes-devtools/gcc/gcc-configure-common.inc @@ -42,7 +42,8 @@ EXTRA_OECONF = "${@['--enable-clocale=generic', ''][d.getVar('USE_NLS', 1) != 'n                  ${EXTRA_OECONF_BASE} \                  ${EXTRA_OECONF_FPU} \                  ${EXTRA_OECONF_PATHS} \ -                ${@get_gcc_mips_plt_setting(bb, d)}" +                ${@get_gcc_mips_plt_setting(bb, d)} \ +                ${@get_gcc_multiarch_setting(bb, d)}"  # Build uclibc compilers without cxa_atexit support  EXTRA_OECONF_append_linux               = " --enable-__cxa_atexit" | 
