* [OE-core][PATCH] python: prevent build failure when pycache files missing
@ 2022-01-22 17:15 Athanasios Oikonomou
2022-01-25 12:15 ` Richard Purdie
0 siblings, 1 reply; 2+ messages in thread
From: Athanasios Oikonomou @ 2022-01-22 17:15 UTC (permalink / raw)
To: openembedded-core; +Cc: Athanasios Oikonomou
Building a patched version of python3 with byte-code files saved to their legacy locations and names causes the following errors:
| rm: cannot remove '/.../build/tmp/work/x86_64-linux/python3-native/3.9.9-r0/recipe-sysroot-native/usr/lib/python3.9/test/__pycache__/test_range.cpython*': No such file or directory
| rm: cannot remove '/.../build/tmp/work/x86_64-linux/meson-native/0.57.1-r1/recipe-sysroot-native/usr/lib/python*/site-packages/mesonbuild/dependencies/__pycache__/mpi.cpython*': No such file or directory
Force remove pycache files, preventing build failure in case they are absent.
Python3 patched with legacy byte-code locations in order to create a sourceless .pyc deployment for small flash boxes. Unappropriate for upstream.
Signed-off-by: Athanasios Oikonomou <athoik@gmail.com>
---
meta/recipes-devtools/meson/meson.inc | 2 +-
meta/recipes-devtools/python/python3_3.9.9.bb | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/meta/recipes-devtools/meson/meson.inc b/meta/recipes-devtools/meson/meson.inc
index e186dede92..bc8ff2bcdc 100644
--- a/meta/recipes-devtools/meson/meson.inc
+++ b/meta/recipes-devtools/meson/meson.inc
@@ -44,5 +44,5 @@ do_install_append () {
# Upstream is discussing ways to solve the issue properly, until then let's
# just not install the problematic files.
# More info: http://benno.id.au/blog/2013/01/15/python-determinism
- rm ${D}${libdir}/python*/site-packages/mesonbuild/dependencies/__pycache__/mpi.cpython*
+ rm -f ${D}${libdir}/python*/site-packages/mesonbuild/dependencies/__pycache__/mpi.cpython*
}
diff --git a/meta/recipes-devtools/python/python3_3.9.9.bb b/meta/recipes-devtools/python/python3_3.9.9.bb
index f41529833c..7d0bef06d5 100644
--- a/meta/recipes-devtools/python/python3_3.9.9.bb
+++ b/meta/recipes-devtools/python/python3_3.9.9.bb
@@ -174,8 +174,8 @@ do_install_append() {
# Upstream is discussing ways to solve the issue properly, until then let's
# just not install the problematic files.
# More info: http://benno.id.au/blog/2013/01/15/python-determinism
- rm ${D}${libdir}/python${PYTHON_MAJMIN}/test/__pycache__/test_range.cpython*
- rm ${D}${libdir}/python${PYTHON_MAJMIN}/test/__pycache__/test_xml_etree.cpython*
+ rm -f ${D}${libdir}/python${PYTHON_MAJMIN}/test/__pycache__/test_range.cpython*
+ rm -f ${D}${libdir}/python${PYTHON_MAJMIN}/test/__pycache__/test_xml_etree.cpython*
}
do_install_append_class-nativesdk () {
--
2.20.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [OE-core][PATCH] python: prevent build failure when pycache files missing
2022-01-22 17:15 [OE-core][PATCH] python: prevent build failure when pycache files missing Athanasios Oikonomou
@ 2022-01-25 12:15 ` Richard Purdie
0 siblings, 0 replies; 2+ messages in thread
From: Richard Purdie @ 2022-01-25 12:15 UTC (permalink / raw)
To: Athanasios Oikonomou, openembedded-core
On Sat, 2022-01-22 at 19:15 +0200, Athanasios Oikonomou wrote:
> Building a patched version of python3 with byte-code files saved to their
> legacy locations and names causes the following errors:
>
> > rm: cannot remove '/.../build/tmp/work/x86_64-linux/python3-native/3.9.9-
> > r0/recipe-sysroot-
> > native/usr/lib/python3.9/test/__pycache__/test_range.cpython*': No such file
> > or directory
> > rm: cannot remove '/.../build/tmp/work/x86_64-linux/meson-native/0.57.1-
> > r1/recipe-sysroot-native/usr/lib/python*/site-
> > packages/mesonbuild/dependencies/__pycache__/mpi.cpython*': No such file or
> > directory
>
> Force remove pycache files, preventing build failure in case they are absent.
>
> Python3 patched with legacy byte-code locations in order to create a
> sourceless .pyc deployment for small flash boxes. Unappropriate for upstream.
Do people commonly patch python to build with legacy byte-code locations? If you
do that aren't files generated at a different location and hence break
reproduciblity? This seems to be a rather niche requirement?
I'm a little worried we add the -f and then if files change location, we don't
realise...
Cheers,
Richard
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-01-25 12:15 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-01-22 17:15 [OE-core][PATCH] python: prevent build failure when pycache files missing Athanasios Oikonomou
2022-01-25 12:15 ` Richard Purdie
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox