summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2019-11-26 09:10:51 +0100
committerMichael Olbrich <m.olbrich@pengutronix.de>2019-11-26 09:47:19 +0100
commit76c0eb5c3c0057783f870a9bff45a318d2e7cac0 (patch)
treea84efd9c9a65f80c1083c5e14be14a28783b7b0e
parent130690eae55879a7d1e3a15bd0defe05e63d7f4f (diff)
downloadptxdist-76c0eb5c3c0057783f870a9bff45a318d2e7cac0.tar.gz
ptxdist-76c0eb5c3c0057783f870a9bff45a318d2e7cac0.tar.xz
systemd: version bump 243-51-gfab6f010ac6c -> 243.4
Some rework is needed to handle minor versions. The patch is part of the new version and can be dropped. Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r--patches/systemd-243-51-gfab6f010ac6c/0001-Handle-d_type-DT_UNKNOWN-correctly.patch90
-rw-r--r--patches/systemd-243-51-gfab6f010ac6c/series4
-rw-r--r--rules/host-systemd.make4
-rw-r--r--rules/systemd.make25
4 files changed, 15 insertions, 108 deletions
diff --git a/patches/systemd-243-51-gfab6f010ac6c/0001-Handle-d_type-DT_UNKNOWN-correctly.patch b/patches/systemd-243-51-gfab6f010ac6c/0001-Handle-d_type-DT_UNKNOWN-correctly.patch
deleted file mode 100644
index 01e72f125..000000000
--- a/patches/systemd-243-51-gfab6f010ac6c/0001-Handle-d_type-DT_UNKNOWN-correctly.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Date: Sun, 29 Sep 2019 13:43:00 +0200
-Subject: [PATCH] Handle d_type == DT_UNKNOWN correctly
-
-As documented in the man-page, readdir() may return a directory entry with
-d_type == DT_UNKNOWN. This must be handled for regular filesystems.
-
-dirent_ensure_type() is available to set d_type if necessary. Use it in
-some more places.
-
-Without this systemd will fail to boot correctly with nfsroot and some
-other filesystems.
-
-Closes #13609
----
- src/core/smack-setup.c | 2 ++
- src/login/logind-dbus.c | 1 +
- src/login/logind.c | 1 +
- src/shared/bootspec.c | 1 +
- src/shared/unit-file.c | 1 +
- 5 files changed, 6 insertions(+)
-
-diff --git a/src/core/smack-setup.c b/src/core/smack-setup.c
-index b95e6239d4b2..e2d4c0d6e172 100644
---- a/src/core/smack-setup.c
-+++ b/src/core/smack-setup.c
-@@ -84,6 +84,7 @@ static int write_access2_rules(const char *srcdir) {
- FOREACH_DIRENT(entry, dir, return 0) {
- _cleanup_fclose_ FILE *policy = NULL;
-
-+ dirent_ensure_type(dir, entry);
- if (!dirent_is_file(entry))
- continue;
-
-@@ -150,6 +151,7 @@ static int write_cipso2_rules(const char *srcdir) {
- FOREACH_DIRENT(entry, dir, return 0) {
- _cleanup_fclose_ FILE *policy = NULL;
-
-+ dirent_ensure_type(dir, entry);
- if (!dirent_is_file(entry))
- continue;
-
-diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c
-index 30b9a66334fa..679eb6a62ec0 100644
---- a/src/login/logind-dbus.c
-+++ b/src/login/logind-dbus.c
-@@ -1378,6 +1378,7 @@ static int flush_devices(Manager *m) {
- struct dirent *de;
-
- FOREACH_DIRENT_ALL(de, d, break) {
-+ dirent_ensure_type(d, de);
- if (!dirent_is_file(de))
- continue;
-
-diff --git a/src/login/logind.c b/src/login/logind.c
-index 3a16e6c8712a..d889d7b9bec9 100644
---- a/src/login/logind.c
-+++ b/src/login/logind.c
-@@ -291,6 +291,7 @@ static int manager_enumerate_linger_users(Manager *m) {
- FOREACH_DIRENT(de, d, return -errno) {
- int k;
-
-+ dirent_ensure_type(d, de);
- if (!dirent_is_file(de))
- continue;
-
-diff --git a/src/shared/bootspec.c b/src/shared/bootspec.c
-index b0c6e4885fa0..5e2aa28bcff4 100644
---- a/src/shared/bootspec.c
-+++ b/src/shared/bootspec.c
-@@ -475,6 +475,7 @@ static int boot_entries_find_unified(
- _cleanup_free_ char *j = NULL, *osrelease = NULL, *cmdline = NULL;
- _cleanup_close_ int fd = -1;
-
-+ dirent_ensure_type(d, de);
- if (!dirent_is_file(de))
- continue;
-
-diff --git a/src/shared/unit-file.c b/src/shared/unit-file.c
-index 4a5f23e6c1bc..c7a6d6717244 100644
---- a/src/shared/unit-file.c
-+++ b/src/shared/unit-file.c
-@@ -279,6 +279,7 @@ int unit_file_build_name_map(
- if (hashmap_contains(ids, de->d_name))
- continue;
-
-+ dirent_ensure_type(d, de);
- if (de->d_type == DT_LNK) {
- /* We don't explicitly check for alias loops here. unit_ids_map_get() which
- * limits the number of hops should be used to access the map. */
diff --git a/patches/systemd-243-51-gfab6f010ac6c/series b/patches/systemd-243-51-gfab6f010ac6c/series
deleted file mode 100644
index 141c6b8ef..000000000
--- a/patches/systemd-243-51-gfab6f010ac6c/series
+++ /dev/null
@@ -1,4 +0,0 @@
-# generated by git-ptx-patches
-#tag:base --start-number 1
-0001-Handle-d_type-DT_UNKNOWN-correctly.patch
-# a8e3d3a17db7bad28e1af3d83d951007 - git-ptx-patches magic
diff --git a/rules/host-systemd.make b/rules/host-systemd.make
index 3b6748901..58477a53a 100644
--- a/rules/host-systemd.make
+++ b/rules/host-systemd.make
@@ -138,8 +138,8 @@ $(STATEDIR)/host-systemd.install:
@rm -rf $(HOST_SYSTEMD_PKGDIR)
@install -vD -m755 $(HOST_SYSTEMD_DIR)-build/systemd-hwdb \
$(HOST_SYSTEMD_PKGDIR)/bin/systemd-hwdb
- @install -vD -m755 $(HOST_SYSTEMD_DIR)-build/src/shared/libsystemd-shared-$(firstword $(subst -, ,$(SYSTEMD_VERSION))).so \
- $(HOST_SYSTEMD_PKGDIR)/lib/libsystemd-shared-$(firstword $(subst -, ,$(SYSTEMD_VERSION))).so
+ @install -vD -m755 $(HOST_SYSTEMD_DIR)-build/src/shared/libsystemd-shared-$(SYSTEMD_VERSION_MAJOR).so \
+ $(HOST_SYSTEMD_PKGDIR)/lib/libsystemd-shared-$(SYSTEMD_VERSION_MAJOR).so
@$(call touch)
# vim: syntax=make
diff --git a/rules/systemd.make b/rules/systemd.make
index f9c0c7bac..881dff8ff 100644
--- a/rules/systemd.make
+++ b/rules/systemd.make
@@ -15,19 +15,20 @@ PACKAGES-$(PTXCONF_SYSTEMD) += systemd
#
# Paths and names
#
-SYSTEMD_VERSION := 243-51-gfab6f010ac6c
-SYSTEMD_MD5 := 8e580a0f59fac37248ac5b2d16a06890
-SYSTEMD := systemd-$(SYSTEMD_VERSION)
-SYSTEMD_SUFFIX := tar.gz
-ifeq ($(subst -g,,$(SYSTEMD_VERSION)),$(SYSTEMD_VERSION))
-SYSTEMD_URL := https://github.com/systemd/systemd/archive/v$(SYSTEMD_VERSION).$(SYSTEMD_SUFFIX)
+SYSTEMD_VERSION := 243.4
+SYSTEMD_VERSION_MAJOR := $(firstword $(subst -, ,$(subst ., ,$(SYSTEMD_VERSION))))
+SYSTEMD_MD5 := f1b7dbfbf1434d12860e337c50cdbe88
+SYSTEMD := systemd-$(SYSTEMD_VERSION)
+SYSTEMD_SUFFIX := tar.gz
+ifeq ($(SYSTEMD_VERSION),$(SYSTEMD_VERSION_MAJOR))
+SYSTEMD_URL := https://github.com/systemd/systemd/archive/v$(SYSTEMD_VERSION).$(SYSTEMD_SUFFIX)
else
-SYSTEMD_URL := https://github.com/systemd/systemd-stable/archive/v$(SYSTEMD_VERSION).$(SYSTEMD_SUFFIX)
+SYSTEMD_URL := https://github.com/systemd/systemd-stable/archive/v$(SYSTEMD_VERSION).$(SYSTEMD_SUFFIX)
endif
-SYSTEMD_SOURCE := $(SRCDIR)/$(SYSTEMD).$(SYSTEMD_SUFFIX)
-SYSTEMD_DIR := $(BUILDDIR)/$(SYSTEMD)
-SYSTEMD_LICENSE := GPL-2.0-or-later AND LGPL-2.1-only
-SYSTEMD_LICENSE_FILES := \
+SYSTEMD_SOURCE := $(SRCDIR)/$(SYSTEMD).$(SYSTEMD_SUFFIX)
+SYSTEMD_DIR := $(BUILDDIR)/$(SYSTEMD)
+SYSTEMD_LICENSE := GPL-2.0-or-later AND LGPL-2.1-only
+SYSTEMD_LICENSE_FILES := \
file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c
@@ -298,7 +299,7 @@ $(STATEDIR)/systemd.targetinstall:
@$(call install_fixup, systemd,DESCRIPTION,missing)
@$(call install_lib, systemd, 0, 0, 0644, libsystemd)
- @$(call install_lib, systemd, 0, 0, 0644, systemd/libsystemd-shared-$(firstword $(subst -, ,$(SYSTEMD_VERSION))))
+ @$(call install_lib, systemd, 0, 0, 0644, systemd/libsystemd-shared-$(SYSTEMD_VERSION_MAJOR))
@$(call install_lib, systemd, 0, 0, 0644, libnss_myhostname)
@$(call install_lib, systemd, 0, 0, 0644, libnss_systemd)