Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 0/4] Commits enabling x32 infrastructure in the master branch
@ 2011-07-27 23:09 nitin.a.kamble
  2011-07-27 23:09 ` [PATCH 1/4] toolchain-scripts & other classes: add TARGET_LD_ARCH & TARGET_AS_ARCH vars nitin.a.kamble
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: nitin.a.kamble @ 2011-07-27 23:09 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

These commits add infrastructure to the oe-core/yocto to add the meta-x32 layer to build x32 images. core-image-minimal has been tested to work with this commits

=== How to build an image with x32 binaries

Add this layer on top of yocto/oe-core
  http://git.pokylinux.org/cgit/cgit.cgi/experimental/meta-x32/
Add these lines in your conf/local.conf
  MACHINE = "qemux86-64"
  DEFAULTTUNE = "x86-64-x32"
  TUNE_PKGARCH = "x86-64-x32"

And build the minimal image with command:
  bitbake core-image-minimal 

And then run it with qemu with this command:
  runqemu qemux86-64 core-image-minimal


=== How to know if your binaries/libraries are x32:
  Run the file command to know what type of elf binary is it. It should 
  be 32bit x86-64 elf binary as seen here:
  $ file bin/busybox 
bin/busybox: setuid ELF 32-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.35, not stripped

  $file usr/lib/libz.so.1.2.5 
usr/lib/libz.so.1.2.5: ELF 32-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped

The following changes since commit f94b781695cd8fa387daff16ecbf3987a0883018:

  poky.conf: explicitly referenced preferred linux-yocto version (2011-07-27 09:56:56 -0700)

are available in the git repository at:
  git://git.pokylinux.org/poky-contrib nitin/x32
  http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=nitin/x32

Nitin A Kamble (4):
  toolchain-scripts & other classes: add TARGET_LD_ARCH &
    TARGET_AS_ARCH vars
  siteinfo.bbclass: add entries for new x86_64 ABI targets
  insane.bbclass: add entries for linux-gnu<ABI>
  x86 tune inc files: add x32 abi tune parameters

 meta/classes/allarch.bbclass                 |    2 ++
 meta/classes/cross-canadian.bbclass          |    2 ++
 meta/classes/cross.bbclass                   |    2 ++
 meta/classes/crosssdk.bbclass                |    2 ++
 meta/classes/insane.bbclass                  |    9 +++++++++
 meta/classes/native.bbclass                  |   10 +++++++---
 meta/classes/nativesdk.bbclass               |    4 ++++
 meta/classes/siteinfo.bbclass                |   14 +++++++++++++-
 meta/classes/toolchain-scripts.bbclass       |    9 +++++----
 meta/conf/bitbake.conf                       |   23 +++++++++++++++++------
 meta/conf/machine/include/ia32/arch-ia32.inc |   23 ++++++++++++++++++++---
 meta/conf/machine/include/tune-core2.inc     |    4 ++++
 meta/conf/machine/include/tune-x86_64.inc    |    2 +-
 13 files changed, 88 insertions(+), 18 deletions(-)

-- 
1.7.4.4




^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 1/4] toolchain-scripts & other classes: add TARGET_LD_ARCH & TARGET_AS_ARCH vars
  2011-07-27 23:09 [PATCH 0/4] Commits enabling x32 infrastructure in the master branch nitin.a.kamble
@ 2011-07-27 23:09 ` nitin.a.kamble
  2011-07-27 23:09 ` [PATCH 2/4] siteinfo.bbclass: add entries for new x86_64 ABI targets nitin.a.kamble
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 8+ messages in thread
From: nitin.a.kamble @ 2011-07-27 23:09 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

This is comming from x32 need to pass special parameters to ld & as.

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 meta/classes/allarch.bbclass           |    2 ++
 meta/classes/cross-canadian.bbclass    |    2 ++
 meta/classes/cross.bbclass             |    2 ++
 meta/classes/crosssdk.bbclass          |    2 ++
 meta/classes/native.bbclass            |   10 +++++++---
 meta/classes/nativesdk.bbclass         |    4 ++++
 meta/classes/toolchain-scripts.bbclass |    9 +++++----
 meta/conf/bitbake.conf                 |   23 +++++++++++++++++------
 8 files changed, 41 insertions(+), 13 deletions(-)

diff --git a/meta/classes/allarch.bbclass b/meta/classes/allarch.bbclass
index 26fca70..a2f8179 100644
--- a/meta/classes/allarch.bbclass
+++ b/meta/classes/allarch.bbclass
@@ -12,4 +12,6 @@ INHIBIT_DEFAULT_DEPS = "1"
 TARGET_ARCH = "allarch"
 TARGET_OS = "linux"
 TARGET_CC_ARCH = "none"
+TARGET_LD_ARCH = "none"
+TARGET_AS_ARCH = "none"
 PACKAGE_EXTRA_ARCHS = ""
diff --git a/meta/classes/cross-canadian.bbclass b/meta/classes/cross-canadian.bbclass
index c878d7f..601175d 100644
--- a/meta/classes/cross-canadian.bbclass
+++ b/meta/classes/cross-canadian.bbclass
@@ -39,6 +39,8 @@ HOST_VENDOR = "${SDK_VENDOR}"
 HOST_OS = "${SDK_OS}"
 HOST_PREFIX = "${SDK_PREFIX}"
 HOST_CC_ARCH = "${SDK_CC_ARCH}"
+HOST_LD_ARCH = "${SDK_LD_ARCH}"
+HOST_AS_ARCH = "${SDK_AS_ARCH}"
 
 #assign DPKG_ARCH
 DPKG_ARCH = "${SDK_ARCH}"
diff --git a/meta/classes/cross.bbclass b/meta/classes/cross.bbclass
index e19614f..519aa0d 100644
--- a/meta/classes/cross.bbclass
+++ b/meta/classes/cross.bbclass
@@ -11,6 +11,8 @@ HOST_VENDOR = "${BUILD_VENDOR}"
 HOST_OS = "${BUILD_OS}"
 HOST_PREFIX = "${BUILD_PREFIX}"
 HOST_CC_ARCH = "${BUILD_CC_ARCH}"
+HOST_LD_ARCH = "${BUILD_LD_ARCH}"
+HOST_AS_ARCH = "${BUILD_AS_ARCH}"
 
 STAGING_DIR_HOST = "${STAGING_DIR}/${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
 
diff --git a/meta/classes/crosssdk.bbclass b/meta/classes/crosssdk.bbclass
index a2e5a22..5cfa43b 100644
--- a/meta/classes/crosssdk.bbclass
+++ b/meta/classes/crosssdk.bbclass
@@ -9,6 +9,8 @@ TARGET_VENDOR = "${SDK_VENDOR}"
 TARGET_OS = "${SDK_OS}"
 TARGET_PREFIX = "${SDK_PREFIX}"
 TARGET_CC_ARCH = "${SDK_CC_ARCH}"
+TARGET_LD_ARCH = "${SDK_LD_ARCH}"
+TARGET_AS_ARCH = "${SDK_AS_ARCH}"
 TARGET_FPU = ""
 
 target_libdir = "${SDKPATHNATIVE}${libdir_nativesdk}"
diff --git a/meta/classes/native.bbclass b/meta/classes/native.bbclass
index 00f7b9f..9a41f19 100644
--- a/meta/classes/native.bbclass
+++ b/meta/classes/native.bbclass
@@ -24,6 +24,8 @@ TARGET_OS = "${BUILD_OS}"
 TARGET_VENDOR = "${BUILD_VENDOR}"
 TARGET_PREFIX = "${BUILD_PREFIX}"
 TARGET_CC_ARCH = "${BUILD_CC_ARCH}"
+TARGET_LD_ARCH = "${BUILD_LD_ARCH}"
+TARGET_AS_ARCH = "${BUILD_AS_ARCH}"
 TARGET_FPU = ""
 
 HOST_ARCH = "${BUILD_ARCH}"
@@ -31,6 +33,8 @@ HOST_OS = "${BUILD_OS}"
 HOST_VENDOR = "${BUILD_VENDOR}"
 HOST_PREFIX = "${BUILD_PREFIX}"
 HOST_CC_ARCH = "${BUILD_CC_ARCH}"
+HOST_LD_ARCH = "${BUILD_LD_ARCH}"
+HOST_AS_ARCH = "${BUILD_AS_ARCH}"
 
 CPPFLAGS = "${BUILD_CPPFLAGS}"
 CFLAGS = "${BUILD_CFLAGS}"
@@ -50,11 +54,11 @@ export CONFIG_SITE = ""
 export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}"
 export CXX = "${CCACHE}${HOST_PREFIX}g++ ${HOST_CC_ARCH}"
 export F77 = "${CCACHE}${HOST_PREFIX}g77 ${HOST_CC_ARCH}"
-export CPP = "${HOST_PREFIX}gcc -E"
-export LD = "${HOST_PREFIX}ld"
+export CPP = "${HOST_PREFIX}gcc ${HOST_CC_ARCH} -E"
+export LD = "${HOST_PREFIX}ld ${HOST_LD_ARCH} "
 export CCLD = "${CC}"
 export AR = "${HOST_PREFIX}ar"
-export AS = "${HOST_PREFIX}as"
+export AS = "${HOST_PREFIX}as ${HOST_AS_ARCH}"
 export RANLIB = "${HOST_PREFIX}ranlib"
 export STRIP = "${HOST_PREFIX}strip"
 
diff --git a/meta/classes/nativesdk.bbclass b/meta/classes/nativesdk.bbclass
index de7a883..152d053 100644
--- a/meta/classes/nativesdk.bbclass
+++ b/meta/classes/nativesdk.bbclass
@@ -24,6 +24,8 @@ HOST_VENDOR = "${SDK_VENDOR}"
 HOST_OS = "${SDK_OS}"
 HOST_PREFIX = "${SDK_PREFIX}"
 HOST_CC_ARCH = "${SDK_CC_ARCH}"
+HOST_LD_ARCH = "${SDK_LD_ARCH}"
+HOST_AS_ARCH = "${SDK_AS_ARCH}"
 #HOST_SYS = "${HOST_ARCH}${TARGET_VENDOR}-${HOST_OS}"
 
 TARGET_ARCH = "${SDK_ARCH}"
@@ -31,6 +33,8 @@ TARGET_VENDOR = "${SDK_VENDOR}"
 TARGET_OS = "${SDK_OS}"
 TARGET_PREFIX = "${SDK_PREFIX}"
 TARGET_CC_ARCH = "${SDK_CC_ARCH}"
+TARGET_LD_ARCH = "${SDK_LD_ARCH}"
+TARGET_AS_ARCH = "${SDK_AS_ARCH}"
 TARGET_FPU = ""
 
 CPPFLAGS = "${BUILDSDK_CPPFLAGS}"
diff --git a/meta/classes/toolchain-scripts.bbclass b/meta/classes/toolchain-scripts.bbclass
index 3301319..b980926 100644
--- a/meta/classes/toolchain-scripts.bbclass
+++ b/meta/classes/toolchain-scripts.bbclass
@@ -24,8 +24,8 @@ toolchain_create_sdk_env_script () {
 	fi
 	echo 'export CFLAGS="${TARGET_CC_ARCH} --sysroot=${SDKTARGETSYSROOT}"' >> $script
 	echo 'export CXXFLAGS="${TARGET_CC_ARCH} --sysroot=${SDKTARGETSYSROOT}"' >> $script
-	echo 'export LDFLAGS="--sysroot=${SDKTARGETSYSROOT}"' >> $script
-	echo 'export CPPFLAGS="--sysroot=${SDKTARGETSYSROOT}"' >> $script
+	echo 'export LDFLAGS="${TARGET_LD_ARCH} --sysroot=${SDKTARGETSYSROOT}"' >> $script
+	echo 'export CPPFLAGS="${TARGET_CC_ARCH} --sysroot=${SDKTARGETSYSROOT}"' >> $script
 	echo 'export OECORE_NATIVE_SYSROOT="${SDKPATHNATIVE}"' >> $script
 	echo 'export OECORE_TARGET_SYSROOT="${SDKTARGETSYSROOT}"' >> $script
 	echo 'export OECORE_ACLOCAL_OPTS="-I ${SDKPATHNATIVE}/usr/share/aclocal"' >> $script
@@ -58,6 +58,7 @@ toolchain_create_tree_env_script () {
 	fi
 	echo 'export CFLAGS="${TARGET_CC_ARCH}"' >> $script
 	echo 'export CXXFLAGS="${TARGET_CC_ARCH}"' >> $script
+	echo 'export LDFLAGS="${TARGET_LD_ARCH}"' >> $script
 	echo 'export OECORE_NATIVE_SYSROOT="${STAGING_DIR_NATIVE}"' >> $script
 	echo 'export OECORE_TARGET_SYSROOT="${STAGING_DIR_TARGET}"' >> $script
 	echo 'export OECORE_ACLOCAL_OPTS="-I ${STAGING_DIR_NATIVE}/usr/share/aclocal"' >> $script
@@ -87,8 +88,8 @@ toolchain_create_sdk_env_script_for_installer () {
 	fi
 	echo 'export CFLAGS="${TARGET_CC_ARCH} --sysroot=##SDKTARGETSYSROOT##"' >> $script
 	echo 'export CXXFLAGS="${TARGET_CC_ARCH} --sysroot=##SDKTARGETSYSROOT##"' >> $script
-	echo 'export LDFLAGS="--sysroot=##SDKTARGETSYSROOT##"' >> $script
-	echo 'export CPPFLAGS="--sysroot=##SDKTARGETSYSROOT##"' >> $script
+	echo 'export LDFLAGS="${TARGET_LD_ARCH} --sysroot=##SDKTARGETSYSROOT##"' >> $script
+	echo 'export CPPFLAGS="${TARGET_CC_ARCH} --sysroot=##SDKTARGETSYSROOT##"' >> $script
 	echo 'export OECORE_NATIVE_SYSROOT="${SDKPATHNATIVE}"' >> $script
 	echo 'export OECORE_TARGET_SYSROOT="##SDKTARGETSYSROOT##"' >> $script
         echo 'export OECORE_ACLOCAL_OPTS="-I ${SDKPATHNATIVE}/usr/share/acloal"' >> $script
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 6e109ec..fb37ee5 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -71,6 +71,8 @@ BUILD_VENDOR = ""
 BUILD_SYS = "${BUILD_ARCH}${BUILD_VENDOR}-${BUILD_OS}"
 BUILD_PREFIX = ""
 BUILD_CC_ARCH = ""
+BUILD_LD_ARCH = ""
+BUILD_AS_ARCH = ""
 BUILD_EXEEXT = ""
 
 HOST_ARCH = "${TARGET_ARCH}"
@@ -79,10 +81,14 @@ HOST_VENDOR = "${TARGET_VENDOR}"
 HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
 HOST_PREFIX = "${TARGET_PREFIX}"
 HOST_CC_ARCH = "${TARGET_CC_ARCH}"
+HOST_LD_ARCH = "${TARGET_LD_ARCH}"
+HOST_AS_ARCH = "${TARGET_AS_ARCH}"
 HOST_EXEEXT = ""
 
 TUNE_ARCH ??= "INVALID"
 TUNE_CCARGS ??= ""
+TUNE_LDARGS ??= ""
+TUNE_ASARGS ??= ""
 TUNE_FEATURES ??= "${TUNE_FEATURES_tune-${DEFAULTTUNE}}"
 PACKAGE_EXTRA_ARCHS_tune-${DEFAULTTUNE} ??= "${TARGET_ARCH}"
 LIBCEXTENSION ??= ""
@@ -94,6 +100,8 @@ TARGET_VENDOR = "-oe"
 TARGET_SYS = "${TARGET_ARCH}${TARGET_VENDOR}${@['-' + bb.data.getVar('TARGET_OS', d, 1), ''][bb.data.getVar('TARGET_OS', d, 1) == ('' or 'custom')]}"
 TARGET_PREFIX = "${TARGET_SYS}-"
 TARGET_CC_ARCH = "${TUNE_CCARGS}"
+TARGET_LD_ARCH = "${TUNE_LDARGS}"
+TARGET_AS_ARCH = "${TUNE_ASARGS}"
 
 SDK_ARCH = "${BUILD_ARCH}"
 SDK_OS = "${BUILD_OS}"
@@ -101,6 +109,8 @@ SDK_VENDOR = "-oesdk"
 SDK_SYS = "${SDK_ARCH}${SDK_VENDOR}${@['-' + bb.data.getVar('SDK_OS', d, 1), ''][bb.data.getVar('SDK_OS', d, 1) == ('' or 'custom')]}"
 SDK_PREFIX = "${SDK_SYS}-"
 SDK_CC_ARCH = "${BUILD_CC_ARCH}"
+SDK_LD_ARCH = "${BUILD_LD_ARCH}"
+SDK_AS_ARCH = "${BUILD_AS_ARCH}"
 
 PACKAGE_ARCH = "${TUNE_PKGARCH}"
 MACHINE_ARCH = "${@[bb.data.getVar('TUNE_PKGARCH', d, 1), bb.data.getVar('MACHINE', d, 1)][bool(bb.data.getVar('MACHINE', d, 1))].replace('-', '_')}"
@@ -398,11 +408,11 @@ export CCACHE_DIR = "${TMPDIR}/ccache/${HOST_SYS}/${PN}"
 export CC = "${CCACHE}${HOST_PREFIX}gcc ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
 export CXX = "${CCACHE}${HOST_PREFIX}g++ ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
 export F77 = "${CCACHE}${HOST_PREFIX}g77 ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}"
-export CPP = "${HOST_PREFIX}gcc -E${TOOLCHAIN_OPTIONS}"
-export LD = "${HOST_PREFIX}ld${TOOLCHAIN_OPTIONS}"
+export CPP = "${HOST_PREFIX}gcc -E${TOOLCHAIN_OPTIONS} ${HOST_CC_ARCH}"
+export LD = "${HOST_PREFIX}ld${TOOLCHAIN_OPTIONS} ${HOST_LD_ARCH}"
 export CCLD = "${CC}"
 export AR = "${HOST_PREFIX}ar"
-export AS = "${HOST_PREFIX}as"
+export AS = "${HOST_PREFIX}as ${HOST_AS_ARCH}"
 export RANLIB = "${HOST_PREFIX}ranlib"
 export STRIP = "${HOST_PREFIX}strip"
 export OBJCOPY = "${HOST_PREFIX}objcopy"
@@ -413,10 +423,11 @@ PYTHON = "${@sys.executable}"
 export BUILD_CC = "${CCACHE}${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}"
 export BUILD_CXX = "${CCACHE}${BUILD_PREFIX}g++ ${BUILD_CC_ARCH}"
 export BUILD_F77 = "${CCACHE}${BUILD_PREFIX}g77 ${BUILD_CC_ARCH}"
-export BUILD_CPP = "${BUILD_PREFIX}cpp"
-export BUILD_LD = "${BUILD_PREFIX}ld"
-export BUILD_CCLD = "${BUILD_PREFIX}gcc"
+export BUILD_CPP = "${BUILD_PREFIX}cpp ${BUILD_CC_ARCH}"
+export BUILD_LD = "${BUILD_PREFIX}ld ${BUILD_LD_ARCH}"
+export BUILD_CCLD = "${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}"
 export BUILD_AR = "${BUILD_PREFIX}ar"
+export BUILD_AS = "${BUILD_PREFIX}as ${BUILD_AS_ARCH}"
 export BUILD_RANLIB = "${BUILD_PREFIX}ranlib"
 export BUILD_STRIP = "${BUILD_PREFIX}strip"
 export BUILD_NM = "${BUILD_PREFIX}nm"
-- 
1.7.4.4




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/4] siteinfo.bbclass: add entries for new x86_64 ABI targets
  2011-07-27 23:09 [PATCH 0/4] Commits enabling x32 infrastructure in the master branch nitin.a.kamble
  2011-07-27 23:09 ` [PATCH 1/4] toolchain-scripts & other classes: add TARGET_LD_ARCH & TARGET_AS_ARCH vars nitin.a.kamble
@ 2011-07-27 23:09 ` nitin.a.kamble
  2011-07-27 23:12   ` Tom Rini
  2011-07-27 23:10 ` [PATCH 3/4] insane.bbclass: add entries for linux-gnu<ABI> nitin.a.kamble
  2011-07-27 23:10 ` [PATCH 4/4] x86 tune inc files: add x32 abi tune parameters nitin.a.kamble
  3 siblings, 1 reply; 8+ messages in thread
From: nitin.a.kamble @ 2011-07-27 23:09 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 meta/classes/siteinfo.bbclass |   14 +++++++++++++-
 1 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/meta/classes/siteinfo.bbclass b/meta/classes/siteinfo.bbclass
index 9dacd58..daa7946 100644
--- a/meta/classes/siteinfo.bbclass
+++ b/meta/classes/siteinfo.bbclass
@@ -42,12 +42,15 @@ def siteinfo_data(d):
         "sh4": "endian-little bit-32 sh-common",
         "sparc": "endian-big bit-32",
         "viac3": "endian-little bit-32 ix86-common",
-        "x86_64": "endian-little bit-64",
+        "x86_64": "endian-little", # bitinfo specified in targetinfo
     }
     osinfo = {
         "darwin": "common-darwin",
         "darwin9": "common-darwin",
         "linux": "common-linux common-glibc",
+        "linux-gnu32": "common-linux common-glibc",
+        "linux-gnux32": "common-linux common-glibc",
+        "linux-gnu64": "common-linux common-glibc",
         "linux-gnueabi": "common-linux common-glibc",
         "linux-gnuspe": "common-linux common-glibc",
         "linux-uclibc": "common-linux common-uclibc",
@@ -68,6 +71,15 @@ def siteinfo_data(d):
         "powerpc-linux-uclibcspe": "powerpc-linux powerpc32-linux powerpc-linux-uclibc",
         "powerpc64-linux-gnuspe": "powerpc-linux powerpc64-linux",
         "powerpc64-linux": "powerpc-linux",
+        "x86_64-cygwin": "bit-64",
+        "x86_64-darvin": "bit-64",
+        "x86_64-darvin9": "bit-64",
+        "x86_64-linux": "bit-64",
+        "x86_64-linux-uclibc": "bit-64",
+        "x86_64-linux-gnu32": "bit-32 ix86-common",
+        "x86_64-linux-gnux32": "bit-32 ix86-common",
+        "x86_64-linux-gnu64": "bit-64 x86_64-linux",
+        "x86_64-mingw32": "bit-64",
     }
 
     hostarch = d.getVar("HOST_ARCH", True)
-- 
1.7.4.4




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 3/4] insane.bbclass: add entries for linux-gnu<ABI>
  2011-07-27 23:09 [PATCH 0/4] Commits enabling x32 infrastructure in the master branch nitin.a.kamble
  2011-07-27 23:09 ` [PATCH 1/4] toolchain-scripts & other classes: add TARGET_LD_ARCH & TARGET_AS_ARCH vars nitin.a.kamble
  2011-07-27 23:09 ` [PATCH 2/4] siteinfo.bbclass: add entries for new x86_64 ABI targets nitin.a.kamble
@ 2011-07-27 23:10 ` nitin.a.kamble
  2011-07-27 23:10 ` [PATCH 4/4] x86 tune inc files: add x32 abi tune parameters nitin.a.kamble
  3 siblings, 0 replies; 8+ messages in thread
From: nitin.a.kamble @ 2011-07-27 23:10 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

for x86_64 multiple ABIs now have these new names for the TARGET_OS.
Add entries for:
 linux-gnu32, linux-gnux32, linux-gnu64

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 meta/classes/insane.bbclass |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 5fb0d98..15e7fc7 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -90,6 +90,15 @@ def package_qa_get_machine_dict():
                         "microblaze":   (47787,  0,    0,          False,         32),
                         "microblazeel": (47787,  0,    0,          True,          32),
                       },
+            "linux-gnu32" :       {
+                        "x86_64":     (62,     0,    0,          True,          32),
+                      },
+            "linux-gnux32" :       {
+                        "x86_64":     (62,     0,    0,          True,          32),
+                      },
+            "linux-gnu64" :       {
+                        "x86_64":     (62,     0,    0,          True,          64),
+                      },
        }
 
 
-- 
1.7.4.4




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 4/4] x86 tune inc files: add x32 abi tune parameters
  2011-07-27 23:09 [PATCH 0/4] Commits enabling x32 infrastructure in the master branch nitin.a.kamble
                   ` (2 preceding siblings ...)
  2011-07-27 23:10 ` [PATCH 3/4] insane.bbclass: add entries for linux-gnu<ABI> nitin.a.kamble
@ 2011-07-27 23:10 ` nitin.a.kamble
  3 siblings, 0 replies; 8+ messages in thread
From: nitin.a.kamble @ 2011-07-27 23:10 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 meta/conf/machine/include/ia32/arch-ia32.inc |   23 ++++++++++++++++++++---
 meta/conf/machine/include/tune-core2.inc     |    4 ++++
 meta/conf/machine/include/tune-x86_64.inc    |    2 +-
 3 files changed, 25 insertions(+), 4 deletions(-)

diff --git a/meta/conf/machine/include/ia32/arch-ia32.inc b/meta/conf/machine/include/ia32/arch-ia32.inc
index 2709440..fb527da 100644
--- a/meta/conf/machine/include/ia32/arch-ia32.inc
+++ b/meta/conf/machine/include/ia32/arch-ia32.inc
@@ -6,17 +6,29 @@ DEFAULTTUNE ?= "x86"
 TARGET_FPU ?= ""
 X86ARCH32 ?= "i586"
 X86ARCH64 ?= "x86_64"
+X86ARCHX32 ?= "x86_64"
 
 # ELF32 ABI
 TUNEVALID[m32] = "IA32 ELF32 standard ABI"
-TUNECONFLICTS[m32] = "m64"
+TUNECONFLICTS[m32] = "m64 mx32"
 TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "m32", "${X86ARCH32}", "" ,d)}"
+ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "m32", "32", "" ,d)}"
 TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "m32", "-m32", "", d)}"
 
+# x32 ABI
+TUNEVALID[mx32] = "IA32e (x86_64) ELF32 standard ABI"
+TUNECONFLICTS[mx32] = "m64 m32"
+TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "${X86ARCHX32}", "" ,d)}"
+ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}"
+TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-mx32", "", d)}"
+TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}"
+TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}"
+
 # ELF64 ABI
 TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI"
-TUNECONFLICT[m64] = "m32"
+TUNECONFLICT[m64] = "m32 mx32"
 TUNE_ARCH .= "${@bb.utils.contains("TUNE_FEATURES", "m64", "${X86ARCH64}", "" ,d)}"
+ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "m64", "64", "" ,d)}"
 TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "m64", "-m64", "", d)}"
 
 TUNE_PKGARCH ?= "${@bb.utils.contains("TUNE_FEATURES", "m32", "x86", "x86_64", d)}"
@@ -30,4 +42,9 @@ PACKAGE_EXTRA_ARCHS_tune-x86 = "x86"
 AVAILTUNES += "x86-64"
 TUNE_FEATURES_tune-x86-64 ?= "m64"
 BASE_LIB_tune-x86-64 ?= "lib64"
-PACKAGE_EXTRA_ARCHS_tune-x86-64 = "x86_64"
+PACKAGE_EXTRA_ARCHS_tune-x86-64 = "x86-64"
+
+AVAILTUNES += "x86-64-x32"
+TUNE_FEATURES_tune-x86-64-x32 ?= "mx32"
+BASE_LIB_tune-x86-64-x32 ?= "lib"
+PACKAGE_EXTRA_ARCHS_tune-x86-64-x32 = "x86-64-x32"
diff --git a/meta/conf/machine/include/tune-core2.inc b/meta/conf/machine/include/tune-core2.inc
index 25c2226..8a4de3e 100644
--- a/meta/conf/machine/include/tune-core2.inc
+++ b/meta/conf/machine/include/tune-core2.inc
@@ -18,3 +18,7 @@ TUNE_FEATURES_tune-core2-64 ?= "${TUNE_FEATURES_tune-x86-64} core2"
 BASE_LIB_tune-core2-64 ?= "lib64"
 PACKAGE_EXTRA_ARCHS_tune-core2-64 = "${PACKAGE_EXTRA_ARCHS_tune-x86-64} core2-64"
 
+AVAILTUNES += "core2-x32"
+TUNE_FEATURES_tune-core2-x32 ?= "${TUNE_FEATURES_tune-x86-64-x32} core2"
+BASE_LIB_tune-core2-x32 ?= "lib"
+PACKAGE_EXTRA_ARCHS_tune-core2-x32 = "${PACKAGE_EXTRA_ARCHS_tune-x86-64-x32} core2-x32"
diff --git a/meta/conf/machine/include/tune-x86_64.inc b/meta/conf/machine/include/tune-x86_64.inc
index 04b0f96..50f20ba 100644
--- a/meta/conf/machine/include/tune-x86_64.inc
+++ b/meta/conf/machine/include/tune-x86_64.inc
@@ -1,3 +1,3 @@
 require conf/machine/include/ia32/arch-ia32.inc
 
-DEFAULTTUNE = "x86-64"
+DEFAULTTUNE ?= "x86-64"
-- 
1.7.4.4




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/4] siteinfo.bbclass: add entries for new x86_64 ABI targets
  2011-07-27 23:09 ` [PATCH 2/4] siteinfo.bbclass: add entries for new x86_64 ABI targets nitin.a.kamble
@ 2011-07-27 23:12   ` Tom Rini
  2011-07-27 23:27     ` Kamble, Nitin A
  0 siblings, 1 reply; 8+ messages in thread
From: Tom Rini @ 2011-07-27 23:12 UTC (permalink / raw)
  To: openembedded-core

On 07/27/2011 04:09 PM, nitin.a.kamble@intel.com wrote:
> From: Nitin A Kamble <nitin.a.kamble@intel.com>
> 
> Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
> ---
>  meta/classes/siteinfo.bbclass |   14 +++++++++++++-
>  1 files changed, 13 insertions(+), 1 deletions(-)
> 
> diff --git a/meta/classes/siteinfo.bbclass b/meta/classes/siteinfo.bbclass
> index 9dacd58..daa7946 100644
> --- a/meta/classes/siteinfo.bbclass
> +++ b/meta/classes/siteinfo.bbclass
> @@ -42,12 +42,15 @@ def siteinfo_data(d):
>          "sh4": "endian-little bit-32 sh-common",
>          "sparc": "endian-big bit-32",
>          "viac3": "endian-little bit-32 ix86-common",
> -        "x86_64": "endian-little bit-64",
> +        "x86_64": "endian-little", # bitinfo specified in targetinfo
>      }
>      osinfo = {
>          "darwin": "common-darwin",
>          "darwin9": "common-darwin",
>          "linux": "common-linux common-glibc",
> +        "linux-gnu32": "common-linux common-glibc",
> +        "linux-gnux32": "common-linux common-glibc",
> +        "linux-gnu64": "common-linux common-glibc",
>          "linux-gnueabi": "common-linux common-glibc",
>          "linux-gnuspe": "common-linux common-glibc",
>          "linux-uclibc": "common-linux common-uclibc",
> @@ -68,6 +71,15 @@ def siteinfo_data(d):
>          "powerpc-linux-uclibcspe": "powerpc-linux powerpc32-linux powerpc-linux-uclibc",
>          "powerpc64-linux-gnuspe": "powerpc-linux powerpc64-linux",
>          "powerpc64-linux": "powerpc-linux",
> +        "x86_64-cygwin": "bit-64",
> +        "x86_64-darvin": "bit-64",
> +        "x86_64-darvin9": "bit-64",

dar_v_in? :)

Slightly more seriously, lets drop out ones we can't / aren't using, wrt
hosts, until we're going to do them for real.

-- 
Tom Rini
Mentor Graphics Corporation



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/4] siteinfo.bbclass: add entries for new x86_64 ABI targets
  2011-07-27 23:12   ` Tom Rini
@ 2011-07-27 23:27     ` Kamble, Nitin A
  2011-07-27 23:41       ` Tom Rini
  0 siblings, 1 reply; 8+ messages in thread
From: Kamble, Nitin A @ 2011-07-27 23:27 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer



> -----Original Message-----
> From: openembedded-core-bounces@lists.openembedded.org
> [mailto:openembedded-core-bounces@lists.openembedded.org] On Behalf Of
> Tom Rini
> Sent: Wednesday, July 27, 2011 4:13 PM
> To: openembedded-core@lists.openembedded.org
> Subject: Re: [OE-core] [PATCH 2/4] siteinfo.bbclass: add entries for
> new x86_64 ABI targets
> 
> On 07/27/2011 04:09 PM, nitin.a.kamble@intel.com wrote:
> > From: Nitin A Kamble <nitin.a.kamble@intel.com>
> >
> > Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
> > ---
> >  meta/classes/siteinfo.bbclass |   14 +++++++++++++-
> >  1 files changed, 13 insertions(+), 1 deletions(-)
> >
> > diff --git a/meta/classes/siteinfo.bbclass
> b/meta/classes/siteinfo.bbclass
> > index 9dacd58..daa7946 100644
> > --- a/meta/classes/siteinfo.bbclass
> > +++ b/meta/classes/siteinfo.bbclass
> > @@ -42,12 +42,15 @@ def siteinfo_data(d):
> >          "sh4": "endian-little bit-32 sh-common",
> >          "sparc": "endian-big bit-32",
> >          "viac3": "endian-little bit-32 ix86-common",
> > -        "x86_64": "endian-little bit-64",
> > +        "x86_64": "endian-little", # bitinfo specified in targetinfo
> >      }
> >      osinfo = {
> >          "darwin": "common-darwin",
> >          "darwin9": "common-darwin",
> >          "linux": "common-linux common-glibc",
> > +        "linux-gnu32": "common-linux common-glibc",
> > +        "linux-gnux32": "common-linux common-glibc",
> > +        "linux-gnu64": "common-linux common-glibc",
> >          "linux-gnueabi": "common-linux common-glibc",
> >          "linux-gnuspe": "common-linux common-glibc",
> >          "linux-uclibc": "common-linux common-uclibc",
> > @@ -68,6 +71,15 @@ def siteinfo_data(d):
> >          "powerpc-linux-uclibcspe": "powerpc-linux powerpc32-linux
> powerpc-linux-uclibc",
> >          "powerpc64-linux-gnuspe": "powerpc-linux powerpc64-linux",
> >          "powerpc64-linux": "powerpc-linux",
> > +        "x86_64-cygwin": "bit-64",
> > +        "x86_64-darvin": "bit-64",
> > +        "x86_64-darvin9": "bit-64",
> 
> dar_v_in? :)
> 
> Slightly more seriously, lets drop out ones we can't / aren't using,
> wrt
> hosts, until we're going to do them for real.

Hi Tom,
  I don't know if they(cygwin, darvin) work or not, I just kept them in the same state. If they are not used/working, then it is good to clean them out.

Nitin

> 
> --
> Tom Rini
> Mentor Graphics Corporation
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 2/4] siteinfo.bbclass: add entries for new x86_64 ABI targets
  2011-07-27 23:27     ` Kamble, Nitin A
@ 2011-07-27 23:41       ` Tom Rini
  0 siblings, 0 replies; 8+ messages in thread
From: Tom Rini @ 2011-07-27 23:41 UTC (permalink / raw)
  To: openembedded-core

On 07/27/2011 04:27 PM, Kamble, Nitin A wrote:
> 
> 
>> -----Original Message-----
>> From: openembedded-core-bounces@lists.openembedded.org
>> [mailto:openembedded-core-bounces@lists.openembedded.org] On Behalf Of
>> Tom Rini
>> Sent: Wednesday, July 27, 2011 4:13 PM
>> To: openembedded-core@lists.openembedded.org
>> Subject: Re: [OE-core] [PATCH 2/4] siteinfo.bbclass: add entries for
>> new x86_64 ABI targets
>>
>> On 07/27/2011 04:09 PM, nitin.a.kamble@intel.com wrote:
>>> From: Nitin A Kamble <nitin.a.kamble@intel.com>
>>>
>>> Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
>>> ---
>>>  meta/classes/siteinfo.bbclass |   14 +++++++++++++-
>>>  1 files changed, 13 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/meta/classes/siteinfo.bbclass
>> b/meta/classes/siteinfo.bbclass
>>> index 9dacd58..daa7946 100644
>>> --- a/meta/classes/siteinfo.bbclass
>>> +++ b/meta/classes/siteinfo.bbclass
>>> @@ -42,12 +42,15 @@ def siteinfo_data(d):
>>>          "sh4": "endian-little bit-32 sh-common",
>>>          "sparc": "endian-big bit-32",
>>>          "viac3": "endian-little bit-32 ix86-common",
>>> -        "x86_64": "endian-little bit-64",
>>> +        "x86_64": "endian-little", # bitinfo specified in targetinfo
>>>      }
>>>      osinfo = {
>>>          "darwin": "common-darwin",
>>>          "darwin9": "common-darwin",
>>>          "linux": "common-linux common-glibc",
>>> +        "linux-gnu32": "common-linux common-glibc",
>>> +        "linux-gnux32": "common-linux common-glibc",
>>> +        "linux-gnu64": "common-linux common-glibc",
>>>          "linux-gnueabi": "common-linux common-glibc",
>>>          "linux-gnuspe": "common-linux common-glibc",
>>>          "linux-uclibc": "common-linux common-uclibc",
>>> @@ -68,6 +71,15 @@ def siteinfo_data(d):
>>>          "powerpc-linux-uclibcspe": "powerpc-linux powerpc32-linux
>> powerpc-linux-uclibc",
>>>          "powerpc64-linux-gnuspe": "powerpc-linux powerpc64-linux",
>>>          "powerpc64-linux": "powerpc-linux",
>>> +        "x86_64-cygwin": "bit-64",
>>> +        "x86_64-darvin": "bit-64",
>>> +        "x86_64-darvin9": "bit-64",
>>
>> dar_v_in? :)
>>
>> Slightly more seriously, lets drop out ones we can't / aren't using,
>> wrt
>> hosts, until we're going to do them for real.
> 
> Hi Tom,
>   I don't know if they(cygwin, darvin) work or not, I just kept them in the same state. If they are not used/working, then it is good to clean them out.

Well, OSX is dar_w_in :)

-- 
Tom Rini
Mentor Graphics Corporation



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2011-07-27 23:46 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-07-27 23:09 [PATCH 0/4] Commits enabling x32 infrastructure in the master branch nitin.a.kamble
2011-07-27 23:09 ` [PATCH 1/4] toolchain-scripts & other classes: add TARGET_LD_ARCH & TARGET_AS_ARCH vars nitin.a.kamble
2011-07-27 23:09 ` [PATCH 2/4] siteinfo.bbclass: add entries for new x86_64 ABI targets nitin.a.kamble
2011-07-27 23:12   ` Tom Rini
2011-07-27 23:27     ` Kamble, Nitin A
2011-07-27 23:41       ` Tom Rini
2011-07-27 23:10 ` [PATCH 3/4] insane.bbclass: add entries for linux-gnu<ABI> nitin.a.kamble
2011-07-27 23:10 ` [PATCH 4/4] x86 tune inc files: add x32 abi tune parameters nitin.a.kamble

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox