summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Lock <josh@linux.intel.com>2010-04-29 13:34:05 +0100
committerJoshua Lock <josh@linux.intel.com>2010-04-30 16:25:41 +0100
commitfbe3d41eb0c75500d8f16bfd2975cd3136ef1335 (patch)
treec41c015c7b439928b96a5025173e71c84ff46c6f
parent69d788ad5eecf5cb0e28f8283364cce9753a8a58 (diff)
downloadopenembedded-core-fbe3d41eb0c75500d8f16bfd2975cd3136ef1335.tar.gz
openembedded-core-fbe3d41eb0c75500d8f16bfd2975cd3136ef1335.tar.bz2
openembedded-core-fbe3d41eb0c75500d8f16bfd2975cd3136ef1335.zip
Version the build configuration directory
The addition of BBLAYERS changes the build/conf directory to be incompatible with the "old way" in the Purple release. As such things are likely to occur in future we should bersion the build/conf directory through local.conf Signed-off-by: Joshua Lock <josh@linux.intel.com>
-rw-r--r--build/conf/local.conf.sample3
-rw-r--r--meta/classes/sanity.bbclass7
-rw-r--r--meta/conf/sanity.conf2
3 files changed, 12 insertions, 0 deletions
diff --git a/build/conf/local.conf.sample b/build/conf/local.conf.sample
index 959a3b9a3e..6285821d52 100644
--- a/build/conf/local.conf.sample
+++ b/build/conf/local.conf.sample
@@ -1,3 +1,6 @@
+# CONF_VERSION is increased each time build/conf/ changes incompatibly
+CONF_VERSION = "1"
+
# Where to cache the files Poky downloads
DL_DIR ?= "${OEROOT}/sources"
# Where to cache Poky's built staging output
diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
index 364a4e4af9..208f65ff5a 100644
--- a/meta/classes/sanity.bbclass
+++ b/meta/classes/sanity.bbclass
@@ -54,6 +54,13 @@ def check_sanity(e):
if data.getVar('TARGET_OS', e.data, True) == 'INVALID':
messages = messages + 'Please set TARGET_OS directly, or choose a MACHINE or DISTRO that does so.\n'
+ # Check we are using a valid conf setup
+ current_conf = data.getVar('CONF_VERSION', e.data, True)
+ conf_version = data.getVar('POKY_CONF_VERSION', e.data, True)
+
+ if current_conf != conf_version:
+ messages = messages + "Poky has noticed your version of local.conf was generated from an older version of local.conf.sample and there have been updates made to this file. Please compare the two files and merge any changes before continuing.\nMatching the version numbers will remove this message.\n\"meld conf/local.conf conf/local.conf.sample\" is a good way to visualise the changes")
+
assume_provided = data.getVar('ASSUME_PROVIDED', e.data , True).split()
# Check user doesn't have ASSUME_PROVIDED = instead of += in local.conf
if "diffstat-native" not in assume_provided:
diff --git a/meta/conf/sanity.conf b/meta/conf/sanity.conf
index 7cc348ec94..c9d77794cf 100644
--- a/meta/conf/sanity.conf
+++ b/meta/conf/sanity.conf
@@ -7,5 +7,7 @@ BB_MIN_VERSION = "1.8.10"
SANITY_ABIFILE = "${TMPDIR}/abi_version"
+POKY_CONF_VERSION = "1"
+
INHERIT += "sanity"