* it's not very universal, but works with default oe-core setup and shows basic HOW-TO. It can be improved later.
Signed-off-by: Martin Jansa <[email protected]> --- V2: added .pyo to WHITELIST shorter filenames TMPDIR added duplicates but not shown V3: use also populate-sysroot.MACHINE, manifest name for populate-sysroot was changed in febeaf3d1b8917b660c7279b008d8b03337568e9 V4: dropped eglibc-initial work around, it was fixed in oe-core scripts/sstate-sysroot-cruft.sh | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100755 scripts/sstate-sysroot-cruft.sh diff --git a/scripts/sstate-sysroot-cruft.sh b/scripts/sstate-sysroot-cruft.sh new file mode 100755 index 0000000..ca23dcf --- /dev/null +++ b/scripts/sstate-sysroot-cruft.sh @@ -0,0 +1,34 @@ +#!/bin/sh + +# Used to find files installed in sysroot which are not tracked by sstate manifest +# Update BASE + +BASE="/OE/oe-core" +TMPDIR="${BASE}/tmp-eglibc" + +OUTPUT=${BASE}/sysroot.cruft.`date "+%s"` +WHITELIST="\/var\/pseudo\/*[^\/]*$ \/shlibs$ \.pyc$ \.pyo$" + +mkdir ${OUTPUT} +find ${TMPDIR}/sstate-control -name \*.populate-sysroot\* -o -name \*.package\* | xargs cat | grep sysroots | \ + sed 's#/$##g; s#///*#/#g' | \ + # work around for paths ending with / for directories and multiplied // (e.g. paths to native sysroot) + sort > ${OUTPUT}/master.list.all +sort -u ${OUTPUT}/master.list.all > ${OUTPUT}/master.list # -u because some directories are listed for more recipes +find ${TMPDIR}/sysroots/ | \ + sort > ${OUTPUT}/sysroot.list + +diff ${OUTPUT}/master.list.all ${OUTPUT}/master.list > ${OUTPUT}/duplicates +diff ${OUTPUT}/master.list ${OUTPUT}/sysroot.list > ${OUTPUT}/diff.all + +cp ${OUTPUT}/diff.all ${OUTPUT}/diff +for item in ${WHITELIST}; do + sed -i "/${item}/d" ${OUTPUT}/diff; +done + +# too many false positives for directories +# echo "Following files are installed in sysroot at least twice" +# cat ${OUTPUT}/duplicates + +echo "Following files are installed in sysroot, but not tracked by sstate" +cat ${OUTPUT}/diff -- 1.8.0 _______________________________________________ Openembedded-core mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
