mirror of
https://git.yoctoproject.org/poky
synced 2026-09-12 15:49:36 +02:00
python3: Fix sysroot reproducibility
Fixes the reformatting of the sysconfigdata to be reproducible in the sysroot as well as in the package. During this a bug was uncovered in the way that the data was reformatted where it appears that python cannot parse a single line of code over 40000 characters. To work around this, pass a maximum with of "1" to pprint instead of sys.maxsize which will cause it to wrap as often as possible and should keep it reproducible. (From OE-Core rev: 2def2c145c303f27d93ba73876d4c6b214f18166) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
cf08db9f83
commit
3115aa157d
@@ -16,6 +16,6 @@ with open(sys.argv[1], 'r') as f:
|
|||||||
with open(sys.argv[1], 'w') as f:
|
with open(sys.argv[1], 'w') as f:
|
||||||
for k in sorted(l.keys()):
|
for k in sorted(l.keys()):
|
||||||
f.write('%s = ' % k)
|
f.write('%s = ' % k)
|
||||||
pprint.pprint(l[k], stream=f, width=sys.maxsize)
|
pprint.pprint(l[k], stream=f, width=1)
|
||||||
f.write('\n')
|
f.write('\n')
|
||||||
|
|
||||||
|
|||||||
@@ -161,6 +161,10 @@ do_install:append:class-native() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
do_install:append() {
|
do_install:append() {
|
||||||
|
for c in ${D}/${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata*.py; do
|
||||||
|
python3 ${WORKDIR}/reformat_sysconfig.py $c
|
||||||
|
done
|
||||||
|
|
||||||
mkdir -p ${D}${libdir}/python-sysconfigdata
|
mkdir -p ${D}${libdir}/python-sysconfigdata
|
||||||
sysconfigfile=`find ${D} -name _sysconfig*.py`
|
sysconfigfile=`find ${D} -name _sysconfig*.py`
|
||||||
cp $sysconfigfile ${D}${libdir}/python-sysconfigdata/_sysconfigdata.py
|
cp $sysconfigfile ${D}${libdir}/python-sysconfigdata/_sysconfigdata.py
|
||||||
|
|||||||
Reference in New Issue
Block a user