Change multimachine to a bbclass and update distro configurations. Add multimachine functionlity to cope with packages with machine specific sub packages. Also applied to OE

git-svn-id: https://svn.o-hand.com/repos/poky/trunk@450 311d38ba-8fff-0310-9ca6-ca027cbcb966
This commit is contained in:
Richard Purdie 2006-05-28 21:58:59 +00:00
parent c74733f58c
commit 439db2032c
7 changed files with 26 additions and 14 deletions

View File

@ -57,5 +57,4 @@ BBINCLUDELOGS = "yes"
# a cvs:// URI. Uncomment this, if you not want to pull directly from CVS.
CVS_TARBALL_STASH = "http://www.oesources.org/source/current/"
include conf/distro/include/multimachine.conf
ENABLE_BINARY_LOCALE_GENERATION = "1"

View File

@ -0,0 +1,22 @@
STAMP = "${TMPDIR}/stamps/${MULTIMACH_ARCH}-${HOST_OS}/${PF}"
WORKDIR = "${TMPDIR}/work/${MULTIMACH_ARCH}-${HOST_OS}/${PF}"
STAGING_KERNEL_DIR = "${STAGING_DIR}/${MULTIMACH_ARCH}-${HOST_OS}/kernel"
# Find any machine specific sub packages and if present, mark the
# whole package as machine specific for multimachine purposes.
python __anonymous () {
packages = bb.data.getVar('PACKAGES', d, 1).split()
macharch = bb.data.getVar('MACHINE_ARCH', d, 1)
multiarch = bb.data.getVar('PACKAGE_ARCH', d, 1)
for pkg in packages:
pkgarch = bb.data.getVar("PACKAGE_ARCH_%s" % pkg, d, 1)
# We could look for != PACKAGE_ARCH here but how to choose
# if multiple differences are present?
# Look through IPKG_ARCHS for the priority order?
if pkgarch and pkgarch == macharch:
multiarch = macharch
bb.data.setVar('MULTIMACH_ARCH', multiarch, d)
}

View File

@ -12,10 +12,8 @@ ANGSTROM_URI = "http://www.angstrom-distribution.org/"
MAINTAINER = "Angstrom Developers <angstrom-dev@handhelds.org>"
#use ipkg package format with debian style naming
INHERIT += "package_ipk debian"
#use multimachine buildrules
include conf/distro/include/multimachine.conf
INHERIT += "package_ipk debian multimachine"
#Generate locales on the buildsystem instead of on the target. Speeds up first boot, set to "1" to enable
PREFERRED_PROVIDER_qemu-native = "qemu-qop-nogfx-native"

View File

@ -4,7 +4,7 @@
MAINTAINER ?= "Familiar Developers <familiar-dev@handhelds.org>"
INHERIT += "package_ipk debian"
INHERIT += "package_ipk debian multimachine"
TARGET_OS = "linux"
BOOTSTRAP_EXTRA_RDEPENDS += "familiar-version"
@ -15,5 +15,3 @@ PARALLEL_INSTALL_MODULES = "1"
UDEV_DEVFS_RULES = "1"
DISTRO_CHECK := "${@bb.data.getVar("DISTRO_VERSION",d,1) or bb.fatal('Remove this line or set a dummy DISTRO_VERSION if you really want to build an unversioned distro')}"
include conf/distro/include/multimachine.conf

View File

@ -1,3 +0,0 @@
STAMP = "${TMPDIR}/stamps/${PACKAGE_ARCH}-${HOST_OS}/${PF}"
WORKDIR = "${TMPDIR}/work/${PACKAGE_ARCH}-${HOST_OS}/${PF}"
STAGING_KERNEL_DIR = "${STAGING_DIR}/${PACKAGE_ARCH}-${HOST_OS}/kernel"

View File

@ -5,7 +5,7 @@
DISTRO = "openzaurus"
DISTRO_NAME = "OpenZaurus"
INHERIT += " package_ipk debian"
INHERIT += " package_ipk debian multimachine"
# For some reason, this doesn't work
# TARGET_OS ?= "linux"
TARGET_OS = "linux"
@ -16,5 +16,3 @@ BOOTSTRAP_EXTRA_RDEPENDS += "openzaurus-version"
PARALLEL_INSTALL_MODULES = "1"
DISTRO_CHECK := "${@bb.data.getVar("DISTRO_VERSION",d,1) or bb.fatal('Remove this line or set a dummy DISTRO_VERSION if you really want to build an unversioned distro')}"
include conf/distro/include/multimachine.conf

View File

@ -10,7 +10,7 @@ DISTRO_TYPE = "debug"
# DISTRO_TYPE = "release"
INHERIT += " package_ipk debian"
INHERIT += " package_ipk debian multimachine"
# For some reason, this doesn't work
# TARGET_OS ?= "linux"
TARGET_OS = "linux"