From: Paul Eggleton Date: Thu, 11 Aug 2016 04:44:58 +0000 (+1200) Subject: gen-lockedsig-cache: ensure symlinks are dereferenced X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~24686 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d65a6ee9e7a9c63b9a16bdb5025af8a7c6433c4f;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git gen-lockedsig-cache: ensure symlinks are dereferenced If you set up a local mirror in SSTATE_MIRRORS then you can end up with symlinks in SSTATE_DIR rather than real files. We don't want these symlinks in the sstate-cache prodcued by gen-lockedsig-cache, so dereference any symlinks before copying. Signed-off-by: Paul Eggleton Signed-off-by: Ross Burton --- diff --git a/scripts/gen-lockedsig-cache b/scripts/gen-lockedsig-cache index de8a20c7877..49de74ed9b2 100755 --- a/scripts/gen-lockedsig-cache +++ b/scripts/gen-lockedsig-cache @@ -57,13 +57,14 @@ for f in files: destdir = os.path.dirname(dst) mkdir(destdir) + src = os.path.realpath(f) if os.path.exists(dst): os.remove(dst) - if (os.stat(f).st_dev == os.stat(destdir).st_dev): + if (os.stat(src).st_dev == os.stat(destdir).st_dev): print('linking') - os.link(f, dst) + os.link(src, dst) else: print('copying') - shutil.copyfile(f, dst) + shutil.copyfile(src, dst) print('Done!')