diff --git a/packages/sysutils/systemd/package.mk b/packages/sysutils/systemd/package.mk index 13618cd697..dc28ebba2a 100644 --- a/packages/sysutils/systemd/package.mk +++ b/packages/sysutils/systemd/package.mk @@ -3,8 +3,8 @@ # Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) PKG_NAME="systemd" -PKG_VERSION="239" -PKG_SHA256="8a11b1b07d620f4c06a16e95bba4dd2a97e90efdf2a5ba47ed0a935085787a14" +PKG_VERSION="242" +PKG_SHA256="ec22be9a5dd94c9640e6348ed8391d1499af8ca2c2f01109198a414cff6c6cba" PKG_LICENSE="LGPL2.1+" PKG_SITE="http://www.freedesktop.org/wiki/Software/systemd" PKG_URL="https://github.com/systemd/systemd/archive/v$PKG_VERSION.tar.gz" @@ -36,12 +36,14 @@ PKG_MESON_OPTS_TARGET="--libdir=/usr/lib \ -Dqrencode=false \ -Dgcrypt=false \ -Dgnutls=false \ + -Dopenssl=false \ -Delfutils=false \ -Dzlib=false \ -Dbzip2=false \ -Dxz=false \ -Dlz4=false \ -Dxkbcommon=false \ + -Dpcre2=false \ -Dglib=false \ -Ddbus=false \ -Ddefault-dnssec=no \ @@ -60,7 +62,6 @@ PKG_MESON_OPTS_TARGET="--libdir=/usr/lib \ -Dnetworkd=false \ -Dtimedated=false \ -Dtimesyncd=true \ - -Dmyhostname=false \ -Dfirstboot=false \ -Drandomseed=false \ -Dbacklight=false \ @@ -77,12 +78,14 @@ PKG_MESON_OPTS_TARGET="--libdir=/usr/lib \ -Dsmack=false \ -Dgshadow=false \ -Didn=false \ + -Dnss-myhostname=false \ + -Dnss-mymachines=false \ + -Dnss-resolve=false \ -Dnss-systemd=false \ -Dman=false \ -Dhtml=false \ -Dbashcompletiondir=no \ -Dzshcompletiondir=no \ - -Dkill-path=/usr/bin/kill \ -Dkmod-path=/usr/bin/kmod \ -Dmount-path=/usr/bin/mount \ -Dumount-path=/usr/bin/umount" diff --git a/packages/sysutils/systemd/patches/systemd-0002-move-hwdb.bin-to-run.patch b/packages/sysutils/systemd/patches/systemd-0002-move-hwdb.bin-to-run.patch index f51f25efa0..eafb7e9b7e 100644 --- a/packages/sysutils/systemd/patches/systemd-0002-move-hwdb.bin-to-run.patch +++ b/packages/sysutils/systemd/patches/systemd-0002-move-hwdb.bin-to-run.patch @@ -1,53 +1,53 @@ -From 73f401a5a33ad3e647791685a9af14e69c7a89f6 Mon Sep 17 00:00:00 2001 -From: Stefan Saraev -Date: Fri, 7 Aug 2015 13:25:23 +0300 -Subject: [PATCH 3/8] move hwdb.bin to /run +From bf2776b7f9403057cb82c2697e4fca8b554db4bd Mon Sep 17 00:00:00 2001 +From: MilhouseVH +Date: Thu, 11 Apr 2019 20:00:05 +0100 +Subject: [PATCH] move hwdb.bin to /run --- - src/hwdb/hwdb.c | 2 +- - src/libsystemd/sd-hwdb/sd-hwdb.c | 2 +- - src/udev/udevadm-hwdb.c | 2 +- + src/libsystemd/sd-hwdb/hwdb-util.c | 2 +- + src/libsystemd/sd-hwdb/sd-hwdb.c | 2 +- + units/systemd-hwdb-update.service.in | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) -diff --git a/src/hwdb/hwdb.c b/src/hwdb/hwdb.c -index 446de3a..be91bfe 100644 ---- a/src/hwdb/hwdb.c -+++ b/src/hwdb/hwdb.c -@@ -38,7 +38,7 @@ - * Uses a Patricia/radix trie to index all matches for efficient lookup. - */ - --static const char *arg_hwdb_bin_dir = "/etc/udev"; -+static const char *arg_hwdb_bin_dir = "/run"; - static const char *arg_root = ""; +diff --git a/src/libsystemd/sd-hwdb/hwdb-util.c b/src/libsystemd/sd-hwdb/hwdb-util.c +index c83575c..6285f3d 100644 +--- a/src/libsystemd/sd-hwdb/hwdb-util.c ++++ b/src/libsystemd/sd-hwdb/hwdb-util.c +@@ -20,7 +20,7 @@ + #include "strv.h" + #include "tmpfile-util.h" +-static const char *default_hwdb_bin_dir = "/etc/udev"; ++static const char *default_hwdb_bin_dir = "/run"; static const char * const conf_file_dirs[] = { + "/etc/udev/hwdb.d", + UDEVLIBEXECDIR "/hwdb.d", diff --git a/src/libsystemd/sd-hwdb/sd-hwdb.c b/src/libsystemd/sd-hwdb/sd-hwdb.c -index 61c7b44..6e1de7d 100644 +index 79fe1a8..0acbf71 100644 --- a/src/libsystemd/sd-hwdb/sd-hwdb.c +++ b/src/libsystemd/sd-hwdb/sd-hwdb.c -@@ -269,7 +269,7 @@ +@@ -299,7 +299,7 @@ static int trie_search_f(sd_hwdb *hwdb, const char *search) { static const char hwdb_bin_paths[] = "/etc/systemd/hwdb/hwdb.bin\0" - "/etc/udev/hwdb.bin\0" + "/run/hwdb.bin\0" "/usr/lib/systemd/hwdb/hwdb.bin\0" - #ifdef HAVE_SPLIT_USR + #if HAVE_SPLIT_USR "/lib/systemd/hwdb/hwdb.bin\0" -diff --git a/src/udev/udevadm-hwdb.c b/src/udev/udevadm-hwdb.c -index d65e40c..8889df7 100644 ---- a/src/udev/udevadm-hwdb.c -+++ b/src/udev/udevadm-hwdb.c -@@ -562,7 +562,7 @@ static int adm_hwdb(struct udev *udev, int argc, char *argv[]) { - }; - const char *test = NULL; - const char *root = ""; -- const char *hwdb_bin_dir = "/etc/udev"; -+ const char *hwdb_bin_dir = "/run"; - bool update = false; - struct trie *trie = NULL; - int err, c; +diff --git a/units/systemd-hwdb-update.service.in b/units/systemd-hwdb-update.service.in +index 259fe0d..18d617f 100644 +--- a/units/systemd-hwdb-update.service.in ++++ b/units/systemd-hwdb-update.service.in +@@ -16,7 +16,7 @@ After=systemd-remount-fs.service + Before=sysinit.target shutdown.target systemd-update-done.service + ConditionNeedsUpdate=/etc + ConditionPathExists=|!@udevlibexecdir@/hwdb.bin +-ConditionPathExists=|/etc/udev/hwdb.bin ++ConditionPathExists=|/run/hwdb.bin + ConditionDirectoryNotEmpty=|/etc/udev/hwdb.d/ + + [Service] -- -1.7.10.4 +2.14.1 diff --git a/packages/sysutils/systemd/patches/systemd-0006-fix-build-with-glibc_2.28.patch b/packages/sysutils/systemd/patches/systemd-0006-fix-build-with-glibc_2.28.patch deleted file mode 100644 index 57df21e7c9..0000000000 --- a/packages/sysutils/systemd/patches/systemd-0006-fix-build-with-glibc_2.28.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 75720bff62a84896e9a0654afc7cf9408cf89a38 Mon Sep 17 00:00:00 2001 -From: Filipe Brandenburger -Date: Sun, 15 Jul 2018 22:43:35 -0700 -Subject: [PATCH] build-sys: Detect whether struct statx is defined in - sys/stat.h -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Starting with glibc 2.27.9000-36.fc29, include file sys/stat.h will have a -definition for struct statx, in which case include file linux/stat.h should be -avoided, in order to prevent a duplicate definition. - - In file included from ../src/basic/missing.h:18, - from ../src/basic/util.h:28, - from ../src/basic/hashmap.h:10, - from ../src/shared/bus-util.h:12, - from ../src/libsystemd/sd-bus/bus-creds.c:11: - /usr/include/linux/stat.h:99:8: error: redefinition of ‘struct statx’ - struct statx { - ^~~~~ - In file included from /usr/include/sys/stat.h:446, - from ../src/basic/util.h:19, - from ../src/basic/hashmap.h:10, - from ../src/shared/bus-util.h:12, - from ../src/libsystemd/sd-bus/bus-creds.c:11: - /usr/include/bits/statx.h:36:8: note: originally defined here - struct statx - ^~~~~ - -Extend our meson.build to look for struct statx when only sys/stat.h is -included and, in that case, do not include linux/stat.h anymore. - -Tested that systemd builds correctly when using a glibc version that includes a -definition for struct statx. - -glibc Fedora RPM update: -https://src.fedoraproject.org/rpms/glibc/c/28cb5d31fc1e5887912283c889689c47076278ae - -glibc upstream commit: -https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=fd70af45528d59a00eb3190ef6706cb299488fcd ---- - meson.build | 5 +++++ - src/basic/missing.h | 5 ++++- - src/basic/xattr-util.c | 1 - - 3 files changed, 9 insertions(+), 2 deletions(-) - -diff --git a/meson.build b/meson.build -index dd904c71487..68423bdfa5e 100644 ---- a/meson.build -+++ b/meson.build -@@ -425,6 +425,7 @@ decl_headers = ''' - #include - ''' - # FIXME: key_serial_t is only defined in keyutils.h, this is bound to fail -+# FIXME: these should use -D_GNU_SOURCE, since that is defined at build time - - foreach decl : ['char16_t', - 'char32_t', -@@ -439,6 +440,10 @@ foreach decl : ['char16_t', - conf.set10('HAVE_' + decl.underscorify().to_upper(), have) - endforeach - -+conf.set10('HAVE_STRUCT_STATX_IN_SYS_STAT_H', cc.sizeof('struct statx', prefix : ''' -+#include -+''', args : '-D_GNU_SOURCE') > 0) -+ - foreach decl : [['IFLA_INET6_ADDR_GEN_MODE', 'linux/if_link.h'], - ['IN6_ADDR_GEN_MODE_STABLE_PRIVACY', 'linux/if_link.h'], - ['IFLA_VRF_TABLE', 'linux/if_link.h'], -diff --git a/src/basic/missing.h b/src/basic/missing.h -index 71a07d05747..14ad3d49140 100644 ---- a/src/basic/missing.h -+++ b/src/basic/missing.h -@@ -15,7 +15,6 @@ - #include - #include - #include --#include - #include - #include - #include -@@ -25,6 +24,10 @@ - #include - #include - -+#if !HAVE_STRUCT_STATX_IN_SYS_STAT_H -+#include -+#endif -+ - #if HAVE_AUDIT - #include - #endif -diff --git a/src/basic/xattr-util.c b/src/basic/xattr-util.c -index c5c55ea8461..0ee0979837c 100644 ---- a/src/basic/xattr-util.c -+++ b/src/basic/xattr-util.c -@@ -2,7 +2,6 @@ - - #include - #include --#include - #include - #include - #include diff --git a/packages/sysutils/systemd/patches/systemd-0007-fix-build-with-glibc_2.28.patch b/packages/sysutils/systemd/patches/systemd-0007-fix-build-with-glibc_2.28.patch deleted file mode 100644 index b4da33f704..0000000000 --- a/packages/sysutils/systemd/patches/systemd-0007-fix-build-with-glibc_2.28.patch +++ /dev/null @@ -1,124 +0,0 @@ -From 9c869d08d82c73f62ab3527567858ce4b0cf1257 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Wed, 18 Jul 2018 17:26:17 +0200 -Subject: [PATCH 1/2] meson: unify linux/stat.h check with other checks and use - _GNU_SOURCE - -Using _GNU_SOURCE is better because that's how we include the headers in the -actual build, and some headers define different stuff when it is defined. -sys/stat.h for example defines 'struct statx' conditionally. ---- - meson.build | 20 ++++++++++++++------ - src/basic/missing.h | 2 +- - 2 files changed, 15 insertions(+), 7 deletions(-) - -diff --git a/meson.build b/meson.build -index 68423bdfa5e..99035d2306c 100644 ---- a/meson.build -+++ b/meson.build -@@ -421,11 +421,9 @@ decl_headers = ''' - #include - #include - #include --#include - #include - ''' - # FIXME: key_serial_t is only defined in keyutils.h, this is bound to fail --# FIXME: these should use -D_GNU_SOURCE, since that is defined at build time - - foreach decl : ['char16_t', - 'char32_t', -@@ -436,13 +434,23 @@ foreach decl : ['char16_t', - ] - - # We get -1 if the size cannot be determined -- have = cc.sizeof(decl, prefix : decl_headers) > 0 -+ have = cc.sizeof(decl, prefix : decl_headers, args : '-D_GNU_SOURCE') > 0 -+ -+ if decl == 'struct statx' -+ if have -+ want_linux_stat_h = false -+ else -+ have = cc.sizeof(decl, -+ prefix : decl_headers + '#include ', -+ args : '-D_GNU_SOURCE') > 0 -+ want_linux_stat_h = have -+ endif -+ endif -+ - conf.set10('HAVE_' + decl.underscorify().to_upper(), have) - endforeach - --conf.set10('HAVE_STRUCT_STATX_IN_SYS_STAT_H', cc.sizeof('struct statx', prefix : ''' --#include --''', args : '-D_GNU_SOURCE') > 0) -+conf.set10('WANT_LINUX_STAT_H', want_linux_stat_h) - - foreach decl : [['IFLA_INET6_ADDR_GEN_MODE', 'linux/if_link.h'], - ['IN6_ADDR_GEN_MODE_STABLE_PRIVACY', 'linux/if_link.h'], -diff --git a/src/basic/missing.h b/src/basic/missing.h -index 14ad3d49140..9044683b15f 100644 ---- a/src/basic/missing.h -+++ b/src/basic/missing.h -@@ -24,7 +24,7 @@ - #include - #include - --#if !HAVE_STRUCT_STATX_IN_SYS_STAT_H -+#if WANT_LINUX_STAT_H - #include - #endif - - -From 1d7aedf11a22d0c1aca40905e953a25f03252cde Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Wed, 18 Jul 2018 17:42:06 +0200 -Subject: [PATCH 2/2] meson: remove false check for key_serial_t - -key_serial_t is defined in keyutil.h, which wasn't included in the header list -in the test, so the test always failed. We were always compiling stuff with -!HAVE_KEY_SERIAL_T. - -We could try to add keyutil.h to the test, but then we'd have to first check if -it is available, which just doesn't seem worth the trouble. - -key_serial_t should always be defined as int32_t. Let's keep the uncoditional -define, since repeated compatible typedefs are not a problem, and it allows us -to compile even if the header file is missing. If there's ever a change in the -definition, we'll have to adjust the code for the different type anyway, and -our compiler will tell us. ---- - meson.build | 2 -- - src/basic/missing.h | 2 -- - 2 files changed, 4 deletions(-) - -diff --git a/meson.build b/meson.build -index 99035d2306c..84656cdc7e8 100644 ---- a/meson.build -+++ b/meson.build -@@ -423,11 +423,9 @@ decl_headers = ''' - #include - #include - ''' --# FIXME: key_serial_t is only defined in keyutils.h, this is bound to fail - - foreach decl : ['char16_t', - 'char32_t', -- 'key_serial_t', - 'struct ethtool_link_settings', - 'struct fib_rule_uid_range', - 'struct statx', -diff --git a/src/basic/missing.h b/src/basic/missing.h -index 9044683b15f..477992fbcba 100644 ---- a/src/basic/missing.h -+++ b/src/basic/missing.h -@@ -1183,9 +1183,7 @@ struct input_mask { - #define KEY_ALS_TOGGLE 0x230 - #endif - --#if ! HAVE_KEY_SERIAL_T - typedef int32_t key_serial_t; --#endif - - #ifndef KEYCTL_JOIN_SESSION_KEYRING - #define KEYCTL_JOIN_SESSION_KEYRING 1 diff --git a/packages/sysutils/systemd/patches/systemd-0300-PR9885.patch b/packages/sysutils/systemd/patches/systemd-0300-PR9885.patch deleted file mode 100644 index 5369bde373..0000000000 --- a/packages/sysutils/systemd/patches/systemd-0300-PR9885.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 1c04c791e85f9dd5e16ae846d0c0b0a99a47076e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Sun, 19 Aug 2018 19:11:30 +0200 -Subject: [PATCH] meson: rename -Ddebug to -Ddebug-extra - -Meson added -Doptimization and -Ddebug options, which obviously causes -a conflict with our -Ddebug options. Let's rename it. - -Fixes #9883. ---- - meson.build | 2 +- - meson_options.txt | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/meson.build b/meson.build -index f79ac4b12e7..2209c935ad6 100644 ---- a/meson.build -+++ b/meson.build -@@ -763,7 +763,7 @@ substs.set('DEBUGTTY', get_option('debug-tty')) - - enable_debug_hashmap = false - enable_debug_mmap_cache = false --foreach name : get_option('debug') -+foreach name : get_option('debug-extra') - if name == 'hashmap' - enable_debug_hashmap = true - elif name == 'mmap-cache' -diff --git a/meson_options.txt b/meson_options.txt -index e3140c8c110..7b1f61bf464 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -45,7 +45,7 @@ option('debug-shell', type : 'string', value : '/bin/sh', - description : 'path to debug shell binary') - option('debug-tty', type : 'string', value : '/dev/tty9', - description : 'specify the tty device for debug shell') --option('debug', type : 'array', choices : ['hashmap', 'mmap-cache'], value : [], -+option('debug-extra', type : 'array', choices : ['hashmap', 'mmap-cache'], value : [], - description : 'enable extra debugging') - option('memory-accounting-default', type : 'boolean', - description : 'enable MemoryAccounting= by default')