summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2021-09-29 15:02:08 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-10-04 13:55:43 +0100
commitd9852ffbbe728dac33dc081538a08af98f52fd4a (patch)
treef213f2fddb9487d082da34d2f970436e1f091aca /meta/recipes-devtools/python
parente82095c02881410035ca23dc12692f074d8ed39b (diff)
downloadopenembedded-core-d9852ffbbe728dac33dc081538a08af98f52fd4a.tar.gz
sstatesig: Add processing for full build paths in sysroot files
Some files in the populate_sysroot tasks have hardcoded paths in them, particularly if they are postinst-useradd- files or crossscripts. Add some filtering logic to remove these paths. This means that the hashequiv "outhash" matches correcting in more cases allowing for better build artefact reuse. To make this work a new variable is added SSTATE_HASHEQUIV_FILEMAP which maps file globbing to replacement patterns (paths or regex) on a per sstate task basis. It is hoped this shouldn't be needed in many cases. We are in the process to developing QA tests which will better detect issues in this area to allow optimal sstate reuse. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/python')
-rw-r--r--meta/recipes-devtools/python/python3_3.9.6.bb8
1 files changed, 8 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python/python3_3.9.6.bb b/meta/recipes-devtools/python/python3_3.9.6.bb
index aae7837180..d09943f891 100644
--- a/meta/recipes-devtools/python/python3_3.9.6.bb
+++ b/meta/recipes-devtools/python/python3_3.9.6.bb
@@ -195,6 +195,14 @@ do_install:append:class-nativesdk () {
}
SSTATE_SCAN_FILES += "Makefile _sysconfigdata.py"
+SSTATE_HASHEQUIV_FILEMAP = " \
+ populate_sysroot:*/lib*/python3*/_sysconfigdata*.py:${TMPDIR} \
+ populate_sysroot:*/lib*/python3*/_sysconfigdata*.py:${COREBASE} \
+ populate_sysroot:*/lib*/python3*/config-*/Makefile:${TMPDIR} \
+ populate_sysroot:*/lib*/python3*/config-*/Makefile:${COREBASE} \
+ populate_sysroot:*/lib*/python-sysconfigdata/_sysconfigdata.py:${TMPDIR} \
+ populate_sysroot:*/lib*/python-sysconfigdata/_sysconfigdata.py:${COREBASE} \
+ "
PACKAGE_PREPROCESS_FUNCS += "py_package_preprocess"
py_package_preprocess () {