1
0
mirror of https://git.yoctoproject.org/poky synced 2026-06-01 13:09:50 +00:00

core: glib-2.0: fix requested libmount/mkostemp/selinux not being linked in

Since 010202076760 ("meson.bbclass: avoid unexpected operating-system
names"), meson is no longer used with a cross file that appends the used
libc to the operating system name, e.g. linux-gnueabi.

Prior to that commit, the host_system == 'linux' checks in glib's meson
failed, which led to glib being compiled without libmount, mkostemp and
selinux even if explicitly requested.

As the aforementioned commit affects all recipes built by glib, it might
not be a candidate for backporting to current stable branches. To fix
just the glib issue, instances of host_system == 'linux' are patched
locally.

The patch is marked as Upstream-Status: Inappropriate as it is rendered
unnecessary for OE releases newer than Dunfell.

(From OE-Core rev: 2adcc5ade62fe10715a6c943565f71efe7627229)

Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ahmad Fatoum
2020-07-20 12:30:11 +02:00
committed by Richard Purdie
parent 9d15991cfa
commit 5acf553451
2 changed files with 50 additions and 0 deletions
@@ -0,0 +1,49 @@
From d5e82cd0b6076f33b86e0285ef1c0dba8a14112e Mon Sep 17 00:00:00 2001
From: Ahmad Fatoum <a.fatoum@pengutronix.de>
Date: Thu, 9 Jul 2020 13:00:16 +0200
Subject: [PATCH] meson.build: do not hardcode 'linux' as the host system
OE build system can set this to other values that include 'linux',
e.g. 'linux-gnueabi'. This led to glib always being built without
libmount, mkostemp and selinux support.
Upstream-Status: Inappropriate [other]
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
---
meson.build | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/meson.build b/meson.build
index dd95c750b5ea..8bcacaf3c7e1 100644
--- a/meson.build
+++ b/meson.build
@@ -604,7 +604,7 @@ else
endif
message('Checking whether to use statfs or statvfs .. ' + stat_func_to_use)
-if host_system == 'linux'
+if host_system.contains('linux')
if cc.has_function('mkostemp',
prefix: '''#define _GNU_SOURCE
#include <stdlib.h>''')
@@ -1810,7 +1810,7 @@ glib_conf.set_quoted('GLIB_LOCALE_DIR', join_paths(glib_datadir, 'locale'))
# libmount is only used by gio, but we need to fetch the libs to generate the
# pkg-config file below
libmount_dep = []
-if host_system == 'linux' and get_option('libmount')
+if host_system.contains('linux') and get_option('libmount')
libmount_dep = [dependency('mount', version : '>=2.23', required : true)]
glib_conf.set('HAVE_LIBMOUNT', 1)
endif
@@ -1820,7 +1820,7 @@ if host_system == 'windows'
endif
selinux_dep = []
-if host_system == 'linux'
+if host_system.contains('linux')
selinux_dep = dependency('libselinux', required: get_option('selinux'))
glib_conf.set('HAVE_SELINUX', selinux_dep.found())
--
2.27.0
@@ -17,6 +17,7 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
file://0001-meson.build-do-not-hardcode-linux-as-the-host-system.patch \
file://0001-meson-do-a-build-time-check-for-strlcpy-before-attem.patch \
file://CVE-2020-6750.patch \
file://0020-meson.build-do-not-hardcode-linux-as-the-host-system.patch \
"
SRC_URI_append_class-native = " file://relocate-modules.patch"