summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2012-06-18 16:50:50 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-06-21 12:37:23 +0100
commit9bf6b60e1599cf5dd87089d42584583cdfd6807a (patch)
tree5b269ffdc63863c9a86475660b4ecc4d247d298c
parentc09bf5d177a7ecd2045ef7e13fff4528137a9775 (diff)
downloadopenembedded-core-9bf6b60e1599cf5dd87089d42584583cdfd6807a.tar.gz
openembedded-core-9bf6b60e1599cf5dd87089d42584583cdfd6807a.tar.bz2
openembedded-core-9bf6b60e1599cf5dd87089d42584583cdfd6807a.zip
classes/cml1: ensure -c menuconfig forces a rebuild next time
Ensure the following results in the kernel being rebuilt, repackaged and re-deployed in the final step: bitbake virtual/kernel bitbake -c menuconfig virtual/kernel [ make changes to the kernel configuration and save ] bitbake virtual/kernel If there are no changes to the configuration saved, the rebuild will not be triggered. Note that this relies on a function recently added to BitBake and requires full hashing (i.e. BB_SIGNATURE_HANDLER must be set to a signature handler that inherits from BasicHash) - if this is not the case or the function is not available in the version of BitBake being used this change will do nothing. Fixes [YOCTO #2256]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
-rw-r--r--meta/classes/cml1.bbclass16
1 files changed, 16 insertions, 0 deletions
diff --git a/meta/classes/cml1.bbclass b/meta/classes/cml1.bbclass
index bd253117aa..fd80c18697 100644
--- a/meta/classes/cml1.bbclass
+++ b/meta/classes/cml1.bbclass
@@ -15,7 +15,23 @@ HOSTLDFLAGS = "${BUILD_LDFLAGS}"
HOST_LOADLIBES = "-lncurses"
python do_menuconfig() {
+ try:
+ mtime = os.path.getmtime(".config")
+ except OSError:
+ mtime = 0
+
oe_terminal("${SHELL} -c \"make menuconfig; echo 'Pausing for 5 seconds'; sleep 5\"", '${PN} Configuration', d)
+
+ # FIXME this check can be removed when the minimum bitbake version has been bumped
+ if hasattr(bb.build, 'write_taint'):
+ try:
+ newmtime = os.path.getmtime(".config")
+ except OSError:
+ newmtime = 0
+
+ if newmtime > mtime:
+ bb.note("Configuration changed, recompile will be forced")
+ bb.build.write_taint('do_compile', d)
}
do_menuconfig[depends] += "ncurses-native:do_populate_sysroot"
do_menuconfig[nostamp] = "1"