[OE-core] [PATCH 8/8] gcc: enable multilib for target gcc

McClintock Matthew-B29882 B29882 at freescale.com
Thu Mar 15 02:47:13 UTC 2012


On Wed, Mar 14, 2012 at 9:02 PM,  <nitin.a.kamble at intel.com> wrote:
> +    multilibs = d.getVar('MULTILIB_VARIANTS', True)
> +    target_arch = d.getVar('TARGET_ARCH', True)
> +
> +    gcc_target_config_files = {
> +        'x86_64'      : ['gcc/config/i386/t-linux64', 'gcc/config/i386/t-linux'],
> +        'i586'        : ['gcc/config/mips/t-linux'],
> +        'mips'        : ['gcc/config/mips/t-linux64', 'gcc/config/mips/t-linux'],
> +        'ppc'         : ['gcc/config/rs6000/t-linux64'] }
> +
> +    gcc_header_config_files = {
> +        'x86_64'      : ['gcc/config/i386/linux64.h'],
> +        'i586'        : ['gcc/config/mips/linux.h'],
> +        'mips'        : ['gcc/config/mips/linux64.h', 'gcc/config/mips/linux.h'],
> +        'ppc'         : ['gcc/config/rs6000/linux64.h', 'gcc/config/rs6000/linux.h'] }
> +
> +    if target_arch not in gcc_target_config_files:
> +        bb.warn('gcc multilib setup is not supported for TARGET_ARCH=' + target_arch)
> +        return
> +
> +    gcc_multilib_target_config_files = gcc_target_config_files[target_arch]
> +    gcc_multilib_header_config_files = gcc_header_config_files[target_arch]
> +
> +    ml_list = ['DEFAULTTUNE']
> +    if multilibs != '':
> +        for ml in multilibs.split(' '):
> +            ml_list.append('DEFAULTTUNE_virtclass-multilib-' + ml)

What about adding non-multilib variants? I want to make one toolchain
for ppce500v2, ppce500mc, ppce5550, and ppc64e5500?

Also, somehow, should we enforce all "toolchains" are built through
this multilib build process such that I only need to configure things
properly and then theoretically I can make a toolchain ONCE that
supports all desired targets? E.g. I don't think we want references to
DEFAULTTUNE since I don't want the DEFAULTTUNE to matter? Does this
make any sense?

-M




More information about the Openembedded-core mailing list