All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again)
@ 2010-07-27  6:48 Khem Raj
  2010-07-27  6:48 ` [PATCH 1/8] bitbake.conf: Define HOST_SYS and TARGET_SYS based on target sub-arch Khem Raj
                   ` (9 more replies)
  0 siblings, 10 replies; 17+ messages in thread
From: Khem Raj @ 2010-07-27  6:48 UTC (permalink / raw)
  To: openembedded-devel

Hi

Following series of patches are for making multi-machine toolchains co-exist with
new cross staging for toolchain.

It changes the toolchain triplet from ${TARGET_ARCH}-${VENDOR}-${OS} to 
${TARGET_ARCH}-${CPU_SUB_TARGET}_${VENDOR}-OS

which means that a toolchain for armv7 is called arm-v7a_oe-linux-gnueabi-*
and for armv5te its called arm-v5te_oe-linux-gnueabi-*

They can coexist in same native sysroot. The symlinks would mean that
gcc will not accidently mix the assemblers or linkers.

MULTIMACH-* is not needed anymore as the TARGET_SYS is distinct enough
to serve same purpose.

I have booted a minimal-image on qemuarm qemuppc and qemumips successfully. The build for 
beagleboard native-sdk-image completed too.

Thanks
-Khem




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

* [PATCH 1/8] bitbake.conf: Define HOST_SYS and TARGET_SYS based on target sub-arch
  2010-07-27  6:48 [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Khem Raj
@ 2010-07-27  6:48 ` Khem Raj
  2010-07-27  6:48 ` [PATCH 2/8] binutils-cross.inc, binutils.inc: Overhaul for new cross dir structure Khem Raj
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 17+ messages in thread
From: Khem Raj @ 2010-07-27  6:48 UTC (permalink / raw)
  To: openembedded-devel

* define DISTRO_VENDOR instead of TARGET_VENDOR

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 classes/cross.bbclass                  |    2 +-
 conf/bitbake.conf                      |    5 +++--
 conf/distro/include/angstrom.inc       |    2 +-
 conf/distro/include/kaeilos-2010.inc   |    2 +-
 conf/distro/include/kaeilos.inc        |    2 +-
 conf/distro/include/oplinux.inc        |    2 +-
 conf/distro/include/sane-toolchain.inc |    2 +-
 conf/distro/iphone-compat.conf         |    2 +-
 conf/distro/mamona.conf                |    2 +-
 conf/distro/nylon.conf                 |    2 +-
 10 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/classes/cross.bbclass b/classes/cross.bbclass
index 75b2abe..5776a37 100644
--- a/classes/cross.bbclass
+++ b/classes/cross.bbclass
@@ -15,7 +15,6 @@ OLD_PACKAGE_ARCH := "${PACKAGE_ARCH}"
 PACKAGE_ARCH = "${OLD_PACKAGE_ARCH}"
 # Also save BASE_PACKAGE_ARCH since HOST_ARCH can influence it
 OLD_BASE_PACKAGE_ARCH := "${BASE_PACKAGE_ARCH}"
-BASE_PACKAGE_ARCH = "${OLD_BASE_PACKAGE_ARCH}"
 
 HOST_ARCH = "${BUILD_ARCH}"
 HOST_VENDOR = "${BUILD_VENDOR}"
@@ -23,6 +22,7 @@ HOST_OS = "${BUILD_OS}"
 HOST_PREFIX = "${BUILD_PREFIX}"
 HOST_CC_ARCH = "${BUILD_CC_ARCH}"
 HOST_EXEEXT = "${BUILD_EXEEXT}"
+BASE_PACKAGE_ARCH = "${OLD_BASE_PACKAGE_ARCH}"
 BASEPKG_HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
 
 CPPFLAGS = "${BUILD_CPPFLAGS}"
diff --git a/conf/bitbake.conf b/conf/bitbake.conf
index 8cb8187..2a1f241 100644
--- a/conf/bitbake.conf
+++ b/conf/bitbake.conf
@@ -101,7 +101,7 @@ BUILD_EXEEXT = ""
 HOST_ARCH = "${TARGET_ARCH}"
 HOST_OS = "${TARGET_OS}"
 HOST_VENDOR = "${TARGET_VENDOR}"
-HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
+HOST_SYS = "${BASEPKG_HOST_SYS}"
 HOST_PREFIX = "${TARGET_PREFIX}"
 HOST_CC_ARCH = "${TARGET_CC_ARCH}"
 HOST_EXEEXT = ""
@@ -109,7 +109,7 @@ HOST_EXEEXT = ""
 TARGET_ARCH ?= "INVALID"
 TARGET_OS = "INVALID"
 TARGET_VENDOR = "${BUILD_VENDOR}"
-TARGET_SYS = "${TARGET_ARCH}${TARGET_VENDOR}${@['-' + bb.data.getVar('TARGET_OS', d, 1), ''][bb.data.getVar('TARGET_OS', d, 1) == ('' or 'custom')]}"
+TARGET_SYS = "${BASE_PACKAGE_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 = ""
 TARGET_EXEEXT = ""
@@ -135,6 +135,7 @@ PACKAGE_ARCHS = "all any noarch ${TARGET_ARCH} ${PACKAGE_EXTRA_ARCHS} ${MACHINE}
 MULTIMACH_ARCH = "${PACKAGE_ARCH}"
 MULTIMACH_TARGET_SYS = "${MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
 MULTIMACH_HOST_SYS = "${MULTIMACH_ARCH}${HOST_VENDOR}-${HOST_OS}"
+
 BASEPKG_HOST_SYS = "${BASE_PACKAGE_ARCH}${HOST_VENDOR}-${HOST_OS}"
 BASEPKG_TARGET_SYS = "${BASE_PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
 
diff --git a/conf/distro/include/angstrom.inc b/conf/distro/include/angstrom.inc
index 3ba94fa..fbf1cfc 100644
--- a/conf/distro/include/angstrom.inc
+++ b/conf/distro/include/angstrom.inc
@@ -9,7 +9,7 @@ DISTRO_NAME = "Angstrom"
 
 BUILDNAME = "Angstrom ${DISTRO_VERSION}"
 
-TARGET_VENDOR = "-angstrom"
+DISTRO_VENDOR = "angstrom"
 
 SOC_FAMILY ?= "Unknown"
 
diff --git a/conf/distro/include/kaeilos-2010.inc b/conf/distro/include/kaeilos-2010.inc
index 2fb30ce..85513a3 100644
--- a/conf/distro/include/kaeilos-2010.inc
+++ b/conf/distro/include/kaeilos-2010.inc
@@ -12,7 +12,7 @@ USERDISTRO := "${DISTRO}"
 DISTRO = "kaeilos"
 DISTRO_NAME = "KaeilOS"
 BUILDNAME = "KaeilOS ${DISTRO_VERSION}"
-TARGET_VENDOR = "-kaeilos"
+DISTRO_VENDOR = "kaeilos"
 
 # Add FEED_ARCH to overrides
 OVERRIDES .= ":${FEED_ARCH}"
diff --git a/conf/distro/include/kaeilos.inc b/conf/distro/include/kaeilos.inc
index edbad69..18cdcd6 100644
--- a/conf/distro/include/kaeilos.inc
+++ b/conf/distro/include/kaeilos.inc
@@ -12,7 +12,7 @@ DISTRO_NAME = "KaeilOS"
 
 BUILDNAME = "KaeilOS ${DISTRO_VERSION}"
 
-TARGET_VENDOR = "-kaeilos"
+DISTRO_VENDOR = "kaeilos"
 
 # Add FEED_ARCH to overrides
 OVERRIDES .= ":${FEED_ARCH}"
diff --git a/conf/distro/include/oplinux.inc b/conf/distro/include/oplinux.inc
index 36eca58..1b2a424 100644
--- a/conf/distro/include/oplinux.inc
+++ b/conf/distro/include/oplinux.inc
@@ -43,7 +43,7 @@ DISTRO_FEATURES = "nfs smbfs ext2 usbhost pci"
 
 
 #We need to set this to avoid problems when building for if host=target
-TARGET_VENDOR = "-oplinux"
+DISTRO_VENDOR = "oplinux"
 
 #URI for base feeds
 OPLINUX_URI = "http://www.digital-opsis.com/oplinux"
diff --git a/conf/distro/include/sane-toolchain.inc b/conf/distro/include/sane-toolchain.inc
index de73922..054fe23 100644
--- a/conf/distro/include/sane-toolchain.inc
+++ b/conf/distro/include/sane-toolchain.inc
@@ -60,7 +60,7 @@ PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers"
 #############################################################################
 
 # Branding
-TARGET_VENDOR = "-oe"
+DISTRO_VENDOR ?= "_oe"
 
 # Add FEED_ARCH to the overrides list so that we can override the
 # ARM_INSTRUCTION_SET like below
diff --git a/conf/distro/iphone-compat.conf b/conf/distro/iphone-compat.conf
index be2017b..a2e807f 100644
--- a/conf/distro/iphone-compat.conf
+++ b/conf/distro/iphone-compat.conf
@@ -3,7 +3,7 @@ require conf/distro/angstrom-2008.1.conf
 DISTRO_NAME = "iphone-compat"
 
 TARGET_OS = "darwin9"
-TARGET_VENDOR = "-apple"
+DISTRO_VENDOR = "apple"
 
 export TARGET_LDFLAGS = "-L${STAGING_DIR_TARGET}${libdir} -Wl,-L${STAGING_DIR_TARGET}${libdir}"
 
diff --git a/conf/distro/mamona.conf b/conf/distro/mamona.conf
index 31d6c36..f209759 100644
--- a/conf/distro/mamona.conf
+++ b/conf/distro/mamona.conf
@@ -9,7 +9,7 @@ DISTRO_TYPE = "debug"
 
 MAINTAINER = "Mamona Team <mamona-devel@garage.maemo.org>"
 
-TARGET_VENDOR = "-mamona"
+DISTRO_VENDOR = "mamona"
 
 require conf/distro/include/sane-srcdates.inc
 require conf/distro/include/sane-srcrevs.inc
diff --git a/conf/distro/nylon.conf b/conf/distro/nylon.conf
index ae8d064..f38d689 100644
--- a/conf/distro/nylon.conf
+++ b/conf/distro/nylon.conf
@@ -17,7 +17,7 @@ BUILDNAME := "${NYLON_VERSION}"
 DISTRO_TYPE = "debug"
 TARGET_FPU = "soft"
 SRCDATE := "20050527"
-TARGET_VENDOR = "-nylon"
+DISTRO_VENDOR = "nylon"
 
 # Ensure some form of release config, so error out if someone thinks he knows better
 DISTRO_CHECK := "${@bb.data.getVar("DISTRO_VERSION",d,1) or bb.fatal('Remove this line or set a dummy DISTRO_VERSION")
-- 
1.7.1




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

* [PATCH 2/8] binutils-cross.inc, binutils.inc: Overhaul for new cross dir structure.
  2010-07-27  6:48 [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Khem Raj
  2010-07-27  6:48 ` [PATCH 1/8] bitbake.conf: Define HOST_SYS and TARGET_SYS based on target sub-arch Khem Raj
@ 2010-07-27  6:48 ` Khem Raj
  2010-07-27  6:48 ` [PATCH 3/8] gcc-cross: Use EXTRA_OECONF_PATHS in initial and intermediate recipes Khem Raj
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 17+ messages in thread
From: Khem Raj @ 2010-07-27  6:48 UTC (permalink / raw)
  To: openembedded-devel

* Install the symlinks instead of copied of tools.
* Dont build shared libopcodes
* We dont need to install libbfd a separate recipe should do that if
  needed.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 recipes/binutils/binutils-cross.inc |   15 +++++++++++----
 recipes/binutils/binutils.inc       |    3 ---
 2 files changed, 11 insertions(+), 7 deletions(-)

diff --git a/recipes/binutils/binutils-cross.inc b/recipes/binutils/binutils-cross.inc
index f3ba5c3..073cdad 100644
--- a/recipes/binutils/binutils-cross.inc
+++ b/recipes/binutils/binutils-cross.inc
@@ -5,15 +5,15 @@ PROVIDES = "virtual/${TARGET_PREFIX}binutils"
 PACKAGES = ""
 EXTRA_OECONF = "--with-sysroot=${STAGING_DIR_TARGET} \
 		--program-prefix=${TARGET_PREFIX} \
-		--enable-install-libbfd \
-		--enable-shared \
+		--disable-install-libbfd \
+		--disable-shared \
 		--disable-werror \
 	       "
 
 do_install () {
 	oe_runmake 'DESTDIR=${D}' install
-	install -m 0644 libiberty/pic/libiberty.a \
-	${D}${libdir}/libiberty_pic.a
+	rm -rf ${D}${STAGING_DIR_NATIVE}${libdir_native}/libiberty.a
+	rm -rf ${D}${STAGING_DIR_NATIVE}${prefix_native}/${TARGET_SYS}
 
 	# We don't really need these, so we'll remove them...
 	rm -rf ${D}${STAGING_DIR_NATIVE}${prefix_native}/lib/ldscripts
@@ -26,4 +26,11 @@ do_install () {
 	rmdir ${D}${STAGING_DIR_NATIVE}${prefix_native}/${libdir} || :
 	rmdir ${D}${STAGING_DIR_NATIVE}${prefix_native}/${libdir}64 || :
 	rmdir ${D}${STAGING_DIR_NATIVE}${prefix_native}/${prefix} || :
+	# Insert symlinks into libexec so when tools without a prefix are searched for, the correct ones are
+	# found.
+	dest=${D}${STAGING_DIR_NATIVE}${prefix_native}/${TARGET_SYS}/bin/
+	install -d $dest
+	for t in ar as ld nm objcopy objdump ranlib strip; do
+		ln -sf ../../bin/${TARGET_PREFIX}$t $dest$t
+	done
 }
diff --git a/recipes/binutils/binutils.inc b/recipes/binutils/binutils.inc
index 75ee66a..c09b50a 100644
--- a/recipes/binutils/binutils.inc
+++ b/recipes/binutils/binutils.inc
@@ -43,9 +43,6 @@ B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
 EXTRA_OECONF = "--program-prefix=${TARGET_PREFIX} \
 		--enable-shared"
 
-# This is necessary due to a bug in the binutils Makefiles
-EXTRA_OEMAKE = "configure-build-libiberty all"
-
 export AR = "${HOST_PREFIX}ar"
 export AS = "${HOST_PREFIX}as"
 export LD = "${HOST_PREFIX}ld"
-- 
1.7.1




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

* [PATCH 3/8] gcc-cross: Use EXTRA_OECONF_PATHS in initial and intermediate recipes.
  2010-07-27  6:48 [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Khem Raj
  2010-07-27  6:48 ` [PATCH 1/8] bitbake.conf: Define HOST_SYS and TARGET_SYS based on target sub-arch Khem Raj
  2010-07-27  6:48 ` [PATCH 2/8] binutils-cross.inc, binutils.inc: Overhaul for new cross dir structure Khem Raj
@ 2010-07-27  6:48 ` Khem Raj
  2010-07-27  6:48 ` [PATCH 4/8] sdk.bbclass: override BASEPKG_HOST_SYS as it is used to make TARGET_SYS Khem Raj
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 17+ messages in thread
From: Khem Raj @ 2010-07-27  6:48 UTC (permalink / raw)
  To: openembedded-devel

* Add new configure time option --with-build-time-tools

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 recipes/gcc/gcc-configure-cross.inc    |    5 +++--
 recipes/gcc/gcc-cross-initial.inc      |    3 +--
 recipes/gcc/gcc-cross-intermediate.inc |    3 +--
 3 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/recipes/gcc/gcc-configure-cross.inc b/recipes/gcc/gcc-configure-cross.inc
index 8b97b09..869ac5e 100644
--- a/recipes/gcc/gcc-configure-cross.inc
+++ b/recipes/gcc/gcc-configure-cross.inc
@@ -3,9 +3,10 @@ require gcc-configure-common.inc
 USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibc", "no", "", d )}'
 
 EXTRA_OECONF_PATHS = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
-		      --with-gxx-include-dir=${STAGING_DIR_TARGET}/${target_includedir}/c++ \
+		      --with-gxx-include-dir=${STAGING_DIR_TARGET}${target_includedir}/c++ \
                       --with-sysroot=${STAGING_DIR_TARGET} \
-                      --with-build-sysroot=${STAGING_DIR_TARGET}"
+                      --with-build-sysroot=${STAGING_DIR_TARGET} \
+		      --with-build-time-tools=${bindir}"
 
 do_configure_prepend () {
 	export CC="${BUILD_CC}"
diff --git a/recipes/gcc/gcc-cross-initial.inc b/recipes/gcc/gcc-cross-initial.inc
index 25d7ba5..b153322 100644
--- a/recipes/gcc/gcc-cross-initial.inc
+++ b/recipes/gcc/gcc-cross-initial.inc
@@ -13,8 +13,7 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
 		--disable-__cxa_atexit \
 		--enable-languages=c \
 		--program-prefix=${TARGET_PREFIX} \
-		--with-sysroot=${STAGING_DIR_TARGET} \
-		--with-build-sysroot=${STAGING_DIR_TARGET} \
+		${EXTRA_OECONF_PATHS} \
 		${EXTRA_OECONF_INITIAL} \
 		${OPTSPACE} \
 		${@get_gcc_fpu_setting(bb, d)} \
diff --git a/recipes/gcc/gcc-cross-intermediate.inc b/recipes/gcc/gcc-cross-intermediate.inc
index cbc8638..6dbdb94 100644
--- a/recipes/gcc/gcc-cross-intermediate.inc
+++ b/recipes/gcc/gcc-cross-intermediate.inc
@@ -11,8 +11,7 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${target_prefix} \
 		--disable-threads \
 		--enable-languages=c \
 		--program-prefix=${TARGET_PREFIX} \
-		--with-sysroot=${STAGING_DIR_TARGET} \
-		--with-build-sysroot=${STAGING_DIR_TARGET} \
+		${EXTRA_OECONF_PATHS} \
 		${OPTSPACE} \
 		${EXTRA_OECONF_INTERMEDIATE} \
 		${@get_gcc_fpu_setting(bb, d)} \
-- 
1.7.1




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

* [PATCH 4/8] sdk.bbclass: override BASEPKG_HOST_SYS as it is used to make TARGET_SYS
  2010-07-27  6:48 [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Khem Raj
                   ` (2 preceding siblings ...)
  2010-07-27  6:48 ` [PATCH 3/8] gcc-cross: Use EXTRA_OECONF_PATHS in initial and intermediate recipes Khem Raj
@ 2010-07-27  6:48 ` Khem Raj
  2010-07-27  6:48 ` [PATCH 5/8] machines: Add new variable TARGET_SUB_ARCH Khem Raj
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 17+ messages in thread
From: Khem Raj @ 2010-07-27  6:48 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 classes/sdk.bbclass |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/classes/sdk.bbclass b/classes/sdk.bbclass
index 198d147..049fda1 100644
--- a/classes/sdk.bbclass
+++ b/classes/sdk.bbclass
@@ -15,6 +15,7 @@ PACKAGE_ARCH = "${BUILD_ARCH}-${OLD_PACKAGE_ARCH}-sdk"
 # Also save BASE_PACKAGE_ARCH since HOST_ARCH can influence it
 OLD_BASE_PACKAGE_ARCH := "${BASE_PACKAGE_ARCH}"
 BASE_PACKAGE_ARCH = "${OLD_BASE_PACKAGE_ARCH}"
+BASEPKG_HOST_SYS = "${BUILD_ARCH}-${HOST_OS}"
 
 STAGING_DIR_HOST = "${STAGING_DIR}/${HOST_SYS}-sdk"
 STAGING_DIR_TARGET = "${STAGING_DIR}/${OLD_MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
-- 
1.7.1




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

* [PATCH 5/8] machines: Add new variable TARGET_SUB_ARCH
  2010-07-27  6:48 [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Khem Raj
                   ` (3 preceding siblings ...)
  2010-07-27  6:48 ` [PATCH 4/8] sdk.bbclass: override BASEPKG_HOST_SYS as it is used to make TARGET_SYS Khem Raj
@ 2010-07-27  6:48 ` Khem Raj
  2010-07-27  6:48 ` [PATCH 6/8] classes, bitbake.conf: Add MACHINE_SYS and CURRENT_TARGET_SYS Khem Raj
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 17+ messages in thread
From: Khem Raj @ 2010-07-27  6:48 UTC (permalink / raw)
  To: openembedded-devel

* This variable indicates the particular arch that toolchains
  TARGET_SYS and HOST_SYS should be built for.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 conf/bitbake.conf                           |    8 +++++---
 conf/machine/h6300.conf                     |    1 -
 conf/machine/include/tune-arm1136-novfp.inc |    1 +
 conf/machine/include/tune-arm1136jf-s.inc   |    1 +
 conf/machine/include/tune-arm1176jzf-s.inc  |    1 +
 conf/machine/include/tune-arm920t.inc       |    1 +
 conf/machine/include/tune-arm926ejs.inc     |    1 +
 conf/machine/include/tune-arm9tdmi.inc      |    1 +
 conf/machine/include/tune-armv7.inc         |    1 +
 conf/machine/include/tune-at32ap7000.inc    |    1 +
 conf/machine/include/tune-athlonmp.inc      |    1 +
 conf/machine/include/tune-atom.inc          |    3 ++-
 conf/machine/include/tune-c3.inc            |    1 +
 conf/machine/include/tune-cortexa8.inc      |    1 +
 conf/machine/include/tune-cortexa9.inc      |    1 +
 conf/machine/include/tune-cortexm1.inc      |    1 +
 conf/machine/include/tune-cortexm3.inc      |    1 +
 conf/machine/include/tune-cortexr4.inc      |    1 +
 conf/machine/include/tune-ep9312.inc        |    1 +
 conf/machine/include/tune-geode.inc         |    1 +
 conf/machine/include/tune-i486sx.inc        |    1 +
 conf/machine/include/tune-iwmmxt.inc        |    2 +-
 conf/machine/include/tune-pentium.inc       |    1 +
 conf/machine/include/tune-pentium4c.inc     |    1 +
 conf/machine/include/tune-pentiummmx.inc    |    1 +
 conf/machine/include/tune-pentiumpro.inc    |    1 +
 conf/machine/include/tune-ppc405.inc        |    1 +
 conf/machine/include/tune-ppc440.inc        |    1 +
 conf/machine/include/tune-ppc440e.inc       |    1 +
 conf/machine/include/tune-ppc603e.inc       |    1 +
 conf/machine/include/tune-ppce300c2.inc     |    1 +
 conf/machine/include/tune-ppce300c3.inc     |    1 +
 conf/machine/include/tune-ppce500.inc       |    1 +
 conf/machine/include/tune-ppce500v2.inc     |    1 +
 conf/machine/include/tune-ppce600.inc       |    1 +
 conf/machine/include/tune-sh3.inc           |    1 +
 conf/machine/include/tune-sh4.inc           |    1 +
 conf/machine/include/tune-strongarm.inc     |    1 +
 conf/machine/include/tune-supersparc.inc    |    1 +
 conf/machine/include/tune-xscale.inc        |    1 +
 40 files changed, 44 insertions(+), 6 deletions(-)

diff --git a/conf/bitbake.conf b/conf/bitbake.conf
index 2a1f241..66eebf3 100644
--- a/conf/bitbake.conf
+++ b/conf/bitbake.conf
@@ -98,10 +98,10 @@ BUILD_PREFIX = ""
 BUILD_CC_ARCH = ""
 BUILD_EXEEXT = ""
 
-HOST_ARCH = "${TARGET_ARCH}"
+HOST_ARCH = "${TARGET_SUB_ARCH}"
 HOST_OS = "${TARGET_OS}"
 HOST_VENDOR = "${TARGET_VENDOR}"
-HOST_SYS = "${BASEPKG_HOST_SYS}"
+HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
 HOST_PREFIX = "${TARGET_PREFIX}"
 HOST_CC_ARCH = "${TARGET_CC_ARCH}"
 HOST_EXEEXT = ""
@@ -109,7 +109,7 @@ HOST_EXEEXT = ""
 TARGET_ARCH ?= "INVALID"
 TARGET_OS = "INVALID"
 TARGET_VENDOR = "${BUILD_VENDOR}"
-TARGET_SYS = "${BASE_PACKAGE_ARCH}${TARGET_VENDOR}${@['-' + bb.data.getVar('TARGET_OS', d, 1), ''][bb.data.getVar('TARGET_OS', d, 1) == ('' or 'custom')]}"
+TARGET_SYS = "${TARGET_SUB_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 = ""
 TARGET_EXEEXT = ""
@@ -139,6 +139,8 @@ MULTIMACH_HOST_SYS = "${MULTIMACH_ARCH}${HOST_VENDOR}-${HOST_OS}"
 BASEPKG_HOST_SYS = "${BASE_PACKAGE_ARCH}${HOST_VENDOR}-${HOST_OS}"
 BASEPKG_TARGET_SYS = "${BASE_PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
 
+#TARGET_SUB_ARCH = "${BASE_PACKAGE_ARCH}"
+
 # select proper CPU to get binary locales generated
 QEMU_OPTIONS = ""
 QEMU_OPTIONS_iwmmxt  = "-cpu pxa270-c5"
diff --git a/conf/machine/h6300.conf b/conf/machine/h6300.conf
index 08f61b8..97201e8 100644
--- a/conf/machine/h6300.conf
+++ b/conf/machine/h6300.conf
@@ -7,7 +7,6 @@
 #
 TARGET_ARCH = "arm"
 BASE_PACKAGE_ARCH = "arm"
-
 #Use OMAP 1510 cpu specifig arm9tdmi options for gcc
 require conf/machine/include/tune-arm9tdmi.inc
 
diff --git a/conf/machine/include/tune-arm1136-novfp.inc b/conf/machine/include/tune-arm1136-novfp.inc
index 58134b7..cb4f77d 100644
--- a/conf/machine/include/tune-arm1136-novfp.inc
+++ b/conf/machine/include/tune-arm1136-novfp.inc
@@ -5,3 +5,4 @@ TARGET_CC_ARCH = "-march=armv6j -mtune=arm1136jf-s"
 FEED_ARCH = "armv6-novfp"
 BASE_PACKAGE_ARCH = "armv6-novfp"
 PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te armv6-novfp"
+TARGET_SUB_ARCH = "v6_novfp"
diff --git a/conf/machine/include/tune-arm1136jf-s.inc b/conf/machine/include/tune-arm1136jf-s.inc
index 2944cc7..4d42b51 100644
--- a/conf/machine/include/tune-arm1136jf-s.inc
+++ b/conf/machine/include/tune-arm1136jf-s.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-march=armv6j -mtune=arm1136jf-s -mfpu=vfp -mfloat-abi=softfp"
 FEED_ARCH = "armv6"
 BASE_PACKAGE_ARCH = "armv6"
 PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te armv6"
+TARGET_SUB_ARCH = "v6"
diff --git a/conf/machine/include/tune-arm1176jzf-s.inc b/conf/machine/include/tune-arm1176jzf-s.inc
index ee2884b..284c725 100644
--- a/conf/machine/include/tune-arm1176jzf-s.inc
+++ b/conf/machine/include/tune-arm1176jzf-s.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-march=armv6j -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=softfp
 FEED_ARCH = "armv6"
 BASE_PACKAGE_ARCH = "armv6"
 PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te armv6"
+TARGET_SUB_ARCH = "v6vfp"
diff --git a/conf/machine/include/tune-arm920t.inc b/conf/machine/include/tune-arm920t.inc
index fee5c58..23240bc 100644
--- a/conf/machine/include/tune-arm920t.inc
+++ b/conf/machine/include/tune-arm920t.inc
@@ -2,3 +2,4 @@ FEED_ARCH = "armv4t"
 BASE_PACKAGE_ARCH = "armv4t" 
 TARGET_CC_ARCH = "-march=armv4t -mtune=arm920t"
 PACKAGE_EXTRA_ARCHS += "armv4 armv4t"
+TARGET_SUB_ARCH = "v4t"
diff --git a/conf/machine/include/tune-arm926ejs.inc b/conf/machine/include/tune-arm926ejs.inc
index f41e460..03da611 100644
--- a/conf/machine/include/tune-arm926ejs.inc
+++ b/conf/machine/include/tune-arm926ejs.inc
@@ -5,3 +5,4 @@ PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te"
 # For gcc 4.x you need:
 TARGET_CC_ARCH = "-march=armv5te -mtune=arm926ej-s"
 BASE_PACKAGE_ARCH = "armv5te"
+TARGET_SUB_ARCH = "v5te"
diff --git a/conf/machine/include/tune-arm9tdmi.inc b/conf/machine/include/tune-arm9tdmi.inc
index d788b53..66b4c71 100644
--- a/conf/machine/include/tune-arm9tdmi.inc
+++ b/conf/machine/include/tune-arm9tdmi.inc
@@ -2,3 +2,4 @@ FEED_ARCH = "armv4t"
 BASE_PACKAGE_ARCH = "armv4t"
 PACKAGE_EXTRA_ARCHS += "armv4 armv4t"
 TARGET_CC_ARCH = "-mcpu=arm9tdmi -mtune=arm9tdmi"
+TARGET_SUB_ARCH = "v4t"
diff --git a/conf/machine/include/tune-armv7.inc b/conf/machine/include/tune-armv7.inc
index 379a3eb..b74ab5f 100644
--- a/conf/machine/include/tune-armv7.inc
+++ b/conf/machine/include/tune-armv7.inc
@@ -5,3 +5,4 @@ TARGET_CC_ARCH = "-march=armv7 -mfpu=vfp -mfloat-abi=softfp"
 FEED_ARCH = "armv7"
 PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te armv6 armv7"
 BASE_PACKAGE_ARCH = "armv7"
+TARGET_SUB_ARCH = "v7"
diff --git a/conf/machine/include/tune-at32ap7000.inc b/conf/machine/include/tune-at32ap7000.inc
index 666dd21..d017988 100644
--- a/conf/machine/include/tune-at32ap7000.inc
+++ b/conf/machine/include/tune-at32ap7000.inc
@@ -1,3 +1,4 @@
 TARGET_CC_ARCH = "-march=ap"
 BASE_PACKAGE_ARCH = "avr32"
 FEED_ARCH = "avr32"
+TARGET_SUB_ARCH = "at32"
diff --git a/conf/machine/include/tune-athlonmp.inc b/conf/machine/include/tune-athlonmp.inc
index 9526faa..26825a2 100644
--- a/conf/machine/include/tune-athlonmp.inc
+++ b/conf/machine/include/tune-athlonmp.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-march=i686"
 PACKAGE_EXTRA_ARCHS += "i386 i486 i586"
 BASE_PACKAGE_ARCH = "i686"
 FEED_ARCH = "i686"
+TARGET_SUB_ARCH = "athlon"
diff --git a/conf/machine/include/tune-atom.inc b/conf/machine/include/tune-atom.inc
index 44058c1..a355142 100644
--- a/conf/machine/include/tune-atom.inc
+++ b/conf/machine/include/tune-atom.inc
@@ -6,4 +6,5 @@ TARGET_CC_ARCH = "-march=core2"
 #TARGET_CC_ARCH = "-march=i686 -mtune=atom"
 BASE_PACKAGE_ARCH = "i686"
 FEED_ARCH = "i686"
-PACKAGE_EXTRA_ARCHS += "x86 i386 i486 i586"
\ No newline at end of file
+TARGET_SUB_ARCH = "atom"
+PACKAGE_EXTRA_ARCHS += "x86 i386 i486 i586"
diff --git a/conf/machine/include/tune-c3.inc b/conf/machine/include/tune-c3.inc
index 136efa2..b926ffb 100644
--- a/conf/machine/include/tune-c3.inc
+++ b/conf/machine/include/tune-c3.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-march=c3 -mtune=c3"
 PACKAGE_EXTRA_ARCHS += "i386 i486"
 BASE_PACKAGE_ARCH = "i586"
 FEED_ARCH = "i586"
+TARGET_SUB_ARCH = "c3"
diff --git a/conf/machine/include/tune-cortexa8.inc b/conf/machine/include/tune-cortexa8.inc
index 096c219..32833b1 100644
--- a/conf/machine/include/tune-cortexa8.inc
+++ b/conf/machine/include/tune-cortexa8.inc
@@ -13,5 +13,6 @@ TARGET_CC_ARCH = "-march=armv7-a -mtune=cortex-a8 -mfpu=neon ${ARM_FP_OPT}"
 
 FEED_ARCH = "armv7a${ARM_FP_PACKAGESUFFIX}"
 BASE_PACKAGE_ARCH = "armv7a${ARM_FP_PACKAGESUFFIX}"
+TARGET_SUB_ARCH = "v7a"
 
 PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te armv6 armv7 armv7a${ARM_FP_PACKAGESUFFIX}"
diff --git a/conf/machine/include/tune-cortexa9.inc b/conf/machine/include/tune-cortexa9.inc
index a12494f..4b89f86 100644
--- a/conf/machine/include/tune-cortexa9.inc
+++ b/conf/machine/include/tune-cortexa9.inc
@@ -7,3 +7,4 @@ TARGET_CC_ARCH = "-march=armv7-a -mtune=cortex-a9 -mfpu=neon -mfloat-abi=softfp"
 FEED_ARCH = "armv7a"
 PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te armv6 armv7 armv7a"
 BASE_PACKAGE_ARCH = "armv7a"
+TARGET_SUB_ARCH = "v7a"
diff --git a/conf/machine/include/tune-cortexm1.inc b/conf/machine/include/tune-cortexm1.inc
index 6c4a70a..f00d2e2 100644
--- a/conf/machine/include/tune-cortexm1.inc
+++ b/conf/machine/include/tune-cortexm1.inc
@@ -1,3 +1,4 @@
 TARGET_CC_ARCH = "-march=armv7 -mtune=cortex-m1 -mfpu=vfp -mfloat-abi=softfp"
 FEED_ARCH = "armv6"
 BASE_PACKAGE_ARCH = "armv6"
+TARGET_SUB_ARCH = "cortexm1"
diff --git a/conf/machine/include/tune-cortexm3.inc b/conf/machine/include/tune-cortexm3.inc
index 6da9aee..b3e5ea8 100644
--- a/conf/machine/include/tune-cortexm3.inc
+++ b/conf/machine/include/tune-cortexm3.inc
@@ -2,3 +2,4 @@
 TARGET_CC_ARCH = "-march=armv7-m -mtune=cortex-m3 -mfpu=vfp -mfloat-abi=softfp"
 FEED_ARCH = "armv7"
 BASE_PACKAGE_ARCH = "armv7"
+TARGET_SUB_ARCH = "v7m"
diff --git a/conf/machine/include/tune-cortexr4.inc b/conf/machine/include/tune-cortexr4.inc
index b8bb7f5..524cabd 100644
--- a/conf/machine/include/tune-cortexr4.inc
+++ b/conf/machine/include/tune-cortexr4.inc
@@ -2,3 +2,4 @@
 TARGET_CC_ARCH = "-march=armv7-r -mtune=cortex-r4 -mfpu=vfp -mfloat-abi=softfp"
 FEED_ARCH = "armv7"
 BASE_PACKAGE_ARCH = "armv7"
+TARGET_SUB_ARCH = "v7r"
diff --git a/conf/machine/include/tune-ep9312.inc b/conf/machine/include/tune-ep9312.inc
index 7458281..c2d8e26 100644
--- a/conf/machine/include/tune-ep9312.inc
+++ b/conf/machine/include/tune-ep9312.inc
@@ -4,6 +4,7 @@ TARGET_CC_ARCH = "-mcpu=ep9312 -mfpu=maverick -mfloat-abi=softfp"
 PACKAGE_EXTRA_ARCHS += "armv4t ep9312"
 BASE_PACKAGE_ARCH = "ep9312"
 FEED_ARCH = "ep9312"
+TARGET_SUB_ARCH = "maverick"
 
 FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O -fno-signed-zeros"
 DEBUG_OPTIMIZATION = "-O -fno-omit-frame-pointer -g"
diff --git a/conf/machine/include/tune-geode.inc b/conf/machine/include/tune-geode.inc
index eda332a..8922e8d 100644
--- a/conf/machine/include/tune-geode.inc
+++ b/conf/machine/include/tune-geode.inc
@@ -3,3 +3,4 @@ BASE_PACKAGE_ARCH = "geode"
 PACKAGE_EXTRA_ARCHS += "x86 i386 geode"
 
 FEED_ARCH = "geode"
+TARGET_SUB_ARCH = "geode"
diff --git a/conf/machine/include/tune-i486sx.inc b/conf/machine/include/tune-i486sx.inc
index bd80259..326001f 100644
--- a/conf/machine/include/tune-i486sx.inc
+++ b/conf/machine/include/tune-i486sx.inc
@@ -3,6 +3,7 @@ TARGET_CC_ARCH = "-march=i486"
 PACKAGE_EXTRA_ARCHS = "486sx"
 BASE_PACKAGE_ARCH = "486sx"
 FEED_ARCH = "${BASE_PACKAGE_ARCH}"
+TARGET_SUB_ARCH = "sx"
 
 # gcc doesn't understand softfloat:
 # "This target does not support --with-float"
diff --git a/conf/machine/include/tune-iwmmxt.inc b/conf/machine/include/tune-iwmmxt.inc
index f7291be..8e102b3 100644
--- a/conf/machine/include/tune-iwmmxt.inc
+++ b/conf/machine/include/tune-iwmmxt.inc
@@ -4,4 +4,4 @@ TARGET_CC_ARCH = "-march=iwmmxt -mcpu=iwmmxt -mtune=iwmmxt"
 BASE_PACKAGE_ARCH = "iwmmxt"
 PACKAGE_EXTRA_ARCHS += "armv4 armv4t armv5te iwmmxt"
 FEED_ARCH = "iwmmxt"
-
+TARGET_SUB_ARCH = "iwmmxt"
diff --git a/conf/machine/include/tune-pentium.inc b/conf/machine/include/tune-pentium.inc
index 0df6917..7747da3 100644
--- a/conf/machine/include/tune-pentium.inc
+++ b/conf/machine/include/tune-pentium.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-march=pentium"
 BASE_PACKAGE_ARCH = "i586"
 FEED_ARCH = "i586"
 PACKAGE_EXTRA_ARCHS += "x86 i386 i486"
+TARGET_SUB_ARCH = "pentium"
diff --git a/conf/machine/include/tune-pentium4c.inc b/conf/machine/include/tune-pentium4c.inc
index 42de0d9..cf25736 100644
--- a/conf/machine/include/tune-pentium4c.inc
+++ b/conf/machine/include/tune-pentium4c.inc
@@ -1,3 +1,4 @@
 TARGET_CC_ARCH = "-march=prescott"
 BASE_PACKAGE_ARCH = "i686p4c"
 PACKAGE_EXTRA_ARCHS += "x86 i386 i486 i586"
+TARGET_SUB_ARCH = "pentium"
diff --git a/conf/machine/include/tune-pentiummmx.inc b/conf/machine/include/tune-pentiummmx.inc
index 33ef631..14f50db 100644
--- a/conf/machine/include/tune-pentiummmx.inc
+++ b/conf/machine/include/tune-pentiummmx.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-march=pentium-mmx"
 BASE_PACKAGE_ARCH = "i586"
 FEED_ARCH = "i586"
 PACKAGE_EXTRA_ARCHS += "i386 i486"
+TARGET_SUB_ARCH = "mmx"
diff --git a/conf/machine/include/tune-pentiumpro.inc b/conf/machine/include/tune-pentiumpro.inc
index 9b9a8be..c76813e 100644
--- a/conf/machine/include/tune-pentiumpro.inc
+++ b/conf/machine/include/tune-pentiumpro.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-march=pentiumpro"
 BASE_PACKAGE_ARCH = "i686"
 FEED_ARCH = "i686"
 PACKAGE_EXTRA_ARCHS += "x86 i386 i486 i586"
+TARGET_SUB_ARCH = "pentium"
diff --git a/conf/machine/include/tune-ppc405.inc b/conf/machine/include/tune-ppc405.inc
index e5edd68..93ed735 100644
--- a/conf/machine/include/tune-ppc405.inc
+++ b/conf/machine/include/tune-ppc405.inc
@@ -4,3 +4,4 @@ TARGET_CC_ARCH = "-mcpu=405"
 BASE_PACKAGE_ARCH = "ppc405"
 FEED_ARCH = "ppc405"
 PACKAGE_EXTRA_ARCHS += "ppc405"
+TARGET_SUB_ARCH = "405"
diff --git a/conf/machine/include/tune-ppc440.inc b/conf/machine/include/tune-ppc440.inc
index 1c94a34..506d34d 100644
--- a/conf/machine/include/tune-ppc440.inc
+++ b/conf/machine/include/tune-ppc440.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-mcpu=440"
 BASE_PACKAGE_ARCH = "ppc440"
 FEED_ARCH = "ppc440"
 PACKAGE_EXTRA_ARCHS += "${BASE_PACKAGE_ARCH} ppc440e"
+TARGET_SUB_ARCH = "440"
diff --git a/conf/machine/include/tune-ppc440e.inc b/conf/machine/include/tune-ppc440e.inc
index 8b6955a..0094ef2 100644
--- a/conf/machine/include/tune-ppc440e.inc
+++ b/conf/machine/include/tune-ppc440e.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-mcpu=440fp -mhard-float"
 BASE_PACKAGE_ARCH = "ppc440e"
 FEED_ARCH = "ppc440e"
 PACKAGE_EXTRA_ARCHS += "ppc440e"
+TARGET_SUB_ARCH = "440e"
diff --git a/conf/machine/include/tune-ppc603e.inc b/conf/machine/include/tune-ppc603e.inc
index a1c62ad..a061acd 100644
--- a/conf/machine/include/tune-ppc603e.inc
+++ b/conf/machine/include/tune-ppc603e.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-mcpu=603e"
 BASE_PACKAGE_ARCH = "ppc603e"
 FEED_ARCH = "ppc603e"
 PACKAGE_EXTRA_ARCHS += "ppc603e"
+TARGET_SUB_ARCH = "603e"
diff --git a/conf/machine/include/tune-ppce300c2.inc b/conf/machine/include/tune-ppce300c2.inc
index 1524c7c..34f2f9a 100644
--- a/conf/machine/include/tune-ppce300c2.inc
+++ b/conf/machine/include/tune-ppce300c2.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-mcpu=e300c2"
 BASE_PACKAGE_ARCH = "ppce300c2"
 FEED_ARCH = "ppce300c2"
 PACKAGE_EXTRA_ARCHS += "ppce300c2"
+TARGET_SUB_ARCH = "e300c2"
diff --git a/conf/machine/include/tune-ppce300c3.inc b/conf/machine/include/tune-ppce300c3.inc
index 467c4cc..317def3 100644
--- a/conf/machine/include/tune-ppce300c3.inc
+++ b/conf/machine/include/tune-ppce300c3.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-mcpu=e300c3"
 BASE_PACKAGE_ARCH = "ppce300c3"
 FEED_ARCH = "ppce300c3"
 PACKAGE_EXTRA_ARCHS += "ppce300c3"
+TARGET_SUB_ARCH = "e300c3"
diff --git a/conf/machine/include/tune-ppce500.inc b/conf/machine/include/tune-ppce500.inc
index 44f8742..2204a33 100644
--- a/conf/machine/include/tune-ppce500.inc
+++ b/conf/machine/include/tune-ppce500.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-mcpu=8540"
 BASE_PACKAGE_ARCH = "ppce500"
 FEED_ARCH = "ppce500"
 PACKAGE_EXTRA_ARCHS += "ppce500"
+TARGET_SUB_ARCH = "e500"
diff --git a/conf/machine/include/tune-ppce500v2.inc b/conf/machine/include/tune-ppce500v2.inc
index 73d8e92..20628fe 100644
--- a/conf/machine/include/tune-ppce500v2.inc
+++ b/conf/machine/include/tune-ppce500v2.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-mcpu=8548 -mspe=yes -mabi=spe -mhard-float -mfloat-gprs=doubl
 BASE_PACKAGE_ARCH = "ppce500v2"
 FEED_ARCH = "ppce500v2"
 PACKAGE_EXTRA_ARCHS += "ppce500v2"
+TARGET_SUB_ARCH = "e500v2"
diff --git a/conf/machine/include/tune-ppce600.inc b/conf/machine/include/tune-ppce600.inc
index 77a7cb8..b5f2d0d 100644
--- a/conf/machine/include/tune-ppce600.inc
+++ b/conf/machine/include/tune-ppce600.inc
@@ -2,3 +2,4 @@ TARGET_CC_ARCH = "-mcpu=7450"
 BASE_PACKAGE_ARCH = "ppce600"
 FEED_ARCH = "ppce600"
 PACKAGE_EXTRA_ARCHS += "ppce600"
+TARGET_SUB_ARCH = "e600"
diff --git a/conf/machine/include/tune-sh3.inc b/conf/machine/include/tune-sh3.inc
index 32801a6..a8b192e 100644
--- a/conf/machine/include/tune-sh3.inc
+++ b/conf/machine/include/tune-sh3.inc
@@ -1,3 +1,4 @@
 TARGET_CC_ARCH = "-ml -m3"
 FEED_ARCH = "sh3"
 BASE_PACKAGE_ARCH = "sh3"
+TARGET_SUB_ARCH = "m3"
diff --git a/conf/machine/include/tune-sh4.inc b/conf/machine/include/tune-sh4.inc
index 5d43e41..ec6b547 100644
--- a/conf/machine/include/tune-sh4.inc
+++ b/conf/machine/include/tune-sh4.inc
@@ -1,3 +1,4 @@
 TARGET_CC_ARCH = "-ml -m4"
 FEED_ARCH = "sh4"
 BASE_PACKAGE_ARCH = "sh4"
+TARGET_SUB_ARCH = "m4"
diff --git a/conf/machine/include/tune-strongarm.inc b/conf/machine/include/tune-strongarm.inc
index fe57c9c..0967fbd 100644
--- a/conf/machine/include/tune-strongarm.inc
+++ b/conf/machine/include/tune-strongarm.inc
@@ -6,3 +6,4 @@ TARGET_CC_ARCH = "-march=armv4 -mtune=strongarm"
 FEED_ARCH = "armv4"
 BASE_PACKAGE_ARCH = "armv4" 
 PACKAGE_EXTRA_ARCHS += "armv4"
+TARGET_SUB_ARCH = "v4"
diff --git a/conf/machine/include/tune-supersparc.inc b/conf/machine/include/tune-supersparc.inc
index a402e7c..699534e 100644
--- a/conf/machine/include/tune-supersparc.inc
+++ b/conf/machine/include/tune-supersparc.inc
@@ -1,3 +1,4 @@
 TARGET_CC_ARCH = "-mcpu=supersparc"
 BASE_PACKAGE_ARCH = "supersparc"
 FEED_ARCH = "supersparc" 
+TARGET_SUB_ARCH = "supersparc"
diff --git a/conf/machine/include/tune-xscale.inc b/conf/machine/include/tune-xscale.inc
index f0f58bc..8cb22cd 100644
--- a/conf/machine/include/tune-xscale.inc
+++ b/conf/machine/include/tune-xscale.inc
@@ -7,3 +7,4 @@ TARGET_CC_ARCH = "-march=armv5te -mtune=xscale"
 TARGET_CC_KERNEL_ARCH = "-march=armv5te -mtune=xscale"
 PACKAGE_EXTRA_ARCHS += "${@['armv4b armv4tb armv5teb', 'armv4 armv4t armv5te'][ bb.data.getVar('TARGET_ARCH', d, 1) == 'arm']}"
 BASE_PACKAGE_ARCH = "${@['armv5teb', 'armv5te'][bb.data.getVar('TARGET_ARCH', d, 1) == 'arm']}"
+TARGET_SUB_ARCH = "${@['v5teb', 'v5te'][bb.data.getVar('TARGET_ARCH', d, 1) == 'arm']}"
-- 
1.7.1




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

* [PATCH 6/8] classes, bitbake.conf: Add MACHINE_SYS and CURRENT_TARGET_SYS
  2010-07-27  6:48 [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Khem Raj
                   ` (4 preceding siblings ...)
  2010-07-27  6:48 ` [PATCH 5/8] machines: Add new variable TARGET_SUB_ARCH Khem Raj
@ 2010-07-27  6:48 ` Khem Raj
  2010-07-27  6:48 ` [PATCH 7/8] recipes: Replace usage of MULTIMACH_TARGET_SYS with CURRENT_TARGET_SYS Khem Raj
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 17+ messages in thread
From: Khem Raj @ 2010-07-27  6:48 UTC (permalink / raw)
  To: openembedded-devel

* construct *VENDOR variable from TARGET_SUB_ARCH and DISTRO_VENDOR.

* MULTIMACH_* are no longer needed TARGET_SYS is distinct enough to get
  multi-machine builds going in same tmpdir.

* MACHINE_SYS expands to ${MACHINE}${TARGET_VENDOR}-${TARGET_OS}

* CURRENT_TARGET_SYS is defined based upon if a recipe is machine
  specific then it will be MACHINE_SYS else it will be TARGET_SYS

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 classes/cross.bbclass            |    2 +-
 classes/packaged-staging.bbclass |    2 +-
 conf/bitbake.conf                |   51 +++++++++++++++++--------------------
 3 files changed, 25 insertions(+), 30 deletions(-)

diff --git a/classes/cross.bbclass b/classes/cross.bbclass
index 5776a37..75b2abe 100644
--- a/classes/cross.bbclass
+++ b/classes/cross.bbclass
@@ -15,6 +15,7 @@ OLD_PACKAGE_ARCH := "${PACKAGE_ARCH}"
 PACKAGE_ARCH = "${OLD_PACKAGE_ARCH}"
 # Also save BASE_PACKAGE_ARCH since HOST_ARCH can influence it
 OLD_BASE_PACKAGE_ARCH := "${BASE_PACKAGE_ARCH}"
+BASE_PACKAGE_ARCH = "${OLD_BASE_PACKAGE_ARCH}"
 
 HOST_ARCH = "${BUILD_ARCH}"
 HOST_VENDOR = "${BUILD_VENDOR}"
@@ -22,7 +23,6 @@ HOST_OS = "${BUILD_OS}"
 HOST_PREFIX = "${BUILD_PREFIX}"
 HOST_CC_ARCH = "${BUILD_CC_ARCH}"
 HOST_EXEEXT = "${BUILD_EXEEXT}"
-BASE_PACKAGE_ARCH = "${OLD_BASE_PACKAGE_ARCH}"
 BASEPKG_HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
 
 CPPFLAGS = "${BUILD_CPPFLAGS}"
diff --git a/classes/packaged-staging.bbclass b/classes/packaged-staging.bbclass
index fda1431..6ff8106 100644
--- a/classes/packaged-staging.bbclass
+++ b/classes/packaged-staging.bbclass
@@ -15,7 +15,7 @@ PSTAGE_PKGVERSION = "${PV}-${PR}"
 PSTAGE_PKGARCH    = "${PACKAGE_ARCH}-${HOST_OS}"
 PSTAGE_EXTRAPATH  ?= "/${OELAYOUT_ABI}/${DISTRO_PR}/"
 PSTAGE_PKGPATH    = "${DISTRO}${PSTAGE_EXTRAPATH}"
-PSTAGE_PKGPN      = "${@bb.data.expand('staging-${PN}-${MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}', d).replace('_', '-')}"
+PSTAGE_PKGPN      = "${@bb.data.expand('staging-${PN}-${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}', d).replace('_', '-')}"
 PSTAGE_PKGNAME    = "${PSTAGE_PKGPN}_${PSTAGE_PKGVERSION}_${PSTAGE_PKGARCH}.ipk"
 PSTAGE_PKG        = "${PSTAGE_DIR}/${PSTAGE_PKGPATH}/${PSTAGE_PKGNAME}"
 PSTAGE_WORKDIR   = "${TMPDIR}/pstage"
diff --git a/conf/bitbake.conf b/conf/bitbake.conf
index 66eebf3..1a4d257 100644
--- a/conf/bitbake.conf
+++ b/conf/bitbake.conf
@@ -98,7 +98,7 @@ BUILD_PREFIX = ""
 BUILD_CC_ARCH = ""
 BUILD_EXEEXT = ""
 
-HOST_ARCH = "${TARGET_SUB_ARCH}"
+HOST_ARCH = "${TARGET_ARCH}"
 HOST_OS = "${TARGET_OS}"
 HOST_VENDOR = "${TARGET_VENDOR}"
 HOST_SYS = "${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}"
@@ -108,8 +108,11 @@ HOST_EXEEXT = ""
 
 TARGET_ARCH ?= "INVALID"
 TARGET_OS = "INVALID"
-TARGET_VENDOR = "${BUILD_VENDOR}"
-TARGET_SYS = "${TARGET_SUB_ARCH}${TARGET_VENDOR}${@['-' + bb.data.getVar('TARGET_OS', d, 1), ''][bb.data.getVar('TARGET_OS', d, 1) == ('' or 'custom')]}"
+TARGET_SUB_ARCH = "INVALID"
+DISTRO_VENDOR ?= 'oe'
+TARGET_VENDOR = ${@['-' + bb.data.getVar('TARGET_SUB_ARCH', d, 1), ''][bb.data.getVar('TARGET_SUB_ARCH', d, 1) == '']}\
+		${@['_' + bb.data.getVar('DISTRO_VENDOR', d, 1), ''][bb.data.getVar('DISTRO_VENDOR', d, 1) == '']}
+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 = ""
 TARGET_EXEEXT = ""
@@ -126,20 +129,16 @@ SDK_EXEEXT = ""
 EXEEXT = "${HOST_EXEEXT}"
 
 BASE_PACKAGE_ARCH = "${HOST_ARCH}"
-PACKAGE_ARCH = "${BASE_PACKAGE_ARCH}"
+PACKAGE_ARCH ?= "${BASE_PACKAGE_ARCH}"
 PACKAGE_EXTRA_ARCHS ?= ""
 MACHINE_ARCH = "${@oe.utils.ifelse(bool(d.getVar('MACHINE', True)), '${MACHINE}', \
-                                   'BASE_PACKAGE_ARCH')}"
-PACKAGE_ARCHS = "all any noarch ${TARGET_ARCH} ${PACKAGE_EXTRA_ARCHS} ${MACHINE}"
-
-MULTIMACH_ARCH = "${PACKAGE_ARCH}"
-MULTIMACH_TARGET_SYS = "${MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
-MULTIMACH_HOST_SYS = "${MULTIMACH_ARCH}${HOST_VENDOR}-${HOST_OS}"
+                                   '${BASE_PACKAGE_ARCH}')}"
+MACHINE_SYS = ${MACHINE_ARCH}${TARGET_VENDOR}-${TARGET_OS}
 
-BASEPKG_HOST_SYS = "${BASE_PACKAGE_ARCH}${HOST_VENDOR}-${HOST_OS}"
-BASEPKG_TARGET_SYS = "${BASE_PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
-
-#TARGET_SUB_ARCH = "${BASE_PACKAGE_ARCH}"
+CURRENT_TARGET_SYS = "${@oe.utils.ifelse(d.getVar('PACKAGE_ARCH', True) != '${BASE_PACKAGE_ARCH}', \
+					'${PACKAGE_ARCH}-${DISTRO_VENDOR}-${TARGET_OS}', \
+					'${TARGET_SYS}')}"
+PACKAGE_ARCHS = "all any noarch ${TARGET_ARCH} ${PACKAGE_EXTRA_ARCHS} ${MACHINE}"
 
 # select proper CPU to get binary locales generated
 QEMU_OPTIONS = ""
@@ -289,8 +288,8 @@ GITDIR = "${CO_DIR}/git"
 BZRDIR = "${CO_DIR}/bzr"
 HGDIR = "${CO_DIR}/hg"
 
-STAMP = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PF}"
-WORKDIR = "${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PF}"
+STAMP = "${TMPDIR}/stamps/${CURRENT_TARGET_SYS}/${PF}"
+WORKDIR = "${TMPDIR}/work/${CURRENT_TARGET_SYS}/${PF}"
 T = "${WORKDIR}/temp"
 D = "${WORKDIR}/image"
 S = "${WORKDIR}/${BP}"
@@ -302,16 +301,14 @@ STAGING_DIR_JAVA = "${STAGING_DIR}/java"
 STAGING_DIR_NATIVE = "${STAGING_DIR}/${BUILD_SYS}"
 STAGING_BINDIR_NATIVE = "${STAGING_DIR_NATIVE}${bindir_native}"
 STAGING_SBINDIR_NATIVE = "${STAGING_DIR_NATIVE}${sbindir_native}"
-STAGING_BINDIR_CROSS  = "${STAGING_DIR_NATIVE}${bindir_native}/${MULTIMACH_HOST_SYS}"
-STAGING_BINDIR_CROSS_BASEPKG = "${STAGING_DIR_NATIVE}${bindir_native}/${BASEPKG_TARGET_SYS}"
+STAGING_BINDIR_CROSS  = "${STAGING_DIR_NATIVE}${bindir_native}/${HOST_SYS}"
+STAGING_BINDIR_CROSS_BASEPKG = "${STAGING_DIR_NATIVE}${bindir_native}/${TARGET_SYS}"
 STAGING_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${libdir_native}"
 STAGING_INCDIR_NATIVE = "${STAGING_DIR_NATIVE}${includedir_native}"
 STAGING_ETCDIR_NATIVE = "${STAGING_DIR_NATIVE}${sysconfdir_native}"
 STAGING_DATADIR_NATIVE = "${STAGING_DIR_NATIVE}${datadir_native}"
 
-# This should really be MULTIMACH_HOST_SYS but that breaks "all" and machine 
-# specific packages - hack around it for now.
-STAGING_DIR_HOST = "${STAGING_DIR}/${BASEPKG_HOST_SYS}"
+STAGING_DIR_HOST = "${STAGING_DIR}/${HOST_SYS}"
 STAGING_BINDIR = "${STAGING_DIR_HOST}${bindir}"
 STAGING_LIBDIR = "${STAGING_DIR_HOST}${libdir}"
 STAGING_INCDIR = "${STAGING_DIR_HOST}${includedir}"
@@ -322,9 +319,7 @@ STAGING_LOADER_DIR = "${STAGING_DIR_HOST}/loader"
 STAGING_FIRMWARE_DIR = "${STAGING_DIR_HOST}/firmware"
 STAGING_PYDIR = "${STAGING_DIR}/lib/python2.4"
 
-# This should really be MULTIMACH_TARGET_SYS but that breaks "all" and machine 
-# specific packages - hack around it for now.
-STAGING_DIR_TARGET = "${STAGING_DIR}/${BASEPKG_TARGET_SYS}"
+STAGING_DIR_TARGET = "${STAGING_DIR}/${TARGET_SYS}"
 
 STAGING_DIR_SDK = "${STAGING_DIR}/${SDK_SYS}"
 
@@ -338,7 +333,7 @@ DEPLOY_DIR_DEB = "${DEPLOY_DIR}/deb"
 DEPLOY_DIR_IMAGE = "${DEPLOY_DIR}/images"
 DEPLOY_DIR_TOOLS = "${DEPLOY_DIR}/tools"
 
-PKGDATA_DIR = "${TMPDIR}/pkgdata/${MULTIMACH_TARGET_SYS}"
+PKGDATA_DIR = "${TMPDIR}/pkgdata/${CURRENT_TARGET_SYS}"
 
 SDK_NAME = "${DISTRO}/${TARGET_ARCH}"
 SDK_PATH = "/usr/local/${SDK_NAME}"
@@ -348,7 +343,7 @@ SDKPATH = "${SDK_PATH}"
 # Kernel info.
 ##################################################################
 
-STAGING_KERNEL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/kernel"
+STAGING_KERNEL_DIR = "${STAGING_DIR}/${MACHINE_SYS}/kernel"
 
 ##################################################################
 # Specific image creation and rootfs population info.
@@ -635,9 +630,9 @@ SLOT = "0"
 
 # Other
 
-export PKG_CONFIG_DIR = "${STAGING_DIR}/${BASE_PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}${libdir}/pkgconfig"
+export PKG_CONFIG_DIR = "${STAGING_DIR}/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}${libdir}/pkgconfig"
 export PKG_CONFIG_PATH = "${PKG_CONFIG_DIR}:${STAGING_DATADIR}/pkgconfig"
-export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR}/${BASE_PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
+export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR}/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
 export PKG_CONFIG_DISABLE_UNINSTALLED = "yes"
 
 export XDG_DATA_DIRS = "${STAGING_DATADIR}"
-- 
1.7.1




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

* [PATCH 7/8] recipes: Replace usage of MULTIMACH_TARGET_SYS with CURRENT_TARGET_SYS
  2010-07-27  6:48 [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Khem Raj
                   ` (5 preceding siblings ...)
  2010-07-27  6:48 ` [PATCH 6/8] classes, bitbake.conf: Add MACHINE_SYS and CURRENT_TARGET_SYS Khem Raj
@ 2010-07-27  6:48 ` Khem Raj
  2010-07-27  6:57   ` Koen Kooi
  2010-07-27  6:48 ` [PATCH 8/8] recipes: Replace ${PN} override with pn-${PN} for PACKAGE_ARCH Khem Raj
                   ` (2 subsequent siblings)
  9 siblings, 1 reply; 17+ messages in thread
From: Khem Raj @ 2010-07-27  6:48 UTC (permalink / raw)
  To: openembedded-devel

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 recipes/gnuradio/gnuradio-libusb-compat.inc     |    2 +-
 recipes/gnuradio/gnuradio.inc                   |    2 +-
 recipes/opencv/opencv-dsp-acceleration_svn.bb   |    2 +-
 recipes/ti/README                               |    3 +-
 recipes/ti/ti-paths.inc                         |   34 +++++++++++-----------
 recipes/ti/ti-staging.inc                       |    4 +-
 recipes/xapian/xapian-bindings-python_1.0.14.bb |    2 +-
 7 files changed, 24 insertions(+), 25 deletions(-)

diff --git a/recipes/gnuradio/gnuradio-libusb-compat.inc b/recipes/gnuradio/gnuradio-libusb-compat.inc
index efe2b88..aa4d41a 100644
--- a/recipes/gnuradio/gnuradio-libusb-compat.inc
+++ b/recipes/gnuradio/gnuradio-libusb-compat.inc
@@ -8,7 +8,7 @@ INC_PR = "r7"
 inherit distutils-base autotools autotools_stage pkgconfig
 
 export BUILD_SYS
-export HOST_SYS=${MULTIMACH_TARGET_SYS}
+export HOST_SYS
 
 CXXFLAGS_powerpc += "-lstdc++"
 
diff --git a/recipes/gnuradio/gnuradio.inc b/recipes/gnuradio/gnuradio.inc
index 6eaf119..1a08930 100644
--- a/recipes/gnuradio/gnuradio.inc
+++ b/recipes/gnuradio/gnuradio.inc
@@ -8,7 +8,7 @@ INC_PR = "r7"
 inherit distutils-base autotools autotools_stage pkgconfig
 
 export BUILD_SYS
-export HOST_SYS=${MULTIMACH_TARGET_SYS}
+export HOST_SYS
 
 CXXFLAGS_powerpc += "-lstdc++"
 
diff --git a/recipes/opencv/opencv-dsp-acceleration_svn.bb b/recipes/opencv/opencv-dsp-acceleration_svn.bb
index 788e8e2..1a2d7bb 100644
--- a/recipes/opencv/opencv-dsp-acceleration_svn.bb
+++ b/recipes/opencv/opencv-dsp-acceleration_svn.bb
@@ -22,7 +22,7 @@ export OPENCV_PATH = "${STAGING_INCDIR}"
 export DSPLIB_PATH = "${DSPLIB_INSTALL_DIR}"
 
 # You need to extract the imglib from the .exe manually and place it in /OE/tmp (or somewhere else and change the patch below)
-export IMGLIB_PATH = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${installdir}/imglib_v201"
+export IMGLIB_PATH = "${STAGING_DIR}/${MACHINE_SYS}${installdir}/imglib_v201"
 
 do_configure() {
 	echo "-l ${DSPLIB_INSTALL_DIR}/dsplib64plus.lib" >> ${S}/beagle/server/opencv_unitserver_evm3530/link.cmd
diff --git a/recipes/ti/README b/recipes/ti/README
index 2fbb9f1..9a36f70 100644
--- a/recipes/ti/README
+++ b/recipes/ti/README
@@ -29,13 +29,12 @@ Since most of the recipes in this directory deal with a DSP (e.g OMAP3) or accel
 The complete unpacked trees are staged to staging/machine/usr/share/ti/${PN}(-tree) and all the _INSTALL_DIR vars will point to that. To make this work there is a ti-staging.inc which contains:
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
-BASEPKG_HOST_SYS = "${MULTIMACH_HOST_SYS}"
 PACKAGE_STRIP = "no"
 
 The 'BASEPKG_HOST_SYS' bit is what makes it work, but cause trouble is you want to read from it, so ti-paths.inc does:
 
 export CODEGEN_INSTALL_DIR_RECIPE    = "${installdir}/ti-cgt6x"
-export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/${CODEGEN_INSTALL_DIR_RECIPE}"
+export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${MACHINE_SYS}/${CODEGEN_INSTALL_DIR_RECIPE}"
 
 Which will point it to the machine specific staging like we want it to.
 
diff --git a/recipes/ti/ti-paths.inc b/recipes/ti/ti-paths.inc
index 27400a1..de8893a 100644
--- a/recipes/ti/ti-paths.inc
+++ b/recipes/ti/ti-paths.inc
@@ -22,23 +22,23 @@ export BIOSPSP_INSTALL_DIR_RECIPE    = "${installdir}/ti-biospsp-tree"
 export AUDIO_SOC_INSTALL_DIR_RECIPE  = "${installdir}/ti-audio-soc-example-tree"
 
 # This is where the tools will end up in staging provided PACKAGE_ARCH = ${MACHINE_ARCH} is set
-export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CODEGEN_INSTALL_DIR_RECIPE}"
-export XDC_INSTALL_DIR        = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${XDC_INSTALL_DIR_RECIPE}"
-export XDAIS_INSTALL_DIR      = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${XDAIS_INSTALL_DIR_RECIPE}"
-export BIOS_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${BIOS_INSTALL_DIR_RECIPE}"
-export SYSBIOS_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${SYSBIOS_INSTALL_DIR_RECIPE}"
-export BIOSUTILS_INSTALL_DIR  = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${BIOSUTILS_INSTALL_DIR_RECIPE}"
-export FC_INSTALL_DIR         = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${FC_INSTALL_DIR_RECIPE}"
-export CE_INSTALL_DIR         = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CE_INSTALL_DIR_RECIPE}"
-export EDMA3_LLD_INSTALL_DIR  = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${EDMA3_LLD_INSTALL_DIR_RECIPE}"
-export LINUXUTILS_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${LINUXUTILS_INSTALL_DIR_RECIPE}"
-export CMEM_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CMEM_INSTALL_DIR_RECIPE}"
-export LINK_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${LINK_INSTALL_DIR_RECIPE}"
-export LPM_INSTALL_DIR        = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${LPM_INSTALL_DIR_RECIPE}"
-export DMAI_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${DMAI_INSTALL_DIR_RECIPE}"
-export CODEC_INSTALL_DIR      = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CODEC_INSTALL_DIR_RECIPE}"
-export DSPLIB_INSTALL_DIR     = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${DSPLIB_INSTALL_DIR_RECIPE}"
-export BIOSPSP_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${BIOSPSP_INSTALL_DIR_RECIPE}"
+export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CODEGEN_INSTALL_DIR_RECIPE}"
+export XDC_INSTALL_DIR        = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${XDC_INSTALL_DIR_RECIPE}"
+export XDAIS_INSTALL_DIR      = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${XDAIS_INSTALL_DIR_RECIPE}"
+export BIOS_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${BIOS_INSTALL_DIR_RECIPE}"
+export SYSBIOS_INSTALL_DIR    = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${SYSBIOS_INSTALL_DIR_RECIPE}"
+export BIOSUTILS_INSTALL_DIR  = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${BIOSUTILS_INSTALL_DIR_RECIPE}"
+export FC_INSTALL_DIR         = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${FC_INSTALL_DIR_RECIPE}"
+export CE_INSTALL_DIR         = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CE_INSTALL_DIR_RECIPE}"
+export EDMA3_LLD_INSTALL_DIR  = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${EDMA3_LLD_INSTALL_DIR_RECIPE}"
+export LINUXUTILS_INSTALL_DIR = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${LINUXUTILS_INSTALL_DIR_RECIPE}"
+export CMEM_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CMEM_INSTALL_DIR_RECIPE}"
+export LINK_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${LINK_INSTALL_DIR_RECIPE}"
+export LPM_INSTALL_DIR        = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${LPM_INSTALL_DIR_RECIPE}"
+export DMAI_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${DMAI_INSTALL_DIR_RECIPE}"
+export CODEC_INSTALL_DIR      = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CODEC_INSTALL_DIR_RECIPE}"
+export DSPLIB_INSTALL_DIR     = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${DSPLIB_INSTALL_DIR_RECIPE}"
+export BIOSPSP_INSTALL_DIR    = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${BIOSPSP_INSTALL_DIR_RECIPE}"
 
 DSPSUFFIX_omapl137 = "x674"
 DSPSUFFIX_omapl138 = "x674"
diff --git a/recipes/ti/ti-staging.inc b/recipes/ti/ti-staging.inc
index 593f094..c32f01c 100644
--- a/recipes/ti/ti-staging.inc
+++ b/recipes/ti/ti-staging.inc
@@ -1,10 +1,10 @@
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
 # Allow staging into machine specific dir
-BASEPKG_HOST_SYS = "${MULTIMACH_HOST_SYS}"
+HOST_SYS = "${CURRENT_TARGET_SYS}"
 
 # Search archdir for shlibs instead of machine dir due to above BASEPKG_HOST_SYS
-SHLIBSDIR = "${STAGING_DIR}/${BASE_PACKAGE_ARCH}${HOST_VENDOR}-${HOST_OS}/shlibs"
+SHLIBSDIR = "${STAGING_DIR}/${HOST_SYS}/shlibs"
 
 PACKAGE_STRIP = "no"
 
diff --git a/recipes/xapian/xapian-bindings-python_1.0.14.bb b/recipes/xapian/xapian-bindings-python_1.0.14.bb
index ae97779..6c24e2d 100644
--- a/recipes/xapian/xapian-bindings-python_1.0.14.bb
+++ b/recipes/xapian/xapian-bindings-python_1.0.14.bb
@@ -18,7 +18,7 @@ EXTRA_OECONF = "--with-python --without-php --without-ruby --without-tcl \
                 --without-csharp --without-java"
 
 do_configure () {
-        BUILD_SYS=${BUILD_SYS} HOST_SYS=${MULTIMACH_HOST_SYS} \
+        BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
         autotools_do_configure
 }
 
-- 
1.7.1




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

* [PATCH 8/8] recipes: Replace ${PN} override with pn-${PN} for PACKAGE_ARCH
  2010-07-27  6:48 [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Khem Raj
                   ` (6 preceding siblings ...)
  2010-07-27  6:48 ` [PATCH 7/8] recipes: Replace usage of MULTIMACH_TARGET_SYS with CURRENT_TARGET_SYS Khem Raj
@ 2010-07-27  6:48 ` Khem Raj
  2010-07-27  6:55   ` Koen Kooi
  2010-07-27  7:32   ` Phil Blundell
  2010-07-28  7:07 ` [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Koen Kooi
  2010-07-29 17:44 ` Koen Kooi
  9 siblings, 2 replies; 17+ messages in thread
From: Khem Raj @ 2010-07-27  6:48 UTC (permalink / raw)
  To: openembedded-devel

* Needed to get CURRENT_TARGET_SYS to evaluate correctly in bitbake.conf

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 recipes/fbreader/fbreader_0.8.2a.bb              |    2 +-
 recipes/freesmartphone/frameworkd_git.bb         |    2 +-
 recipes/miniinit/miniinit.bb                     |    2 +-
 recipes/mipl-mipv6/mipv6_1.1-v2.4.26.bb          |    2 +-
 recipes/mipl-mipv6/mipv6_2.0.2.bb                |    2 +-
 recipes/obsolete/shr/alsa-scenarii-shr_git.bb    |    2 +-
 recipes/openmoko2/openmoko-alsa-scenarios_svn.bb |    2 +-
 recipes/shadow/shadow.inc                        |    2 +-
 recipes/shr/frameworkd-config-shr_git.bb         |    2 +-
 recipes/sysvinit/sysvinit_2.86.bb                |    2 +-
 recipes/tasks/task-x11.bb                        |    2 +-
 recipes/usb-gadget-mode/usb-gadget-mode.bb       |    2 +-
 12 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/recipes/fbreader/fbreader_0.8.2a.bb b/recipes/fbreader/fbreader_0.8.2a.bb
index 50e27c5..c1a2480 100644
--- a/recipes/fbreader/fbreader_0.8.2a.bb
+++ b/recipes/fbreader/fbreader_0.8.2a.bb
@@ -8,7 +8,7 @@ PR = "r7"
 
 # The RESOLUTION is defined at compile time which makes
 # this package MACHINE specific.
-PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
 
 SRC_URI = "http://www.fbreader.org/obsolete/fbreader-sources-${PV}.tgz \
 	   file://fbreader-0.8.2a_buildsys_oe.patch \
diff --git a/recipes/freesmartphone/frameworkd_git.bb b/recipes/freesmartphone/frameworkd_git.bb
index e47e665..4690e24 100644
--- a/recipes/freesmartphone/frameworkd_git.bb
+++ b/recipes/freesmartphone/frameworkd_git.bb
@@ -78,7 +78,7 @@ RRECOMMENDS_${PN} += "\
 "
 
 PACKAGES =+ "${PN}-config"
-PACKAGE_ARCH_${PN}-config = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN}-config = "${MACHINE_ARCH}"
 
 # machine specific stuff, should ideally be elsewhere
 # - recommend MUXer on platforms that require one
diff --git a/recipes/miniinit/miniinit.bb b/recipes/miniinit/miniinit.bb
index 054c1bd..e6986a7 100644
--- a/recipes/miniinit/miniinit.bb
+++ b/recipes/miniinit/miniinit.bb
@@ -4,7 +4,7 @@ LICENSE = "GPL"
 
 # SERIAL_CONSOLE is generally defined by the MACHINE .conf.
 # Set PACKAGE_ARCH appropriately.
-PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
 
 SRC_URI = "file://rcS file://inittab"
 
diff --git a/recipes/mipl-mipv6/mipv6_1.1-v2.4.26.bb b/recipes/mipl-mipv6/mipv6_1.1-v2.4.26.bb
index 913a388..d977589 100644
--- a/recipes/mipl-mipv6/mipv6_1.1-v2.4.26.bb
+++ b/recipes/mipl-mipv6/mipv6_1.1-v2.4.26.bb
@@ -6,7 +6,7 @@ DEPENDS = "virtual/kernel"
 LICENSE = "GPL"
 CFLAGS =+ "-I${S}/include -I${STAGING_KERNEL_DIR}/include"
 
-PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
 
 PR ="r3"
 
diff --git a/recipes/mipl-mipv6/mipv6_2.0.2.bb b/recipes/mipl-mipv6/mipv6_2.0.2.bb
index ae20101..0549ae2 100644
--- a/recipes/mipl-mipv6/mipv6_2.0.2.bb
+++ b/recipes/mipl-mipv6/mipv6_2.0.2.bb
@@ -19,7 +19,7 @@ do_install() {
         oe_runmake sbindir="${D}${sbindir}" initdir="${D}${sysconfdir}/init.d" mandir="${D}${mandir}" docdir="${D}${docdir}/mobile-ip6" NETWORK_MIP6_CONF="${D}${sysconfdir}" install
 }
 
-PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
 
 
 SRC_URI[md5sum] = "2cf58dca0ab3c38223e25dbecba8ed37"
diff --git a/recipes/obsolete/shr/alsa-scenarii-shr_git.bb b/recipes/obsolete/shr/alsa-scenarii-shr_git.bb
index 35bf569..ab3e083 100644
--- a/recipes/obsolete/shr/alsa-scenarii-shr_git.bb
+++ b/recipes/obsolete/shr/alsa-scenarii-shr_git.bb
@@ -17,7 +17,7 @@ do_install() {
     install -m 644 ${S}/stereoout.state ${D}${sysconfdir}/asound.state
 }
 
-PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
 
 FILES_${PN} += "${datadir}/shr"
 
diff --git a/recipes/openmoko2/openmoko-alsa-scenarios_svn.bb b/recipes/openmoko2/openmoko-alsa-scenarios_svn.bb
index 315ea4d..7014919 100644
--- a/recipes/openmoko2/openmoko-alsa-scenarios_svn.bb
+++ b/recipes/openmoko2/openmoko-alsa-scenarios_svn.bb
@@ -20,6 +20,6 @@ do_install() {
     install -m 644 ${S}/stereoout.state ${D}${sysconfdir}/asound.state
 }
 
-PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
 
 FILES_${PN} += "${datadir}/openmoko"
diff --git a/recipes/shadow/shadow.inc b/recipes/shadow/shadow.inc
index 3d4886a..0b850d1 100644
--- a/recipes/shadow/shadow.inc
+++ b/recipes/shadow/shadow.inc
@@ -11,7 +11,7 @@ LICENSE = "BSD"
 SECTION = "base"
 DEPENDS += "${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
 
-PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
 
 INC_PR = "r16"
 
diff --git a/recipes/shr/frameworkd-config-shr_git.bb b/recipes/shr/frameworkd-config-shr_git.bb
index bc7284f..cf2a534 100644
--- a/recipes/shr/frameworkd-config-shr_git.bb
+++ b/recipes/shr/frameworkd-config-shr_git.bb
@@ -60,7 +60,7 @@ do_install_append() {
         install -m 0644 ${CONF_PATH}/*.wav ${D}${datadir}/sounds/
 }
 
-PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
 
 # - add wmiconfig for wireless configuration
 RDEPENDS_${PN}_append_om-gta02 = " wmiconfig"
diff --git a/recipes/sysvinit/sysvinit_2.86.bb b/recipes/sysvinit/sysvinit_2.86.bb
index 40c642a..d75cb32 100644
--- a/recipes/sysvinit/sysvinit_2.86.bb
+++ b/recipes/sysvinit/sysvinit_2.86.bb
@@ -6,7 +6,7 @@ PR = "r58"
 
 # USE_VT and SERIAL_CONSOLE are generally defined by the MACHINE .conf.
 # Set PACKAGE_ARCH appropriately.
-PACKAGE_ARCH_${PN}-inittab = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN}-inittab = "${MACHINE_ARCH}"
 
 RDEPENDS_${PN} = "${PN}-inittab"
 
diff --git a/recipes/tasks/task-x11.bb b/recipes/tasks/task-x11.bb
index 77e281e..a70bb15 100644
--- a/recipes/tasks/task-x11.bb
+++ b/recipes/tasks/task-x11.bb
@@ -25,7 +25,7 @@ XSERVER_COMMON ?= "xserver-kdrive-common"
 XSERVER_COMMON_shr = "xserver-common"
 
 # This is also the reason why we have to make this package machine specific :/
-PACKAGE_ARCH_${PN}-server = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN}-server = "${MACHINE_ARCH}"
 
 RDEPENDS_${PN}-server = "\
   ${XSERVER} \
diff --git a/recipes/usb-gadget-mode/usb-gadget-mode.bb b/recipes/usb-gadget-mode/usb-gadget-mode.bb
index aa0f76e..d7fbb35 100644
--- a/recipes/usb-gadget-mode/usb-gadget-mode.bb
+++ b/recipes/usb-gadget-mode/usb-gadget-mode.bb
@@ -37,5 +37,5 @@ pkg_postrm_${PN}() {
 	update-rc.d -f usb-gadget remove
 }
 
-PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
+PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
 
-- 
1.7.1




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

* Re: [PATCH 8/8] recipes: Replace ${PN} override with pn-${PN} for PACKAGE_ARCH
  2010-07-27  6:48 ` [PATCH 8/8] recipes: Replace ${PN} override with pn-${PN} for PACKAGE_ARCH Khem Raj
@ 2010-07-27  6:55   ` Koen Kooi
  2010-07-27  7:32   ` Phil Blundell
  1 sibling, 0 replies; 17+ messages in thread
From: Koen Kooi @ 2010-07-27  6:55 UTC (permalink / raw)
  To: openembedded-devel

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

The below means something is very broken now, ${PN} is a local override,
in the recipe you should never need the pn-<foo> notation

On 27-07-10 08:48, Khem Raj wrote:
> * Needed to get CURRENT_TARGET_SYS to evaluate correctly in bitbake.conf
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  recipes/fbreader/fbreader_0.8.2a.bb              |    2 +-
>  recipes/freesmartphone/frameworkd_git.bb         |    2 +-
>  recipes/miniinit/miniinit.bb                     |    2 +-
>  recipes/mipl-mipv6/mipv6_1.1-v2.4.26.bb          |    2 +-
>  recipes/mipl-mipv6/mipv6_2.0.2.bb                |    2 +-
>  recipes/obsolete/shr/alsa-scenarii-shr_git.bb    |    2 +-
>  recipes/openmoko2/openmoko-alsa-scenarios_svn.bb |    2 +-
>  recipes/shadow/shadow.inc                        |    2 +-
>  recipes/shr/frameworkd-config-shr_git.bb         |    2 +-
>  recipes/sysvinit/sysvinit_2.86.bb                |    2 +-
>  recipes/tasks/task-x11.bb                        |    2 +-
>  recipes/usb-gadget-mode/usb-gadget-mode.bb       |    2 +-
>  12 files changed, 12 insertions(+), 12 deletions(-)
> 
> diff --git a/recipes/fbreader/fbreader_0.8.2a.bb b/recipes/fbreader/fbreader_0.8.2a.bb
> index 50e27c5..c1a2480 100644
> --- a/recipes/fbreader/fbreader_0.8.2a.bb
> +++ b/recipes/fbreader/fbreader_0.8.2a.bb
> @@ -8,7 +8,7 @@ PR = "r7"
>  
>  # The RESOLUTION is defined at compile time which makes
>  # this package MACHINE specific.
> -PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
>  
>  SRC_URI = "http://www.fbreader.org/obsolete/fbreader-sources-${PV}.tgz \
>  	   file://fbreader-0.8.2a_buildsys_oe.patch \
> diff --git a/recipes/freesmartphone/frameworkd_git.bb b/recipes/freesmartphone/frameworkd_git.bb
> index e47e665..4690e24 100644
> --- a/recipes/freesmartphone/frameworkd_git.bb
> +++ b/recipes/freesmartphone/frameworkd_git.bb
> @@ -78,7 +78,7 @@ RRECOMMENDS_${PN} += "\
>  "
>  
>  PACKAGES =+ "${PN}-config"
> -PACKAGE_ARCH_${PN}-config = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN}-config = "${MACHINE_ARCH}"
>  
>  # machine specific stuff, should ideally be elsewhere
>  # - recommend MUXer on platforms that require one
> diff --git a/recipes/miniinit/miniinit.bb b/recipes/miniinit/miniinit.bb
> index 054c1bd..e6986a7 100644
> --- a/recipes/miniinit/miniinit.bb
> +++ b/recipes/miniinit/miniinit.bb
> @@ -4,7 +4,7 @@ LICENSE = "GPL"
>  
>  # SERIAL_CONSOLE is generally defined by the MACHINE .conf.
>  # Set PACKAGE_ARCH appropriately.
> -PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
>  
>  SRC_URI = "file://rcS file://inittab"
>  
> diff --git a/recipes/mipl-mipv6/mipv6_1.1-v2.4.26.bb b/recipes/mipl-mipv6/mipv6_1.1-v2.4.26.bb
> index 913a388..d977589 100644
> --- a/recipes/mipl-mipv6/mipv6_1.1-v2.4.26.bb
> +++ b/recipes/mipl-mipv6/mipv6_1.1-v2.4.26.bb
> @@ -6,7 +6,7 @@ DEPENDS = "virtual/kernel"
>  LICENSE = "GPL"
>  CFLAGS =+ "-I${S}/include -I${STAGING_KERNEL_DIR}/include"
>  
> -PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
>  
>  PR ="r3"
>  
> diff --git a/recipes/mipl-mipv6/mipv6_2.0.2.bb b/recipes/mipl-mipv6/mipv6_2.0.2.bb
> index ae20101..0549ae2 100644
> --- a/recipes/mipl-mipv6/mipv6_2.0.2.bb
> +++ b/recipes/mipl-mipv6/mipv6_2.0.2.bb
> @@ -19,7 +19,7 @@ do_install() {
>          oe_runmake sbindir="${D}${sbindir}" initdir="${D}${sysconfdir}/init.d" mandir="${D}${mandir}" docdir="${D}${docdir}/mobile-ip6" NETWORK_MIP6_CONF="${D}${sysconfdir}" install
>  }
>  
> -PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
>  
>  
>  SRC_URI[md5sum] = "2cf58dca0ab3c38223e25dbecba8ed37"
> diff --git a/recipes/obsolete/shr/alsa-scenarii-shr_git.bb b/recipes/obsolete/shr/alsa-scenarii-shr_git.bb
> index 35bf569..ab3e083 100644
> --- a/recipes/obsolete/shr/alsa-scenarii-shr_git.bb
> +++ b/recipes/obsolete/shr/alsa-scenarii-shr_git.bb
> @@ -17,7 +17,7 @@ do_install() {
>      install -m 644 ${S}/stereoout.state ${D}${sysconfdir}/asound.state
>  }
>  
> -PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
>  
>  FILES_${PN} += "${datadir}/shr"
>  
> diff --git a/recipes/openmoko2/openmoko-alsa-scenarios_svn.bb b/recipes/openmoko2/openmoko-alsa-scenarios_svn.bb
> index 315ea4d..7014919 100644
> --- a/recipes/openmoko2/openmoko-alsa-scenarios_svn.bb
> +++ b/recipes/openmoko2/openmoko-alsa-scenarios_svn.bb
> @@ -20,6 +20,6 @@ do_install() {
>      install -m 644 ${S}/stereoout.state ${D}${sysconfdir}/asound.state
>  }
>  
> -PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
>  
>  FILES_${PN} += "${datadir}/openmoko"
> diff --git a/recipes/shadow/shadow.inc b/recipes/shadow/shadow.inc
> index 3d4886a..0b850d1 100644
> --- a/recipes/shadow/shadow.inc
> +++ b/recipes/shadow/shadow.inc
> @@ -11,7 +11,7 @@ LICENSE = "BSD"
>  SECTION = "base"
>  DEPENDS += "${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
>  
> -PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
>  
>  INC_PR = "r16"
>  
> diff --git a/recipes/shr/frameworkd-config-shr_git.bb b/recipes/shr/frameworkd-config-shr_git.bb
> index bc7284f..cf2a534 100644
> --- a/recipes/shr/frameworkd-config-shr_git.bb
> +++ b/recipes/shr/frameworkd-config-shr_git.bb
> @@ -60,7 +60,7 @@ do_install_append() {
>          install -m 0644 ${CONF_PATH}/*.wav ${D}${datadir}/sounds/
>  }
>  
> -PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
>  
>  # - add wmiconfig for wireless configuration
>  RDEPENDS_${PN}_append_om-gta02 = " wmiconfig"
> diff --git a/recipes/sysvinit/sysvinit_2.86.bb b/recipes/sysvinit/sysvinit_2.86.bb
> index 40c642a..d75cb32 100644
> --- a/recipes/sysvinit/sysvinit_2.86.bb
> +++ b/recipes/sysvinit/sysvinit_2.86.bb
> @@ -6,7 +6,7 @@ PR = "r58"
>  
>  # USE_VT and SERIAL_CONSOLE are generally defined by the MACHINE .conf.
>  # Set PACKAGE_ARCH appropriately.
> -PACKAGE_ARCH_${PN}-inittab = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN}-inittab = "${MACHINE_ARCH}"
>  
>  RDEPENDS_${PN} = "${PN}-inittab"
>  
> diff --git a/recipes/tasks/task-x11.bb b/recipes/tasks/task-x11.bb
> index 77e281e..a70bb15 100644
> --- a/recipes/tasks/task-x11.bb
> +++ b/recipes/tasks/task-x11.bb
> @@ -25,7 +25,7 @@ XSERVER_COMMON ?= "xserver-kdrive-common"
>  XSERVER_COMMON_shr = "xserver-common"
>  
>  # This is also the reason why we have to make this package machine specific :/
> -PACKAGE_ARCH_${PN}-server = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN}-server = "${MACHINE_ARCH}"
>  
>  RDEPENDS_${PN}-server = "\
>    ${XSERVER} \
> diff --git a/recipes/usb-gadget-mode/usb-gadget-mode.bb b/recipes/usb-gadget-mode/usb-gadget-mode.bb
> index aa0f76e..d7fbb35 100644
> --- a/recipes/usb-gadget-mode/usb-gadget-mode.bb
> +++ b/recipes/usb-gadget-mode/usb-gadget-mode.bb
> @@ -37,5 +37,5 @@ pkg_postrm_${PN}() {
>  	update-rc.d -f usb-gadget remove
>  }
>  
> -PACKAGE_ARCH_${PN} = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN} = "${MACHINE_ARCH}"
>  

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)

iD8DBQFMToL4MkyGM64RGpERAlJIAJ92u2IgkOZL5bT2c0YEjyWkDriafwCeINee
qdt1V42EUWGhMNWxkgjjhUA=
=fHCm
-----END PGP SIGNATURE-----




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

* Re: [PATCH 7/8] recipes: Replace usage of MULTIMACH_TARGET_SYS with CURRENT_TARGET_SYS
  2010-07-27  6:48 ` [PATCH 7/8] recipes: Replace usage of MULTIMACH_TARGET_SYS with CURRENT_TARGET_SYS Khem Raj
@ 2010-07-27  6:57   ` Koen Kooi
  2010-07-27  9:12     ` Khem Raj
  0 siblings, 1 reply; 17+ messages in thread
From: Koen Kooi @ 2010-07-27  6:57 UTC (permalink / raw)
  To: openembedded-devel

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Does this make the TI recipes live in the same sysroot dir as the
kernel? Thas was the aim for this.

On 27-07-10 08:48, Khem Raj wrote:
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  recipes/gnuradio/gnuradio-libusb-compat.inc     |    2 +-
>  recipes/gnuradio/gnuradio.inc                   |    2 +-
>  recipes/opencv/opencv-dsp-acceleration_svn.bb   |    2 +-
>  recipes/ti/README                               |    3 +-
>  recipes/ti/ti-paths.inc                         |   34 +++++++++++-----------
>  recipes/ti/ti-staging.inc                       |    4 +-
>  recipes/xapian/xapian-bindings-python_1.0.14.bb |    2 +-
>  7 files changed, 24 insertions(+), 25 deletions(-)
> 
> diff --git a/recipes/gnuradio/gnuradio-libusb-compat.inc b/recipes/gnuradio/gnuradio-libusb-compat.inc
> index efe2b88..aa4d41a 100644
> --- a/recipes/gnuradio/gnuradio-libusb-compat.inc
> +++ b/recipes/gnuradio/gnuradio-libusb-compat.inc
> @@ -8,7 +8,7 @@ INC_PR = "r7"
>  inherit distutils-base autotools autotools_stage pkgconfig
>  
>  export BUILD_SYS
> -export HOST_SYS=${MULTIMACH_TARGET_SYS}
> +export HOST_SYS
>  
>  CXXFLAGS_powerpc += "-lstdc++"
>  
> diff --git a/recipes/gnuradio/gnuradio.inc b/recipes/gnuradio/gnuradio.inc
> index 6eaf119..1a08930 100644
> --- a/recipes/gnuradio/gnuradio.inc
> +++ b/recipes/gnuradio/gnuradio.inc
> @@ -8,7 +8,7 @@ INC_PR = "r7"
>  inherit distutils-base autotools autotools_stage pkgconfig
>  
>  export BUILD_SYS
> -export HOST_SYS=${MULTIMACH_TARGET_SYS}
> +export HOST_SYS
>  
>  CXXFLAGS_powerpc += "-lstdc++"
>  
> diff --git a/recipes/opencv/opencv-dsp-acceleration_svn.bb b/recipes/opencv/opencv-dsp-acceleration_svn.bb
> index 788e8e2..1a2d7bb 100644
> --- a/recipes/opencv/opencv-dsp-acceleration_svn.bb
> +++ b/recipes/opencv/opencv-dsp-acceleration_svn.bb
> @@ -22,7 +22,7 @@ export OPENCV_PATH = "${STAGING_INCDIR}"
>  export DSPLIB_PATH = "${DSPLIB_INSTALL_DIR}"
>  
>  # You need to extract the imglib from the .exe manually and place it in /OE/tmp (or somewhere else and change the patch below)
> -export IMGLIB_PATH = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${installdir}/imglib_v201"
> +export IMGLIB_PATH = "${STAGING_DIR}/${MACHINE_SYS}${installdir}/imglib_v201"
>  
>  do_configure() {
>  	echo "-l ${DSPLIB_INSTALL_DIR}/dsplib64plus.lib" >> ${S}/beagle/server/opencv_unitserver_evm3530/link.cmd
> diff --git a/recipes/ti/README b/recipes/ti/README
> index 2fbb9f1..9a36f70 100644
> --- a/recipes/ti/README
> +++ b/recipes/ti/README
> @@ -29,13 +29,12 @@ Since most of the recipes in this directory deal with a DSP (e.g OMAP3) or accel
>  The complete unpacked trees are staged to staging/machine/usr/share/ti/${PN}(-tree) and all the _INSTALL_DIR vars will point to that. To make this work there is a ti-staging.inc which contains:
>  
>  PACKAGE_ARCH = "${MACHINE_ARCH}"
> -BASEPKG_HOST_SYS = "${MULTIMACH_HOST_SYS}"
>  PACKAGE_STRIP = "no"
>  
>  The 'BASEPKG_HOST_SYS' bit is what makes it work, but cause trouble is you want to read from it, so ti-paths.inc does:
>  
>  export CODEGEN_INSTALL_DIR_RECIPE    = "${installdir}/ti-cgt6x"
> -export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/${CODEGEN_INSTALL_DIR_RECIPE}"
> +export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${MACHINE_SYS}/${CODEGEN_INSTALL_DIR_RECIPE}"
>  
>  Which will point it to the machine specific staging like we want it to.
>  
> diff --git a/recipes/ti/ti-paths.inc b/recipes/ti/ti-paths.inc
> index 27400a1..de8893a 100644
> --- a/recipes/ti/ti-paths.inc
> +++ b/recipes/ti/ti-paths.inc
> @@ -22,23 +22,23 @@ export BIOSPSP_INSTALL_DIR_RECIPE    = "${installdir}/ti-biospsp-tree"
>  export AUDIO_SOC_INSTALL_DIR_RECIPE  = "${installdir}/ti-audio-soc-example-tree"
>  
>  # This is where the tools will end up in staging provided PACKAGE_ARCH = ${MACHINE_ARCH} is set
> -export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CODEGEN_INSTALL_DIR_RECIPE}"
> -export XDC_INSTALL_DIR        = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${XDC_INSTALL_DIR_RECIPE}"
> -export XDAIS_INSTALL_DIR      = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${XDAIS_INSTALL_DIR_RECIPE}"
> -export BIOS_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${BIOS_INSTALL_DIR_RECIPE}"
> -export SYSBIOS_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${SYSBIOS_INSTALL_DIR_RECIPE}"
> -export BIOSUTILS_INSTALL_DIR  = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${BIOSUTILS_INSTALL_DIR_RECIPE}"
> -export FC_INSTALL_DIR         = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${FC_INSTALL_DIR_RECIPE}"
> -export CE_INSTALL_DIR         = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CE_INSTALL_DIR_RECIPE}"
> -export EDMA3_LLD_INSTALL_DIR  = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${EDMA3_LLD_INSTALL_DIR_RECIPE}"
> -export LINUXUTILS_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${LINUXUTILS_INSTALL_DIR_RECIPE}"
> -export CMEM_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CMEM_INSTALL_DIR_RECIPE}"
> -export LINK_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${LINK_INSTALL_DIR_RECIPE}"
> -export LPM_INSTALL_DIR        = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${LPM_INSTALL_DIR_RECIPE}"
> -export DMAI_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${DMAI_INSTALL_DIR_RECIPE}"
> -export CODEC_INSTALL_DIR      = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CODEC_INSTALL_DIR_RECIPE}"
> -export DSPLIB_INSTALL_DIR     = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${DSPLIB_INSTALL_DIR_RECIPE}"
> -export BIOSPSP_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${BIOSPSP_INSTALL_DIR_RECIPE}"
> +export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CODEGEN_INSTALL_DIR_RECIPE}"
> +export XDC_INSTALL_DIR        = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${XDC_INSTALL_DIR_RECIPE}"
> +export XDAIS_INSTALL_DIR      = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${XDAIS_INSTALL_DIR_RECIPE}"
> +export BIOS_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${BIOS_INSTALL_DIR_RECIPE}"
> +export SYSBIOS_INSTALL_DIR    = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${SYSBIOS_INSTALL_DIR_RECIPE}"
> +export BIOSUTILS_INSTALL_DIR  = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${BIOSUTILS_INSTALL_DIR_RECIPE}"
> +export FC_INSTALL_DIR         = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${FC_INSTALL_DIR_RECIPE}"
> +export CE_INSTALL_DIR         = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CE_INSTALL_DIR_RECIPE}"
> +export EDMA3_LLD_INSTALL_DIR  = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${EDMA3_LLD_INSTALL_DIR_RECIPE}"
> +export LINUXUTILS_INSTALL_DIR = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${LINUXUTILS_INSTALL_DIR_RECIPE}"
> +export CMEM_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CMEM_INSTALL_DIR_RECIPE}"
> +export LINK_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${LINK_INSTALL_DIR_RECIPE}"
> +export LPM_INSTALL_DIR        = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${LPM_INSTALL_DIR_RECIPE}"
> +export DMAI_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${DMAI_INSTALL_DIR_RECIPE}"
> +export CODEC_INSTALL_DIR      = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CODEC_INSTALL_DIR_RECIPE}"
> +export DSPLIB_INSTALL_DIR     = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${DSPLIB_INSTALL_DIR_RECIPE}"
> +export BIOSPSP_INSTALL_DIR    = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${BIOSPSP_INSTALL_DIR_RECIPE}"
>  
>  DSPSUFFIX_omapl137 = "x674"
>  DSPSUFFIX_omapl138 = "x674"
> diff --git a/recipes/ti/ti-staging.inc b/recipes/ti/ti-staging.inc
> index 593f094..c32f01c 100644
> --- a/recipes/ti/ti-staging.inc
> +++ b/recipes/ti/ti-staging.inc
> @@ -1,10 +1,10 @@
>  PACKAGE_ARCH = "${MACHINE_ARCH}"
>  
>  # Allow staging into machine specific dir
> -BASEPKG_HOST_SYS = "${MULTIMACH_HOST_SYS}"
> +HOST_SYS = "${CURRENT_TARGET_SYS}"
>  
>  # Search archdir for shlibs instead of machine dir due to above BASEPKG_HOST_SYS
> -SHLIBSDIR = "${STAGING_DIR}/${BASE_PACKAGE_ARCH}${HOST_VENDOR}-${HOST_OS}/shlibs"
> +SHLIBSDIR = "${STAGING_DIR}/${HOST_SYS}/shlibs"
>  
>  PACKAGE_STRIP = "no"
>  
> diff --git a/recipes/xapian/xapian-bindings-python_1.0.14.bb b/recipes/xapian/xapian-bindings-python_1.0.14.bb
> index ae97779..6c24e2d 100644
> --- a/recipes/xapian/xapian-bindings-python_1.0.14.bb
> +++ b/recipes/xapian/xapian-bindings-python_1.0.14.bb
> @@ -18,7 +18,7 @@ EXTRA_OECONF = "--with-python --without-php --without-ruby --without-tcl \
>                  --without-csharp --without-java"
>  
>  do_configure () {
> -        BUILD_SYS=${BUILD_SYS} HOST_SYS=${MULTIMACH_HOST_SYS} \
> +        BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
>          autotools_do_configure
>  }
>  

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)

iD8DBQFMToNlMkyGM64RGpERAsFnAJ9+UXehtRlhzUMvFHpuokdGjyHgMQCfQWg3
wNICOn4mFRWBj/gSN2iI/nQ=
=SKRJ
-----END PGP SIGNATURE-----




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

* Re: [PATCH 8/8] recipes: Replace ${PN} override with pn-${PN} for PACKAGE_ARCH
  2010-07-27  6:48 ` [PATCH 8/8] recipes: Replace ${PN} override with pn-${PN} for PACKAGE_ARCH Khem Raj
  2010-07-27  6:55   ` Koen Kooi
@ 2010-07-27  7:32   ` Phil Blundell
  1 sibling, 0 replies; 17+ messages in thread
From: Phil Blundell @ 2010-07-27  7:32 UTC (permalink / raw)
  To: openembedded-devel

On Mon, 2010-07-26 at 23:48 -0700, Khem Raj wrote:
> --- a/recipes/freesmartphone/frameworkd_git.bb
> +++ b/recipes/freesmartphone/frameworkd_git.bb
> @@ -78,7 +78,7 @@ RRECOMMENDS_${PN} += "\
>  "
>  
>  PACKAGES =+ "${PN}-config"
> -PACKAGE_ARCH_${PN}-config = "${MACHINE_ARCH}"
> +PACKAGE_ARCH_pn-${PN}-config = "${MACHINE_ARCH}"

Surely this can't be what you mean?  That latter override is never going
to do anything useful (or at least, anything that couldn't be achieved
by assigning PACKAGE_ARCH directly).

p.





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

* Re: [PATCH 7/8] recipes: Replace usage of MULTIMACH_TARGET_SYS with CURRENT_TARGET_SYS
  2010-07-27  6:57   ` Koen Kooi
@ 2010-07-27  9:12     ` Khem Raj
  0 siblings, 0 replies; 17+ messages in thread
From: Khem Raj @ 2010-07-27  9:12 UTC (permalink / raw)
  To: openembedded-devel

On Mon, Jul 26, 2010 at 11:57 PM, Koen Kooi <k.kooi@student.utwente.nl> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Does this make the TI recipes live in the same sysroot dir as the
> kernel? Thas was the aim for this.

yes.

>
> On 27-07-10 08:48, Khem Raj wrote:
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>> ---
>>  recipes/gnuradio/gnuradio-libusb-compat.inc     |    2 +-
>>  recipes/gnuradio/gnuradio.inc                   |    2 +-
>>  recipes/opencv/opencv-dsp-acceleration_svn.bb   |    2 +-
>>  recipes/ti/README                               |    3 +-
>>  recipes/ti/ti-paths.inc                         |   34 +++++++++++-----------
>>  recipes/ti/ti-staging.inc                       |    4 +-
>>  recipes/xapian/xapian-bindings-python_1.0.14.bb |    2 +-
>>  7 files changed, 24 insertions(+), 25 deletions(-)
>>
>> diff --git a/recipes/gnuradio/gnuradio-libusb-compat.inc b/recipes/gnuradio/gnuradio-libusb-compat.inc
>> index efe2b88..aa4d41a 100644
>> --- a/recipes/gnuradio/gnuradio-libusb-compat.inc
>> +++ b/recipes/gnuradio/gnuradio-libusb-compat.inc
>> @@ -8,7 +8,7 @@ INC_PR = "r7"
>>  inherit distutils-base autotools autotools_stage pkgconfig
>>
>>  export BUILD_SYS
>> -export HOST_SYS=${MULTIMACH_TARGET_SYS}
>> +export HOST_SYS
>>
>>  CXXFLAGS_powerpc += "-lstdc++"
>>
>> diff --git a/recipes/gnuradio/gnuradio.inc b/recipes/gnuradio/gnuradio.inc
>> index 6eaf119..1a08930 100644
>> --- a/recipes/gnuradio/gnuradio.inc
>> +++ b/recipes/gnuradio/gnuradio.inc
>> @@ -8,7 +8,7 @@ INC_PR = "r7"
>>  inherit distutils-base autotools autotools_stage pkgconfig
>>
>>  export BUILD_SYS
>> -export HOST_SYS=${MULTIMACH_TARGET_SYS}
>> +export HOST_SYS
>>
>>  CXXFLAGS_powerpc += "-lstdc++"
>>
>> diff --git a/recipes/opencv/opencv-dsp-acceleration_svn.bb b/recipes/opencv/opencv-dsp-acceleration_svn.bb
>> index 788e8e2..1a2d7bb 100644
>> --- a/recipes/opencv/opencv-dsp-acceleration_svn.bb
>> +++ b/recipes/opencv/opencv-dsp-acceleration_svn.bb
>> @@ -22,7 +22,7 @@ export OPENCV_PATH = "${STAGING_INCDIR}"
>>  export DSPLIB_PATH = "${DSPLIB_INSTALL_DIR}"
>>
>>  # You need to extract the imglib from the .exe manually and place it in /OE/tmp (or somewhere else and change the patch below)
>> -export IMGLIB_PATH = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${installdir}/imglib_v201"
>> +export IMGLIB_PATH = "${STAGING_DIR}/${MACHINE_SYS}${installdir}/imglib_v201"
>>
>>  do_configure() {
>>       echo "-l ${DSPLIB_INSTALL_DIR}/dsplib64plus.lib" >> ${S}/beagle/server/opencv_unitserver_evm3530/link.cmd
>> diff --git a/recipes/ti/README b/recipes/ti/README
>> index 2fbb9f1..9a36f70 100644
>> --- a/recipes/ti/README
>> +++ b/recipes/ti/README
>> @@ -29,13 +29,12 @@ Since most of the recipes in this directory deal with a DSP (e.g OMAP3) or accel
>>  The complete unpacked trees are staged to staging/machine/usr/share/ti/${PN}(-tree) and all the _INSTALL_DIR vars will point to that. To make this work there is a ti-staging.inc which contains:
>>
>>  PACKAGE_ARCH = "${MACHINE_ARCH}"
>> -BASEPKG_HOST_SYS = "${MULTIMACH_HOST_SYS}"
>>  PACKAGE_STRIP = "no"
>>
>>  The 'BASEPKG_HOST_SYS' bit is what makes it work, but cause trouble is you want to read from it, so ti-paths.inc does:
>>
>>  export CODEGEN_INSTALL_DIR_RECIPE    = "${installdir}/ti-cgt6x"
>> -export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/${CODEGEN_INSTALL_DIR_RECIPE}"
>> +export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${MACHINE_SYS}/${CODEGEN_INSTALL_DIR_RECIPE}"
>>
>>  Which will point it to the machine specific staging like we want it to.
>>
>> diff --git a/recipes/ti/ti-paths.inc b/recipes/ti/ti-paths.inc
>> index 27400a1..de8893a 100644
>> --- a/recipes/ti/ti-paths.inc
>> +++ b/recipes/ti/ti-paths.inc
>> @@ -22,23 +22,23 @@ export BIOSPSP_INSTALL_DIR_RECIPE    = "${installdir}/ti-biospsp-tree"
>>  export AUDIO_SOC_INSTALL_DIR_RECIPE  = "${installdir}/ti-audio-soc-example-tree"
>>
>>  # This is where the tools will end up in staging provided PACKAGE_ARCH = ${MACHINE_ARCH} is set
>> -export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CODEGEN_INSTALL_DIR_RECIPE}"
>> -export XDC_INSTALL_DIR        = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${XDC_INSTALL_DIR_RECIPE}"
>> -export XDAIS_INSTALL_DIR      = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${XDAIS_INSTALL_DIR_RECIPE}"
>> -export BIOS_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${BIOS_INSTALL_DIR_RECIPE}"
>> -export SYSBIOS_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${SYSBIOS_INSTALL_DIR_RECIPE}"
>> -export BIOSUTILS_INSTALL_DIR  = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${BIOSUTILS_INSTALL_DIR_RECIPE}"
>> -export FC_INSTALL_DIR         = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${FC_INSTALL_DIR_RECIPE}"
>> -export CE_INSTALL_DIR         = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CE_INSTALL_DIR_RECIPE}"
>> -export EDMA3_LLD_INSTALL_DIR  = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${EDMA3_LLD_INSTALL_DIR_RECIPE}"
>> -export LINUXUTILS_INSTALL_DIR = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${LINUXUTILS_INSTALL_DIR_RECIPE}"
>> -export CMEM_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CMEM_INSTALL_DIR_RECIPE}"
>> -export LINK_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${LINK_INSTALL_DIR_RECIPE}"
>> -export LPM_INSTALL_DIR        = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${LPM_INSTALL_DIR_RECIPE}"
>> -export DMAI_INSTALL_DIR       = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${DMAI_INSTALL_DIR_RECIPE}"
>> -export CODEC_INSTALL_DIR      = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${CODEC_INSTALL_DIR_RECIPE}"
>> -export DSPLIB_INSTALL_DIR     = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${DSPLIB_INSTALL_DIR_RECIPE}"
>> -export BIOSPSP_INSTALL_DIR    = "${STAGING_DIR}/${MULTIMACH_TARGET_SYS}${BIOSPSP_INSTALL_DIR_RECIPE}"
>> +export CODEGEN_INSTALL_DIR    = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CODEGEN_INSTALL_DIR_RECIPE}"
>> +export XDC_INSTALL_DIR        = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${XDC_INSTALL_DIR_RECIPE}"
>> +export XDAIS_INSTALL_DIR      = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${XDAIS_INSTALL_DIR_RECIPE}"
>> +export BIOS_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${BIOS_INSTALL_DIR_RECIPE}"
>> +export SYSBIOS_INSTALL_DIR    = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${SYSBIOS_INSTALL_DIR_RECIPE}"
>> +export BIOSUTILS_INSTALL_DIR  = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${BIOSUTILS_INSTALL_DIR_RECIPE}"
>> +export FC_INSTALL_DIR         = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${FC_INSTALL_DIR_RECIPE}"
>> +export CE_INSTALL_DIR         = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CE_INSTALL_DIR_RECIPE}"
>> +export EDMA3_LLD_INSTALL_DIR  = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${EDMA3_LLD_INSTALL_DIR_RECIPE}"
>> +export LINUXUTILS_INSTALL_DIR = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${LINUXUTILS_INSTALL_DIR_RECIPE}"
>> +export CMEM_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CMEM_INSTALL_DIR_RECIPE}"
>> +export LINK_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${LINK_INSTALL_DIR_RECIPE}"
>> +export LPM_INSTALL_DIR        = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${LPM_INSTALL_DIR_RECIPE}"
>> +export DMAI_INSTALL_DIR       = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${DMAI_INSTALL_DIR_RECIPE}"
>> +export CODEC_INSTALL_DIR      = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${CODEC_INSTALL_DIR_RECIPE}"
>> +export DSPLIB_INSTALL_DIR     = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${DSPLIB_INSTALL_DIR_RECIPE}"
>> +export BIOSPSP_INSTALL_DIR    = "${STAGING_DIR}/${CURRENT_TARGET_SYS}${BIOSPSP_INSTALL_DIR_RECIPE}"
>>
>>  DSPSUFFIX_omapl137 = "x674"
>>  DSPSUFFIX_omapl138 = "x674"
>> diff --git a/recipes/ti/ti-staging.inc b/recipes/ti/ti-staging.inc
>> index 593f094..c32f01c 100644
>> --- a/recipes/ti/ti-staging.inc
>> +++ b/recipes/ti/ti-staging.inc
>> @@ -1,10 +1,10 @@
>>  PACKAGE_ARCH = "${MACHINE_ARCH}"
>>
>>  # Allow staging into machine specific dir
>> -BASEPKG_HOST_SYS = "${MULTIMACH_HOST_SYS}"
>> +HOST_SYS = "${CURRENT_TARGET_SYS}"
>>
>>  # Search archdir for shlibs instead of machine dir due to above BASEPKG_HOST_SYS
>> -SHLIBSDIR = "${STAGING_DIR}/${BASE_PACKAGE_ARCH}${HOST_VENDOR}-${HOST_OS}/shlibs"
>> +SHLIBSDIR = "${STAGING_DIR}/${HOST_SYS}/shlibs"
>>
>>  PACKAGE_STRIP = "no"
>>
>> diff --git a/recipes/xapian/xapian-bindings-python_1.0.14.bb b/recipes/xapian/xapian-bindings-python_1.0.14.bb
>> index ae97779..6c24e2d 100644
>> --- a/recipes/xapian/xapian-bindings-python_1.0.14.bb
>> +++ b/recipes/xapian/xapian-bindings-python_1.0.14.bb
>> @@ -18,7 +18,7 @@ EXTRA_OECONF = "--with-python --without-php --without-ruby --without-tcl \
>>                  --without-csharp --without-java"
>>
>>  do_configure () {
>> -        BUILD_SYS=${BUILD_SYS} HOST_SYS=${MULTIMACH_HOST_SYS} \
>> +        BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
>>          autotools_do_configure
>>  }
>>
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.5 (Darwin)
>
> iD8DBQFMToNlMkyGM64RGpERAsFnAJ9+UXehtRlhzUMvFHpuokdGjyHgMQCfQWg3
> wNICOn4mFRWBj/gSN2iI/nQ=
> =SKRJ
> -----END PGP SIGNATURE-----
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>



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

* Re: [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again)
  2010-07-27  6:48 [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Khem Raj
                   ` (7 preceding siblings ...)
  2010-07-27  6:48 ` [PATCH 8/8] recipes: Replace ${PN} override with pn-${PN} for PACKAGE_ARCH Khem Raj
@ 2010-07-28  7:07 ` Koen Kooi
  2010-07-28 17:25   ` Khem Raj
  2010-07-29 17:44 ` Koen Kooi
  9 siblings, 1 reply; 17+ messages in thread
From: Koen Kooi @ 2010-07-28  7:07 UTC (permalink / raw)
  To: openembedded-devel

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 27-07-10 08:48, Khem Raj wrote:
> Hi
> 
> Following series of patches are for making multi-machine toolchains co-exist with
> new cross staging for toolchain.
> 
> It changes the toolchain triplet from ${TARGET_ARCH}-${VENDOR}-${OS} to 
> ${TARGET_ARCH}-${CPU_SUB_TARGET}_${VENDOR}-OS
> 
> which means that a toolchain for armv7 is called arm-v7a_oe-linux-gnueabi-*
> and for armv5te its called arm-v5te_oe-linux-gnueabi-*
> 
> They can coexist in same native sysroot. The symlinks would mean that
> gcc will not accidently mix the assemblers or linkers.
> 
> MULTIMACH-* is not needed anymore as the TARGET_SYS is distinct enough
> to serve same purpose.
> 
> I have booted a minimal-image on qemuarm qemuppc and qemumips successfully. The build for 
> beagleboard native-sdk-image completed too.

I tried v3 and it's close, but when building gstreamer-ti:

| checking host system type... Invalid configuration
`beagleboard-angstrom-linux-gnueabi': machine `beagleboard-angstrom' not
recognized

Any idea how I can have it stage in the machine sysroot but not get a
weird TARGET_PREFIX?

regards,

Koen
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)

iD8DBQFMT9csMkyGM64RGpERAgufAJ0aKRM+G56NH8Vf8fej71ELTVKq/ACfWGNU
gCqhPDOE0Pzfz0eiwKyt2Vw=
=0j2v
-----END PGP SIGNATURE-----




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

* Re: [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again)
  2010-07-28  7:07 ` [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Koen Kooi
@ 2010-07-28 17:25   ` Khem Raj
  0 siblings, 0 replies; 17+ messages in thread
From: Khem Raj @ 2010-07-28 17:25 UTC (permalink / raw)
  To: openembedded-devel

On Wed, Jul 28, 2010 at 12:07 AM, Koen Kooi <k.kooi@student.utwente.nl> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 27-07-10 08:48, Khem Raj wrote:
>> Hi
>>
>> Following series of patches are for making multi-machine toolchains co-exist with
>> new cross staging for toolchain.
>>
>> It changes the toolchain triplet from ${TARGET_ARCH}-${VENDOR}-${OS} to
>> ${TARGET_ARCH}-${CPU_SUB_TARGET}_${VENDOR}-OS
>>
>> which means that a toolchain for armv7 is called arm-v7a_oe-linux-gnueabi-*
>> and for armv5te its called arm-v5te_oe-linux-gnueabi-*
>>
>> They can coexist in same native sysroot. The symlinks would mean that
>> gcc will not accidently mix the assemblers or linkers.
>>
>> MULTIMACH-* is not needed anymore as the TARGET_SYS is distinct enough
>> to serve same purpose.
>>
>> I have booted a minimal-image on qemuarm qemuppc and qemumips successfully. The build for
>> beagleboard native-sdk-image completed too.
>
> I tried v3 and it's close, but when building gstreamer-ti:
>
> | checking host system type... Invalid configuration
> `beagleboard-angstrom-linux-gnueabi': machine `beagleboard-angstrom' not
> recognized
>
> Any idea how I can have it stage in the machine sysroot but not get a
> weird TARGET_PREFIX?

I will try to see whats going on.

>
> regards,
>
> Koen
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.5 (Darwin)
>
> iD8DBQFMT9csMkyGM64RGpERAgufAJ0aKRM+G56NH8Vf8fej71ELTVKq/ACfWGNU
> gCqhPDOE0Pzfz0eiwKyt2Vw=
> =0j2v
> -----END PGP SIGNATURE-----
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>



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

* Re: [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again)
  2010-07-27  6:48 [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Khem Raj
                   ` (8 preceding siblings ...)
  2010-07-28  7:07 ` [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Koen Kooi
@ 2010-07-29 17:44 ` Koen Kooi
  2010-07-29 17:53   ` Khem Raj
  9 siblings, 1 reply; 17+ messages in thread
From: Koen Kooi @ 2010-07-29 17:44 UTC (permalink / raw)
  To: openembedded-devel

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 27-07-10 08:48, Khem Raj wrote:
> Hi
> 
> Following series of patches are for making multi-machine toolchains co-exist with
> new cross staging for toolchain.
> 
> It changes the toolchain triplet from ${TARGET_ARCH}-${VENDOR}-${OS} to 
> ${TARGET_ARCH}-${CPU_SUB_TARGET}_${VENDOR}-OS
> 
> which means that a toolchain for armv7 is called arm-v7a_oe-linux-gnueabi-*
> and for armv5te its called arm-v5te_oe-linux-gnueabi-*
> 
> They can coexist in same native sysroot. The symlinks would mean that
> gcc will not accidently mix the assemblers or linkers.
> 
> MULTIMACH-* is not needed anymore as the TARGET_SYS is distinct enough
> to serve same purpose.
> 
> I have booted a minimal-image on qemuarm qemuppc and qemumips successfully. The build for 
> beagleboard native-sdk-image completed too.

So what's the status on this? The problem is still present in .dev, this
patchset introduces other problems and Phil & Richard want to take a
different approach.
Were do we go from here? I'd love to help out if I knew which approach
is the right one. I'm not fond of abusing TARGET_VENDOR, but if the
consensus is that's the way forward, so be it.

regards,

Koen
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)

iD8DBQFMUb31MkyGM64RGpERAtchAKCiNdy7Nbts/5fxA/wrUbrwZgpZRQCfcCcf
kcCkAByszubSkNi1H/ExBnU=
=UFfn
-----END PGP SIGNATURE-----




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

* Re: [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again)
  2010-07-29 17:44 ` Koen Kooi
@ 2010-07-29 17:53   ` Khem Raj
  0 siblings, 0 replies; 17+ messages in thread
From: Khem Raj @ 2010-07-29 17:53 UTC (permalink / raw)
  To: openembedded-devel

On Thu, Jul 29, 2010 at 10:44 AM, Koen Kooi <k.kooi@student.utwente.nl> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 27-07-10 08:48, Khem Raj wrote:
>> Hi
>>
>> Following series of patches are for making multi-machine toolchains co-exist with
>> new cross staging for toolchain.
>>
>> It changes the toolchain triplet from ${TARGET_ARCH}-${VENDOR}-${OS} to
>> ${TARGET_ARCH}-${CPU_SUB_TARGET}_${VENDOR}-OS
>>
>> which means that a toolchain for armv7 is called arm-v7a_oe-linux-gnueabi-*
>> and for armv5te its called arm-v5te_oe-linux-gnueabi-*
>>
>> They can coexist in same native sysroot. The symlinks would mean that
>> gcc will not accidently mix the assemblers or linkers.
>>
>> MULTIMACH-* is not needed anymore as the TARGET_SYS is distinct enough
>> to serve same purpose.
>>
>> I have booted a minimal-image on qemuarm qemuppc and qemumips successfully. The build for
>> beagleboard native-sdk-image completed too.
>
> So what's the status on this? The problem is still present in .dev, this
> patchset introduces other problems and Phil & Richard want to take a
> different approach.
> Were do we go from here? I'd love to help out if I knew which approach
> is the right one. I'm not fond of abusing TARGET_VENDOR, but if the
> consensus is that's the way forward, so be it.

Yes I am not pursuing it as it does not seem to be a popular approach.
We could walk the remaining issues but we have to agree on it and then
fix the fallouts.

>
> regards,
>
> Koen
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.5 (Darwin)
>
> iD8DBQFMUb31MkyGM64RGpERAtchAKCiNdy7Nbts/5fxA/wrUbrwZgpZRQCfcCcf
> kcCkAByszubSkNi1H/ExBnU=
> =UFfn
> -----END PGP SIGNATURE-----
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>



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

end of thread, other threads:[~2010-07-29 17:53 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-27  6:48 [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Khem Raj
2010-07-27  6:48 ` [PATCH 1/8] bitbake.conf: Define HOST_SYS and TARGET_SYS based on target sub-arch Khem Raj
2010-07-27  6:48 ` [PATCH 2/8] binutils-cross.inc, binutils.inc: Overhaul for new cross dir structure Khem Raj
2010-07-27  6:48 ` [PATCH 3/8] gcc-cross: Use EXTRA_OECONF_PATHS in initial and intermediate recipes Khem Raj
2010-07-27  6:48 ` [PATCH 4/8] sdk.bbclass: override BASEPKG_HOST_SYS as it is used to make TARGET_SYS Khem Raj
2010-07-27  6:48 ` [PATCH 5/8] machines: Add new variable TARGET_SUB_ARCH Khem Raj
2010-07-27  6:48 ` [PATCH 6/8] classes, bitbake.conf: Add MACHINE_SYS and CURRENT_TARGET_SYS Khem Raj
2010-07-27  6:48 ` [PATCH 7/8] recipes: Replace usage of MULTIMACH_TARGET_SYS with CURRENT_TARGET_SYS Khem Raj
2010-07-27  6:57   ` Koen Kooi
2010-07-27  9:12     ` Khem Raj
2010-07-27  6:48 ` [PATCH 8/8] recipes: Replace ${PN} override with pn-${PN} for PACKAGE_ARCH Khem Raj
2010-07-27  6:55   ` Koen Kooi
2010-07-27  7:32   ` Phil Blundell
2010-07-28  7:07 ` [PATCH 0/8][v3] Make multi-machine toolchains to co-exist (revised again) Koen Kooi
2010-07-28 17:25   ` Khem Raj
2010-07-29 17:44 ` Koen Kooi
2010-07-29 17:53   ` Khem Raj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.