summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-09-29 11:19:22 +0100
committerRichard Purdie <rpurdie@linux.intel.com>2010-09-29 12:12:26 +0100
commit97dec8410b071660937fa1f30827a2926c21cca2 (patch)
treee5a6b134ce025bebed4dc32f32fbd11dcd3f8e25
parentdd28a9c516017cf34c88d491875a61dfaf502d4c (diff)
downloadopenembedded-core-contrib-97dec8410b071660937fa1f30827a2926c21cca2.tar.gz
sstate.bbclass: Update to use SSTATE variables everywhere and remove the now unneeded complicated paths from the sstate files
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
-rw-r--r--meta/classes/sanity.bbclass7
-rw-r--r--meta/classes/sstate.bbclass20
-rw-r--r--meta/conf/abi_version.conf2
-rw-r--r--meta/conf/bitbake.conf2
-rw-r--r--meta/conf/local.conf.sample6
5 files changed, 19 insertions, 18 deletions
diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
index 15faa7e431..ef1020b215 100644
--- a/meta/classes/sanity.bbclass
+++ b/meta/classes/sanity.bbclass
@@ -189,8 +189,13 @@ def check_sanity(e):
f = file(abifile, "w")
f.write(current_abi)
- elif abi == "5" and current_abi != "5":
+ elif abi == "4":
messages = messages + "Staging layout has changed. The cross directory has been deprecated and cross packages are now built under the native sysroot.\nThis requires a rebuild.\n"
+ elif abi == "5" and current_abi == "6":
+ bb.note("Converting staging layout from version 5 to layout version 6")
+ os.system(bb.data.expand("mv ${TMPDIR}/pstagelogs ${TMPDIR}/sstate-control", e.data))
+ f = file(abifile, "w")
+ f.write(current_abi)
elif (abi != current_abi):
# Code to convert from one ABI to another could go here if possible.
messages = messages + "Error, TMPDIR has changed ABI (%s to %s) and you need to either rebuild, revert or adjust it at your own risk.\n" % (abi, current_abi)
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index d4e9965369..d405aaa752 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -1,15 +1,11 @@
-SSTATE_MANIFESTS = "${TMPDIR}/pstagelogs"
-SSTATE_MANFILEPREFIX = "${SSTATE_MANIFESTS}/manifest-${SSTATE_PKGARCH}-${PN}"
+SSTATE_VERSION = "1"
+SSTATE_MANIFESTS = "${TMPDIR}/sstate-control"
+SSTATE_MANFILEPREFIX = "${SSTATE_MANIFESTS}/manifest-${SSTATE_PKGARCH}-${PN}"
SSTATE_PKGARCH = "${BASE_PACKAGE_ARCH}"
-SSTATE_PKGVERSION = "${PV}-${PR}"
-SSTATE_PKGPN = "${@bb.data.expand('staging-${PN}-${MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}', d).replace('_', '-')}"
-
-SSTATE_PKGNAME = "${SSTATE_PKGPN}_${SSTATE_PKGVERSION}_${SSTATE_PKGARCH}"
-SSTATE_EXTRAPATH ?= ""
-SSTATE_PKGPATH = "${DISTRO}/${OELAYOUT_ABI}${SSTATE_EXTRAPATH}"
-SSTATE_PKG = "${PSTAGE_DIR}2/${SSTATE_PKGPATH}/${SSTATE_PKGNAME}"
+SSTATE_PKGNAME = "sstate-${PN}-${MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}-${PV}-${PR}-${SSTATE_PKGARCH}-${SSTATE_VERSION}"
+SSTATE_PKG = "${SSTATE_DIR}/${SSTATE_PKGNAME}"
SSTATE_SCAN_CMD ?= "find ${SSTATE_BUILDDIR} \( -name "*.la" -o -name "*-config" \) -type f"
@@ -249,11 +245,11 @@ def pstaging_fetch(sstatepkg, d):
import bb.fetch
# only try and fetch if the user has configured a mirror
- if bb.data.getVar('PSTAGE_MIRROR', d) != "":
+ if bb.data.getVar('SSTATE_MIRROR', d) != "":
# Copy the data object and override DL_DIR and SRC_URI
pd = d.createCopy()
- dldir = bb.data.expand("${PSTAGE_DIR}/${SSTATE_PKGPATH}", pd)
- mirror = bb.data.expand("${PSTAGE_MIRROR}/${SSTATE_PKGPATH}/", pd)
+ dldir = bb.data.expand("${SSTATE_DIR}", pd)
+ mirror = bb.data.expand("${SSTATE_MIRROR}/", pd)
srcuri = mirror + os.path.basename(sstatepkg)
bb.data.setVar('DL_DIR', dldir, pd)
bb.data.setVar('SRC_URI', srcuri, pd)
diff --git a/meta/conf/abi_version.conf b/meta/conf/abi_version.conf
index e679aaa9c3..3920766a47 100644
--- a/meta/conf/abi_version.conf
+++ b/meta/conf/abi_version.conf
@@ -4,4 +4,4 @@
# that breaks the format and have been previously discussed on the mailing list
# with general agreement from the core team.
#
-OELAYOUT_ABI = "5"
+OELAYOUT_ABI = "6"
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index e2c160685c..c2a2119678 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -650,7 +650,7 @@ require conf/abi_version.conf
##################################################################
DL_DIR ?= "${TOPDIR}/downloads"
-PSTAGE_DIR ?= "${TOPDIR}/pstage"
+SSTATE_DIR ?= "${TOPDIR}/sstate-cache"
IMAGE_FSTYPES ?= "tar.gz"
PCMCIA_MANAGER ?= "pcmcia-cs"
DEFAULT_TASK_PROVIDER ?= "task-base"
diff --git a/meta/conf/local.conf.sample b/meta/conf/local.conf.sample
index 8ccdd138cb..fa5e3f183f 100644
--- a/meta/conf/local.conf.sample
+++ b/meta/conf/local.conf.sample
@@ -5,8 +5,8 @@ CONF_VERSION = "1"
# location, default it ${TOPDIR}/downloads
#DL_DIR ?= "${TOPDIR}/downloads"
# Uncomment and change to cache Poky's built staging output in an alternative
-# location, default ${TOPDIR}/pstage
-#PSTAGE_DIR ?= "${TOPDIR}/pstage"
+# location, default ${TOPDIR}/sstate-cache
+#SSTATE_DIR ?= "${TOPDIR}/sstate-cache"
# Uncomment and set to allow bitbake to execute multiple tasks at once.
# For a quadcore, BB_NUMBER_THREADS = "4", PARALLEL_MAKE = "-j 4" would
@@ -142,7 +142,7 @@ ENABLE_BINARY_LOCALE_GENERATION = "1"
# Poky can try and fetch packaged-staging packages from a http, https or ftp
# mirror. Set this variable to the root of a pstage directory on a server.
-#PSTAGE_MIRROR ?= "http://someserver.tld/share/pstage"
+#SSTATE_MIRROR ?= "http://someserver.tld/share/pstage"
# Set IMAGETEST to qemu if you want to build testcases and start
# testing in qemu after do_rootfs.