diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2012-06-18 16:50:50 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-06-21 12:37:23 +0100 |
commit | 9bf6b60e1599cf5dd87089d42584583cdfd6807a (patch) | |
tree | 5b269ffdc63863c9a86475660b4ecc4d247d298c | |
parent | c09bf5d177a7ecd2045ef7e13fff4528137a9775 (diff) | |
download | openembedded-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.bbclass | 16 |
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" |