X32 abi

From Yocto Project
Jump to navigationJump to search

Vision

Incorporate toolchain components and other bits (binutils, gcc, glibc, gdb, kernel, linux-libc-headers) into a meta-x32 layer; And added needed infrastructure into the oe-core/yocto tree so that meta-x32 layer can work on top; so that one can build complete images with x32 abi binaries.

Status

  • The meta-x32 layer is hosting the x32 tollchain recipes now
  • core-image-sato can build and run under qemu
  • Many recipes have been fixed for compilation with x32 toolchain.

X32 poky setup

  • add meta-x32 layer - For Edison and Denzil, this is not need for 1.3
    • git clone x32 layer
git clone git://git.yoctoproject.org/experimental/meta-x32
    • cat conf/bblayers.conf
# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly
LCONF_VERSION = "4"

BBFILES ?= ""
BBLAYERS = " \
  /home/nitin/prj/poky.git/meta \
  /home/nitin/prj/poky.git/meta-yocto \
  /home/nitin/prj/meta-x32.git \
  "
  • And add these lines to local.conf - for all releases
MACHINE = "qemux86-64"
DEFAULTTUNE = "x86-64-x32"
#MACHINE = "atom-pc"
#DEFAULTTUNE = "core2-64-x32"
baselib = "${@d.getVar('BASE_LIB_tune-' + (d.getVar('DEFAULTTUNE', True) or 'INVALID'), True) or 'lib'}"

Tasks

  • try and find some way of assessing performance