summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python3/makerace.patch
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2021-07-13 23:19:29 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-07-16 21:21:08 +0100
commitd1c3a87c48b598b6e5624d0affe8bd89320631bf (patch)
treebfddf604474232dfbfa4c37aac02b7e866c7cc11 /meta/recipes-devtools/python/python3/makerace.patch
parent9720cce06206895e2e85b171d58a289172bb9092 (diff)
downloadopenembedded-core-d1c3a87c48b598b6e5624d0affe8bd89320631bf.tar.gz
python3: Add a fix for a make install race
Add a fix for reproducibility issues where pyc files for python-config.py may not always be generated. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/python/python3/makerace.patch')
-rw-r--r--meta/recipes-devtools/python/python3/makerace.patch23
1 files changed, 23 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python/python3/makerace.patch b/meta/recipes-devtools/python/python3/makerace.patch
new file mode 100644
index 0000000000..96744cb557
--- /dev/null
+++ b/meta/recipes-devtools/python/python3/makerace.patch
@@ -0,0 +1,23 @@
+libainstall installs python-config.py but the .pyc cache files are generated
+by the libinstall target. This means some builds may not generate the pyc files
+for python-config.py depending on the order things happen in. This means builds
+are not always reproducible.
+
+Add a dependency to avoid the race.
+
+Upstream-Status: Pending
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
+Index: Python-3.9.6/Makefile.pre.in
+===================================================================
+--- Python-3.9.6.orig/Makefile.pre.in
++++ Python-3.9.6/Makefile.pre.in
+@@ -1486,7 +1486,7 @@ LIBSUBDIRS= tkinter tkinter/test tkinter
+ venv venv/scripts venv/scripts/common venv/scripts/posix \
+ curses pydoc_data \
+ zoneinfo
+-libinstall: build_all $(srcdir)/Modules/xxmodule.c
++libinstall: build_all $(srcdir)/Modules/xxmodule.c libainstall
+ @for i in $(SCRIPTDIR) $(LIBDEST); \
+ do \
+ if test ! -d $(DESTDIR)$$i; then \