summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2017-08-14 11:06:33 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-09-11 22:15:58 +0100
commit960a653e0ca0a1fac5708974b6f0f1ae94430ebe (patch)
tree30d0c3af7834c388f7764449b8e36969da67f01e /meta/recipes-core
parent3f97cd3514f3e6025788ab7d6eec586fb7ac542f (diff)
downloadpoky-960a653e0ca0a1fac5708974b6f0f1ae94430ebe.tar.gz
expat: Don't use getrandom() in the -native case
getrandom() is only available in glibc 2.25+ and uninative may relocate binaries onto systems that don't have this function. For now, force the code to the older codepath until we can come up with a better solution for this kind of issue. (From OE-Core rev: da9ac8092497c3f2c246d3534f47e42cb2d9e4e8) (From OE-Core rev: 450942db7f4638eba7ec262901fe1d7e1b1f6070) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core')
-rw-r--r--meta/recipes-core/expat/expat.inc3
-rw-r--r--meta/recipes-core/expat/expat/no_getrandom.patch23
2 files changed, 26 insertions, 0 deletions
diff --git a/meta/recipes-core/expat/expat.inc b/meta/recipes-core/expat/expat.inc
index 9fa0ca2eb3..8bfd0bf26c 100644
--- a/meta/recipes-core/expat/expat.inc
+++ b/meta/recipes-core/expat/expat.inc
@@ -7,6 +7,9 @@ LICENSE = "MIT"
7SRC_URI = "${SOURCEFORGE_MIRROR}/expat/expat-${PV}.tar.bz2 \ 7SRC_URI = "${SOURCEFORGE_MIRROR}/expat/expat-${PV}.tar.bz2 \
8 file://autotools.patch \ 8 file://autotools.patch \
9 " 9 "
10
11SRC_URI_append_class-native = " file://no_getrandom.patch"
12
10inherit autotools lib_package 13inherit autotools lib_package
11 14
12# This package uses an archive format known to have issue with some 15# This package uses an archive format known to have issue with some
diff --git a/meta/recipes-core/expat/expat/no_getrandom.patch b/meta/recipes-core/expat/expat/no_getrandom.patch
new file mode 100644
index 0000000000..d64f1bf113
--- /dev/null
+++ b/meta/recipes-core/expat/expat/no_getrandom.patch
@@ -0,0 +1,23 @@
1The native version of expat may be used on older systems which dont have glibc 2.25
2and hence don't have getrandom() thanks to uninative. Disable the libc call and
3use the syscall instead to avoid a compatibility issue until we have 2.25 everywhere
4we support with uninative.
5
6RP
72017/8/14
8
9Upstream-Status: Inappropriate
10
11Index: expat-2.2.3/configure.ac
12===================================================================
13--- expat-2.2.3.orig/configure.ac
14+++ expat-2.2.3/configure.ac
15@@ -151,7 +151,7 @@ AC_LINK_IFELSE([AC_LANG_SOURCE([
16 #include <stdlib.h> /* for NULL */
17 #include <sys/random.h>
18 int main() {
19- return getrandom(NULL, 0U, 0U);
20+ return getrandomBREAKME(NULL, 0U, 0U);
21 }
22 ])], [
23 AC_DEFINE([HAVE_GETRANDOM], [1],