summaryrefslogtreecommitdiff
path: root/meta/classes/sstate.bbclass
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2014-09-03 23:12:06 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-09-29 12:11:49 +0100
commitbbee747466a6947319cff2ffd676abf9432c16ae (patch)
treedcd3f62bb00759d6a27f84b337f14bcc93d5cd17 /meta/classes/sstate.bbclass
parentdc274b6325cfc6b78d51c97445b1af445ccfed93 (diff)
downloadopenembedded-core-bbee747466a6947319cff2ffd676abf9432c16ae.tar.gz
openembedded-core-bbee747466a6947319cff2ffd676abf9432c16ae.tar.bz2
openembedded-core-bbee747466a6947319cff2ffd676abf9432c16ae.zip
sstate.bbclass: update the timestamps after install
Update the sstate file's timestamps after it is installed, it will be very useful for removing the old sstate file, especially, it's not easy to remove when use the shared SSTATE_DIR, we can easily remove them with this change, for example: $ find state-cache -type f -ctime +10 -exec rm -f {} \; Will remove the sstate file which isn't used by recent 10 days. We can use the -atime, but it is not always available, for example, when mounted with "-o noatime". The touch is a very light weight action, and the scripts/sstate-cache-management.sh also requires this. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Diffstat (limited to 'meta/classes/sstate.bbclass')
-rw-r--r--meta/classes/sstate.bbclass2
1 files changed, 2 insertions, 0 deletions
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index 72ac882dbb..9160e7f6da 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -624,6 +624,8 @@ sstate_unpack_package () {
mkdir -p ${SSTATE_INSTDIR}
cd ${SSTATE_INSTDIR}
tar -xmvzf ${SSTATE_PKG}
+ # Use "! -w ||" to return true for read only files
+ [ ! -w ${SSTATE_PKG} ] || touch --no-dereference ${SSTATE_PKG}
}
BB_HASHCHECK_FUNCTION = "sstate_checkhashes"