summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/meson
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2021-03-15 23:48:34 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-03-15 23:55:34 +0000
commitad00107dc02b3211f5d1a7fe889f538ee2bc064d (patch)
tree6c166a07a7295043b658c8cbb49017c4d0a8ea38 /meta/recipes-devtools/meson
parentf36f176dc0316a79ae288c3b4f6c2eab366810dd (diff)
downloadopenembedded-core-contrib-ad00107dc02b3211f5d1a7fe889f538ee2bc064d.tar.gz
meson: Work around determinism issue
The meson determinism issue is the same frozenset issue we encountered with python itself. Remove the problematic pyc file until upstream work out the best way to address the issue (as with core python). Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/meson')
-rw-r--r--meta/recipes-devtools/meson/meson.inc14
1 files changed, 14 insertions, 0 deletions
diff --git a/meta/recipes-devtools/meson/meson.inc b/meta/recipes-devtools/meson/meson.inc
index 8454d18c28..fc3ca85fae 100644
--- a/meta/recipes-devtools/meson/meson.inc
+++ b/meta/recipes-devtools/meson/meson.inc
@@ -23,6 +23,10 @@ SRC_URI_append_class-native = " \
file://0002-Support-building-allarch-recipes-again.patch \
"
+# remove at next version upgrade or when output changes
+PR = "r1"
+HASHEQUIV_HASH_VERSION .= ".1"
+
UPSTREAM_CHECK_URI = "https://github.com/mesonbuild/meson/releases"
UPSTREAM_CHECK_REGEX = "meson-(?P<pver>\d+(\.\d+)+)\.tar"
@@ -31,3 +35,13 @@ inherit setuptools3
RDEPENDS_${PN} = "ninja python3-modules python3-pkg-resources"
FILES_${PN} += "${datadir}/polkit-1"
+
+do_install_append () {
+ # As per the same issue in the python recipe itself:
+ # Unfortunately the following pyc files are non-deterministc due to 'frozenset'
+ # being written without strict ordering, even with PYTHONHASHSEED = 0
+ # 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*
+}