[Buildroot] [PATCH 1/1] package/systemd: bump version to 243
Jérémy ROSEN
jeremy.rosen at smile.fr
Sat Oct 26 12:54:55 UTC 2019
I have tested this package an there is a small bug :
BR2_TARGET_GENERIC_GETTY_PORT does not work correctly with this patch.
This is caused by $(TARGET_DIR)/etc/systemd/system/getty.target.wants/; \
not being created automatically by systemd anymore.
Because of this, SYSTEMD_INSTALL_SERVICE_TTY does not work correctly and a
getty at .service is not enabled correctly
adding
mkdir $(TARGET_DIR)/etc/systemd/system/getty.target.wants/; \
in SYSTEMD_INSTALL_SERVICE_TTY line 515 in systemd.mk fixes it.
With that fix:
Tested-by: Jérémy Rosen <jeremy.rosen at smile.fr>
Le mar. 3 sept. 2019 à 20:39, James Hilliard <james.hilliard1 at gmail.com> a
écrit :
> Added config option for new systemd-pstore feature.
>
> Removed patches that have been committed upstream.
>
> Added symlinks required to enable some services.
>
> After extensive discussion with upstream it does not seem there is any
> acceptable option to have symlink installation handled on their side.
>
> The recommended solution from upstream is to have systemctl handle
> service installation, however this has a number of downsides such as
> requiring us to build a host-systemd just to install a few symlinks.
>
> Since we already customize service installation it is simpler for us
> to create the symlinks ourselves, this will also simplify service
> customization on our side as we will not need to disable any systemd
> default services in cases where we need to make customizations.
>
> In addition using systemctl would introduce a minimum host headers
> dependency in which we don't have the infrastructure to handle
> properly.
>
> The downside to this approach is that we need to track service creation
> changes from upstream ourselves, however this is relatively straightforward
> and since upstream service file locations are relatively stable regressions
> should be limited. This will mostly be a concern in regards to adding
> support for new systemd features.
>
> Details:
> https://github.com/systemd/systemd/issues/12767
> https://github.com/systemd/systemd/pull/12164
> https://github.com/systemd/systemd/pull/12769
> https://github.com/systemd/systemd/pull/12775
>
> Signed-off-by: James Hilliard <james.hilliard1 at gmail.com>
> ---
> .../0001-install-don-t-use-ln-relative.patch | 26 +--
> ...age-paths-longer-than-BUS_PATH_SIZE_.patch | 53 -----
> ...ry-strings-to-hold-dbus-paths-on-the.patch | 194 ------------------
> ...drop-misplaced-Wl-undefined-argument.patch | 51 -----
> package/systemd/Config.in | 10 +
> package/systemd/systemd.hash | 2 +-
> package/systemd/systemd.mk | 88 +++++++-
> 7 files changed, 108 insertions(+), 316 deletions(-)
> delete mode 100644
> package/systemd/0002-Refuse-dbus-message-paths-longer-than-BUS_PATH_SIZE_.patch
> delete mode 100644
> package/systemd/0003-Allocate-temporary-strings-to-hold-dbus-paths-on-the.patch
> delete mode 100644
> package/systemd/0004-meson-drop-misplaced-Wl-undefined-argument.patch
>
> diff --git a/package/systemd/0001-install-don-t-use-ln-relative.patch
> b/package/systemd/0001-install-don-t-use-ln-relative.patch
> index d00a8db63f..2bde36c774 100644
> --- a/package/systemd/0001-install-don-t-use-ln-relative.patch
> +++ b/package/systemd/0001-install-don-t-use-ln-relative.patch
> @@ -1,4 +1,4 @@
> -From 7f4a12d25bbb5859d266f32f7a3d794bb62c354e Mon Sep 17 00:00:00 2001
> +From 006b1d65fd5ea6555fcb72054ecc20234f4175db Mon Sep 17 00:00:00 2001
> From: Adam Duskett <aduskett at gmail.com>
> Date: Sun, 31 Dec 2017 12:46:04 -0500
> Subject: [PATCH] install: don't use ln --relative
> @@ -30,10 +30,10 @@ Signed-off-by: Trent Piepho <tpiepho at impinj.com>
> 3 files changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/meson.build b/meson.build
> -index 04331dd41..359042c04 100644
> +index e5ceb1e169..9d3c746da4 100644
> --- a/meson.build
> +++ b/meson.build
> -@@ -628,7 +628,7 @@ endforeach
> +@@ -580,7 +580,7 @@ endforeach
> conf.set_quoted('TELINIT', get_option('telinit-path'))
>
> if run_command('ln', '--relative', '--help').returncode() != 0
> @@ -43,32 +43,32 @@ index 04331dd41..359042c04 100644
>
> ############################################################
> diff --git a/tools/meson-make-symlink.sh b/tools/meson-make-symlink.sh
> -index 501cd43d4..25e7f89fd 100755
> +index da0d13a341..4917eff7d1 100755
> --- a/tools/meson-make-symlink.sh
> +++ b/tools/meson-make-symlink.sh
> @@ -8,5 +8,6 @@ mkdir -vp "$(dirname "${DESTDIR:-}$2")"
> if [ "$(dirname $1)" = . ]; then
> - ln -vfs -T "$1" "${DESTDIR:-}$2"
> + ln -vfs -T "$1" "${DESTDIR:-}$2"
> else
> -- ln -vfs -T --relative "${DESTDIR:-}$1" "${DESTDIR:-}$2"
> -+ dds="$( dirname "$2" |sed -r -e 's:/+[^/]+:../:g; s:/$::' )"
> -+ ln -vfs -T "${dds}$1" "${DESTDIR:-}$2"
> +- ln -vfs -T --relative "${DESTDIR:-}$1" "${DESTDIR:-}$2"
> ++ dds="$( dirname "$2" |sed -r -e 's:/+[^/]+:../:g; s:/$::' )"
> ++ ln -vfs -T "${dds}$1" "${DESTDIR:-}$2"
> fi
> diff --git a/units/meson-add-wants.sh b/units/meson-add-wants.sh
> -index 70f7172ae..bb8155075 100755
> +index a483d75b86..4642673d98 100755
> --- a/units/meson-add-wants.sh
> +++ b/units/meson-add-wants.sh
> @@ -14,7 +14,7 @@ case "$target" in
> - ;;
> + ;;
> esac
>
> -unitpath="${DESTDIR:-}${unitdir}/${unit}"
> +unitpath="${unitdir}/${unit}"
>
> case "$target" in
> - */)
> + */)
> @@ -25,4 +25,6 @@ case "$target" in
> - ;;
> + ;;
> esac
>
> -ln -vfs --relative "$unitpath" "$dir"
> @@ -76,5 +76,5 @@ index 70f7172ae..bb8155075 100755
> +dds="$(printf "%s" "${linkdir#${DESTDIR:-}}" |sed -r -e
> 's:/+[^/]+:../:g; s:/$::')"
> +ln -vfs "$dds$unitpath" "$dir"
> --
> -2.14.4
> +2.20.1
>
> diff --git
> a/package/systemd/0002-Refuse-dbus-message-paths-longer-than-BUS_PATH_SIZE_.patch
> b/package/systemd/0002-Refuse-dbus-message-paths-longer-than-BUS_PATH_SIZE_.patch
> deleted file mode 100644
> index 2de3b71b5c..0000000000
> ---
> a/package/systemd/0002-Refuse-dbus-message-paths-longer-than-BUS_PATH_SIZE_.patch
> +++ /dev/null
> @@ -1,53 +0,0 @@
> -From febef5e18558c114f4fb7c94f6c8ed3520c50cdf Mon Sep 17 00:00:00 2001
> -From: Riccardo Schirone <rschiron at redhat.com>
> -Date: Mon, 4 Feb 2019 14:29:09 +0100
> -Subject: [PATCH] Refuse dbus message paths longer than BUS_PATH_SIZE_MAX
> - limit.
> -
> -Even though the dbus specification does not enforce any length limit on
> the
> -path of a dbus message, having to analyze too long strings in PID1 may be
> -time-consuming and it may have security impacts.
> -
> -In any case, the limit is set so high that real-life applications should
> not
> -have a problem with it.
> -
> -(cherry picked from commit 61397a60d98e368a5720b37e83f3169e3eb511c4)
> -Signed-off-by: Baruch Siach <baruch at tkos.co.il>
> ----
> -Upstream status: commit 61397a60d98
> -
> - src/libsystemd/sd-bus/bus-internal.c | 2 +-
> - src/libsystemd/sd-bus/bus-internal.h | 4 ++++
> - 2 files changed, 5 insertions(+), 1 deletion(-)
> -
> -diff --git a/src/libsystemd/sd-bus/bus-internal.c
> b/src/libsystemd/sd-bus/bus-internal.c
> -index 40acae213381..598b7f110c73 100644
> ---- a/src/libsystemd/sd-bus/bus-internal.c
> -+++ b/src/libsystemd/sd-bus/bus-internal.c
> -@@ -43,7 +43,7 @@ bool object_path_is_valid(const char *p) {
> - if (slash)
> - return false;
> -
> -- return true;
> -+ return (q - p) <= BUS_PATH_SIZE_MAX;
> - }
> -
> - char* object_path_startswith(const char *a, const char *b) {
> -diff --git a/src/libsystemd/sd-bus/bus-internal.h
> b/src/libsystemd/sd-bus/bus-internal.h
> -index f208b294d8f1..a8d61bf72a4e 100644
> ---- a/src/libsystemd/sd-bus/bus-internal.h
> -+++ b/src/libsystemd/sd-bus/bus-internal.h
> -@@ -332,6 +332,10 @@ struct sd_bus {
> -
> - #define BUS_MESSAGE_SIZE_MAX (128*1024*1024)
> - #define BUS_AUTH_SIZE_MAX (64*1024)
> -+/* Note that the D-Bus specification states that bus paths shall have no
> size limit. We enforce here one
> -+ * anyway, since truly unbounded strings are a security problem. The
> limit we pick is relatively large however,
> -+ * to not clash unnecessarily with real-life applications. */
> -+#define BUS_PATH_SIZE_MAX (64*1024)
> -
> - #define BUS_CONTAINER_DEPTH 128
> -
> ---
> -2.20.1
> -
> diff --git
> a/package/systemd/0003-Allocate-temporary-strings-to-hold-dbus-paths-on-the.patch
> b/package/systemd/0003-Allocate-temporary-strings-to-hold-dbus-paths-on-the.patch
> deleted file mode 100644
> index 007b806c09..0000000000
> ---
> a/package/systemd/0003-Allocate-temporary-strings-to-hold-dbus-paths-on-the.patch
> +++ /dev/null
> @@ -1,194 +0,0 @@
> -From 9e3f5a77226d5320270c92df001f6c79be735af3 Mon Sep 17 00:00:00 2001
> -From: Riccardo Schirone <rschiron at redhat.com>
> -Date: Mon, 4 Feb 2019 14:29:28 +0100
> -Subject: [PATCH] Allocate temporary strings to hold dbus paths on the heap
> -
> -Paths are limited to BUS_PATH_SIZE_MAX but the maximum size is anyway too
> big
> -to be allocated on the stack, so let's switch to the heap where there is a
> -clear way to understand if the allocation fails.
> -
> -(cherry picked from commit f519a19bcd5afe674a9b8fc462cd77d8bad403c1)
> -[baruch: backport to v240]
> -Signed-off-by: Baruch Siach <baruch at tkos.co.il>
> -[Adam: Update for v241]
> -Signed-off-by: Adam Duskett <aduskett at gmail.com>
> ----
> - src/libsystemd/sd-bus/bus-objects.c | 68 +++++++++++++++++++++++------
> - 1 file changed, 54 insertions(+), 14 deletions(-)
> -
> -diff --git a/src/libsystemd/sd-bus/bus-objects.c
> b/src/libsystemd/sd-bus/bus-objects.c
> -index 58329f3fe78..54b977418e0 100644
> ---- a/src/libsystemd/sd-bus/bus-objects.c
> -+++ b/src/libsystemd/sd-bus/bus-objects.c
> -@@ -1133,7 +1133,8 @@ static int
> object_manager_serialize_path_and_fallbacks(
> - const char *path,
> - sd_bus_error *error) {
> -
> -- char *prefix;
> -+ _cleanup_free_ char *prefix = NULL;
> -+ size_t pl;
> - int r;
> -
> - assert(bus);
> -@@ -1149,7 +1150,12 @@ static int
> object_manager_serialize_path_and_fallbacks(
> - return 0;
> -
> - /* Second, add fallback vtables registered for any of the
> prefixes */
> -- prefix = newa(char, strlen(path) + 1);
> -+ pl = strlen(path);
> -+ assert(pl <= BUS_PATH_SIZE_MAX);
> -+ prefix = new(char, pl + 1);
> -+ if (!prefix)
> -+ return -ENOMEM;
> -+
> - OBJECT_PATH_FOREACH_PREFIX(prefix, path) {
> - r = object_manager_serialize_path(bus, reply, prefix,
> path, true, error);
> - if (r < 0)
> -@@ -1345,6 +1351,7 @@ static int object_find_and_run(
> - }
> -
> - int bus_process_object(sd_bus *bus, sd_bus_message *m) {
> -+ _cleanup_free_ char *prefix = NULL;
> - int r;
> - size_t pl;
> - bool found_object = false;
> -@@ -1369,9 +1376,12 @@ int bus_process_object(sd_bus *bus, sd_bus_message
> *m) {
> - assert(m->member);
> -
> - pl = strlen(m->path);
> -- do {
> -- char prefix[pl+1];
> -+ assert(pl <= BUS_PATH_SIZE_MAX);
> -+ prefix = new(char, pl + 1);
> -+ if (!prefix)
> -+ return -ENOMEM;
> -
> -+ do {
> - bus->nodes_modified = false;
> -
> - r = object_find_and_run(bus, m, m->path, false,
> &found_object);
> -@@ -1498,9 +1508,15 @@ static int bus_find_parent_object_manager(sd_bus
> *bus, struct node **out, const
> -
> - n = hashmap_get(bus->nodes, path);
> - if (!n) {
> -- char *prefix;
> -+ _cleanup_free_ char *prefix = NULL;
> -+ size_t pl;
> -+
> -+ pl = strlen(path);
> -+ assert(pl <= BUS_PATH_SIZE_MAX);
> -+ prefix = new(char, pl + 1);
> -+ if (!prefix)
> -+ return -ENOMEM;
> -
> -- prefix = newa(char, strlen(path) + 1);
> - OBJECT_PATH_FOREACH_PREFIX(prefix, path) {
> - n = hashmap_get(bus->nodes, prefix);
> - if (n)
> -@@ -2083,8 +2099,9 @@ _public_ int sd_bus_emit_properties_changed_strv(
> - const char *interface,
> - char **names) {
> -
> -+ _cleanup_free_ char *prefix = NULL;
> - bool found_interface = false;
> -- char *prefix;
> -+ size_t pl;
> - int r;
> -
> - assert_return(bus, -EINVAL);
> -@@ -2105,6 +2122,12 @@ _public_ int sd_bus_emit_properties_changed_strv(
> -
> - BUS_DONT_DESTROY(bus);
> -
> -+ pl = strlen(path);
> -+ assert(pl <= BUS_PATH_SIZE_MAX);
> -+ prefix = new(char, pl + 1);
> -+ if (!prefix)
> -+ return -ENOMEM;
> -+
> - do {
> - bus->nodes_modified = false;
> -
> -@@ -2114,7 +2137,6 @@ _public_ int sd_bus_emit_properties_changed_strv(
> - if (bus->nodes_modified)
> - continue;
> -
> -- prefix = newa(char, strlen(path) + 1);
> - OBJECT_PATH_FOREACH_PREFIX(prefix, path) {
> - r = emit_properties_changed_on_interface(bus,
> prefix, path, interface, true, &found_interface, names);
> - if (r != 0)
> -@@ -2246,7 +2268,8 @@ static int object_added_append_all_prefix(
> -
> - static int object_added_append_all(sd_bus *bus, sd_bus_message *m, const
> char *path) {
> - _cleanup_set_free_ Set *s = NULL;
> -- char *prefix;
> -+ _cleanup_free_ char *prefix = NULL;
> -+ size_t pl;
> - int r;
> -
> - assert(bus);
> -@@ -2291,7 +2314,12 @@ static int object_added_append_all(sd_bus *bus,
> sd_bus_message *m, const char *p
> - if (bus->nodes_modified)
> - return 0;
> -
> -- prefix = newa(char, strlen(path) + 1);
> -+ pl = strlen(path);
> -+ assert(pl <= BUS_PATH_SIZE_MAX);
> -+ prefix = new(char, pl + 1);
> -+ if (!prefix)
> -+ return -ENOMEM;
> -+
> - OBJECT_PATH_FOREACH_PREFIX(prefix, path) {
> - r = object_added_append_all_prefix(bus, m, s, prefix,
> path, true);
> - if (r < 0)
> -@@ -2430,7 +2458,8 @@ static int object_removed_append_all_prefix(
> -
> - static int object_removed_append_all(sd_bus *bus, sd_bus_message *m,
> const char *path) {
> - _cleanup_set_free_ Set *s = NULL;
> -- char *prefix;
> -+ _cleanup_free_ char *prefix = NULL;
> -+ size_t pl;
> - int r;
> -
> - assert(bus);
> -@@ -2462,7 +2491,12 @@ static int object_removed_append_all(sd_bus *bus,
> sd_bus_message *m, const char
> - if (bus->nodes_modified)
> - return 0;
> -
> -- prefix = newa(char, strlen(path) + 1);
> -+ pl = strlen(path);
> -+ assert(pl <= BUS_PATH_SIZE_MAX);
> -+ prefix = new(char, pl + 1);
> -+ if (!prefix)
> -+ return -ENOMEM;
> -+
> - OBJECT_PATH_FOREACH_PREFIX(prefix, path) {
> - r = object_removed_append_all_prefix(bus, m, s, prefix,
> path, true);
> - if (r < 0)
> -@@ -2612,7 +2646,8 @@ static int interfaces_added_append_one(
> - const char *path,
> - const char *interface) {
> -
> -- char *prefix;
> -+ _cleanup_free_ char *prefix = NULL;
> -+ size_t pl;
> - int r;
> -
> - assert(bus);
> -@@ -2626,7 +2661,12 @@ static int interfaces_added_append_one(
> - if (bus->nodes_modified)
> - return 0;
> -
> -- prefix = newa(char, strlen(path) + 1);
> -+ pl = strlen(path);
> -+ assert(pl <= BUS_PATH_SIZE_MAX);
> -+ prefix = new(char, pl + 1);
> -+ if (!prefix)
> -+ return -ENOMEM;
> -+
> - OBJECT_PATH_FOREACH_PREFIX(prefix, path) {
> - r = interfaces_added_append_one_prefix(bus, m, prefix,
> path, interface, true);
> - if (r != 0)
> ---
> -2.20.1
> -
> diff --git
> a/package/systemd/0004-meson-drop-misplaced-Wl-undefined-argument.patch
> b/package/systemd/0004-meson-drop-misplaced-Wl-undefined-argument.patch
> deleted file mode 100644
> index 52ef811494..0000000000
> --- a/package/systemd/0004-meson-drop-misplaced-Wl-undefined-argument.patch
> +++ /dev/null
> @@ -1,51 +0,0 @@
> -From 700805f6c546f2adb79059614f3747f7b5474325 Mon Sep 17 00:00:00 2001
> -From: Jussi Pakkanen <jpakkane at gmail.com>
> -Date: Sat, 6 Apr 2019 21:59:06 +0200
> -Subject: [PATCH] meson: drop misplaced -Wl,--undefined argument
> -
> -Ld's man page says the following:
> -
> - -u symbol
> - --undefined=symbol
> -
> - Force symbol to be entered in the output file as an undefined symbol.
> Doing
> - this may, for example, trigger linking of additional modules from
> standard
> - libraries. -u may be repeated with different option arguments to enter
> - additional undefined symbols. This option is equivalent to the "EXTERN"
> - linker script command.
> -
> - If this option is being used to force additional modules to be pulled
> into
> - the link, and if it is an error for the symbol to remain undefined,
> then the
> - option --require-defined should be used instead.
> -
> -This would imply that it always requires an argument, which this does not
> -pass. Thus it will grab the next argument on the command line as its
> -argument. Before it took one of the many -lrt args (presumably) and now it
> -grabs something other random linker argument and things break.
> -
> -[zj: this line was added in the first version of the meson configuration
> back
> -in 5c23128daba7236a6080383b2a5649033cfef85c. AFAICT, this was a mistake.
> No
> -such flag appeared in Makefile.am at the time.]
> -
> -https://github.com/mesonbuild/meson/issues/5113
> -Signed-off-by: Fabrice Fontaine <fontaine.fabrice at gmail.com>
> -[Retrieved from:
> -
> https://github.com/systemd/systemd/commit/700805f6c546f2adb79059614f3747f7b5474325
> ]
> ----
> - meson.build | 3 +--
> - 1 file changed, 1 insertion(+), 2 deletions(-)
> -
> -diff --git a/meson.build b/meson.build
> -index 287125f0107..79195c97484 100644
> ---- a/meson.build
> -+++ b/meson.build
> -@@ -1606,8 +1606,7 @@ foreach tuple : [['myhostname',
> 'ENABLE_NSS_MYHOSTNAME'],
> - # Note that we link NSS modules with '-z
> nodelete' so that mempools never get orphaned
> - link_args : ['-Wl,-z,nodelete',
> - '-shared',
> -- '-Wl,--version-script=' +
> version_script_arg,
> -- '-Wl,--undefined'],
> -+ '-Wl,--version-script=' +
> version_script_arg],
> - link_with : [libsystemd_static,
> - libbasic],
> - dependencies : [threads,
> diff --git a/package/systemd/Config.in b/package/systemd/Config.in
> index ad72a269ef..601398bf96 100644
> --- a/package/systemd/Config.in
> +++ b/package/systemd/Config.in
> @@ -161,6 +161,16 @@ config BR2_PACKAGE_SYSTEMD_COREDUMP
>
>
> http://www.freedesktop.org/software/systemd/man/systemd-coredump.html
>
> +config BR2_PACKAGE_SYSTEMD_PSTORE
> + bool "enable pstore support"
> + default y
> + help
> + When this features is enabled, additional tools and services
> + are built to support archiving contents of the persistent
> + storage filesytem.
> +
> +
> https://www.freedesktop.org/software/systemd/man/systemd-pstore.html
> +
> config BR2_PACKAGE_SYSTEMD_FIRSTBOOT
> bool "enable firstboot support"
> help
> diff --git a/package/systemd/systemd.hash b/package/systemd/systemd.hash
> index c769d48959..bc8edfcdba 100644
> --- a/package/systemd/systemd.hash
> +++ b/package/systemd/systemd.hash
> @@ -1,5 +1,5 @@
> # sha256 locally computed
> -sha256 b2561a8e1d10a2c248253f0dda31a85dd6d69f2b54177de55e02cd1d2778316e
> systemd-241.tar.gz
> +sha256 0611843c2407f8b125b1b7cb93533bdebd4ccf91c99dffa64ec61556a258c7d1
> systemd-243.tar.gz
> sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6
> LICENSE.GPL2
> sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551
> LICENSE.LGPL2.1
> sha256 d9356b277440f21730426592c27170d034a39954ab5154dfba1cc3cbf7b22935
> README
> diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk
> index b6aac6dc53..636320e079 100644
> --- a/package/systemd/systemd.mk
> +++ b/package/systemd/systemd.mk
> @@ -4,7 +4,7 @@
> #
>
> ################################################################################
>
> -SYSTEMD_VERSION = 241
> +SYSTEMD_VERSION = 243
> SYSTEMD_SITE = $(call github,systemd,systemd,v$(SYSTEMD_VERSION))
> SYSTEMD_LICENSE = LGPL-2.1+, GPL-2.0+ (udev), Public Domain (few source
> files, see README)
> SYSTEMD_LICENSE_FILES = LICENSE.GPL2 LICENSE.LGPL2.1 README
> @@ -24,7 +24,6 @@ SYSTEMD_CONF_OPTS += \
> -Dblkid=true \
> -Dman=false \
> -Dima=false \
> - -Dlibcryptsetup=false \
> -Dldconfig=false \
> -Ddefault-dnssec=no \
> -Dtests=false \
> @@ -52,6 +51,12 @@ endif
> ifeq ($(BR2_PACKAGE_AUDIT),y)
> SYSTEMD_DEPENDENCIES += audit
> SYSTEMD_CONF_OPTS += -Daudit=true
> +define SYSTEMD_INSTALL_SERVICE_AUDIT
> + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> + ln -sf ../../../../usr/lib/systemd/system/auditd.service \
> +
> $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/auditd.service
> +endef
> +
> else
> SYSTEMD_CONF_OPTS += -Daudit=false
> endif
> @@ -59,6 +64,11 @@ endif
> ifeq ($(BR2_PACKAGE_CRYPTSETUP),y)
> SYSTEMD_DEPENDENCIES += cryptsetup
> SYSTEMD_CONF_OPTS += -Dlibcryptsetup=true
> +define SYSTEMD_INSTALL_TARGET_CRYPTSETUP
> + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> + ln -sf ../../../../usr/lib/systemd/system/remote-cryptsetup.target
> \
> +
> $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/remote-cryptsetup.target
> +endef
> else
> SYSTEMD_CONF_OPTS += -Dlibcryptsetup=false
> endif
> @@ -259,6 +269,11 @@ endif
>
> ifeq ($(BR2_PACKAGE_SYSTEMD_MACHINED),y)
> SYSTEMD_CONF_OPTS += -Dmachined=true
> +define SYSTEMD_INSTALL_TARGET_MACHINED
> + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> + ln -sf ../../../../lib/systemd/system/machines.target \
> +
> $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/machines.target
> +endef
> else
> SYSTEMD_CONF_OPTS += -Dmachined=false
> endif
> @@ -300,6 +315,17 @@ else
> SYSTEMD_CONF_OPTS += -Dcoredump=false
> endif
>
> +ifeq ($(BR2_PACKAGE_SYSTEMD_PSTORE),y)
> +SYSTEMD_CONF_OPTS += -Dpstore=true
> +define SYSTEMD_INSTALL_SERVICE_PSTORE
> + mkdir -p
> $(TARGET_DIR)/etc/systemd/system/systemd-remount-fs.service.wants
> + ln -sf ../../../../lib/systemd/system/systemd-pstore.service \
> +
> $(TARGET_DIR)/etc/systemd/system/systemd-remount-fs.service.wants/systemd-pstore.service
> +endef
> +else
> +SYSTEMD_CONF_OPTS += -Dpstore=false
> +endif
> +
> ifeq ($(BR2_PACKAGE_SYSTEMD_POLKIT),y)
> SYSTEMD_CONF_OPTS += -Dpolkit=true
> SYSTEMD_DEPENDENCIES += polkit
> @@ -310,6 +336,24 @@ endif
> ifeq ($(BR2_PACKAGE_SYSTEMD_NETWORKD),y)
> SYSTEMD_CONF_OPTS += -Dnetworkd=true
> SYSTEMD_NETWORKD_USER = systemd-network -1 systemd-network -1 * - - -
> Network Manager
> +define SYSTEMD_INSTALL_SOCKET_NETWORKD
> + mkdir -p $(TARGET_DIR)/etc/systemd/system/sockets.target.wants
> + ln -sf ../../../../lib/systemd/system/systemd-networkd.socket \
> +
> $(TARGET_DIR)/etc/systemd/system/sockets.target.wants/systemd-networkd.socket
> +endef
> +define SYSTEMD_INSTALL_SERVICE_NETWORKD
> + ln -sf ../../../lib/systemd/system/systemd-networkd.service \
> +
> $(TARGET_DIR)/etc/systemd/system/dbus-org.freedesktop.network1.service
> + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> + ln -sf ../../../../lib/systemd/system/systemd-networkd.service \
> +
> $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/systemd-networkd.service
> + mkdir -p
> $(TARGET_DIR)/etc/systemd/system/network-online.target.wants
> + ln -sf
> ../../../../lib/systemd/system/systemd-networkd-wait-online.service \
> +
> $(TARGET_DIR)/etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service
> + mkdir -p $(TARGET_DIR)/etc/systemd/system/network-pre.target.wants
> + ln -sf
> ../../../../lib/systemd/system/systemd-network-generator.service \
> +
> $(TARGET_DIR)/etc/systemd/system/network-pre.target.wants/systemd-network-generator.service
> +endef
> define SYSTEMD_INSTALL_RESOLVCONF_HOOK
> ln -sf ../run/systemd/resolve/resolv.conf \
> $(TARGET_DIR)/etc/resolv.conf
> @@ -329,6 +373,13 @@ endif
> ifeq ($(BR2_PACKAGE_SYSTEMD_RESOLVED),y)
> SYSTEMD_CONF_OPTS += -Dresolve=true
> SYSTEMD_RESOLVED_USER = systemd-resolve -1 systemd-resolve -1 * - - -
> Network Name Resolution Manager
> +define SYSTEMD_INSTALL_SERVICE_RESOLVED
> + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> + ln -sf ../../../lib/systemd/system/systemd-resolved.service \
> +
> $(TARGET_DIR)/etc/systemd/system/dbus-org.freedesktop.resolve1.service
> + ln -sf ../../../../lib/systemd/system/systemd-resolved.service \
> +
> $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/systemd-resolved.service
> +endef
> else
> SYSTEMD_CONF_OPTS += -Dresolve=false
> endif
> @@ -336,10 +387,14 @@ endif
> ifeq ($(BR2_PACKAGE_SYSTEMD_TIMESYNCD),y)
> SYSTEMD_CONF_OPTS += -Dtimesyncd=true
> SYSTEMD_TIMESYNCD_USER = systemd-timesync -1 systemd-timesync -1 * - - -
> Network Time Synchronization
> -define SYSTEMD_INSTALL_SERVICE_TIMESYNC
> +define SYSTEMD_INSTALL_SERVICE_TIMESYNCD
> mkdir -p $(TARGET_DIR)/etc/systemd/system/sysinit.target.wants
> ln -sf ../../../../lib/systemd/system/systemd-timesyncd.service \
>
> $(TARGET_DIR)/etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service
> + ln -sf
> ../../../../lib/systemd/system/systemd-time-wait-sync.service \
> +
> $(TARGET_DIR)/etc/systemd/system/sysinit.target.wants/systemd-time-wait-sync.service
> + ln -sf ../../../lib/systemd/system/systemd-timesyncd.service \
> +
> $(TARGET_DIR)/etc/systemd/system/dbus-org.freedesktop.timesync1.service
> endef
> else
> SYSTEMD_CONF_OPTS += -Dtimesyncd=false
> @@ -398,6 +453,11 @@ define SYSTEMD_INSTALL_INIT_HOOK
> ln -fs ../bin/systemctl $(TARGET_DIR)/sbin/shutdown
> ln -fs ../../../lib/systemd/system/multi-user.target \
> $(TARGET_DIR)/etc/systemd/system/default.target
> + ln -fs ../../../lib/systemd/system/reboot.target \
> + $(TARGET_DIR)/etc/systemd/system/ctrl-alt-del.target
> + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
> + ln -sf ../../../../lib/systemd/system/remote-fs.target \
> +
> $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/remote-fs.target
> endef
>
> define SYSTEMD_INSTALL_MACHINEID_HOOK
> @@ -405,6 +465,9 @@ define SYSTEMD_INSTALL_MACHINEID_HOOK
> endef
>
> SYSTEMD_POST_INSTALL_TARGET_HOOKS += \
> + SYSTEMD_INSTALL_TARGET_CRYPTSETUP \
> + SYSTEMD_INSTALL_TARGET_MACHINED \
> + SYSTEMD_INSTALL_SOCKET_NETWORKD \
> SYSTEMD_INSTALL_INIT_HOOK \
> SYSTEMD_INSTALL_MACHINEID_HOOK \
> SYSTEMD_INSTALL_RESOLVCONF_HOOK
> @@ -458,11 +521,28 @@ define SYSTEMD_INSTALL_SERVICE_TTY
> endef
> endif
>
> +define SYSTEMD_INSTALL_SERVICE_AUTOVT
> + ln -sf ../../../lib/systemd/system/getty at .service \
> + $(TARGET_DIR)/lib/systemd/system/autovt at .service
> +endef
> +
> +define SYSTEMD_INSTALL_SERVICE_BOOT_CHECK
> + mkdir -p
> $(TARGET_DIR)/etc/systemd/system/boot-complete.target.requires
> + ln -sf
> ../../../../lib/systemd/system/systemd-boot-check-no-failures.service \
> +
> $(TARGET_DIR)/etc/systemd/system/boot-complete.target.requires/systemd-boot-check-no-failures.service
> +endef
> +
> define SYSTEMD_INSTALL_INIT_SYSTEMD
> $(SYSTEMD_DISABLE_SERVICE_TTY1)
> $(SYSTEMD_INSTALL_SERVICE_TTY)
> - $(SYSTEMD_INSTALL_SERVICE_TIMESYNC)
> + $(SYSTEMD_INSTALL_SERVICE_AUTOVT)
> + $(SYSTEMD_INSTALL_SERVICE_RESOLVED)
> + $(SYSTEMD_INSTALL_SERVICE_TIMESYNCD)
> $(SYSTEMD_INSTALL_NETWORK_CONFS)
> + $(SYSTEMD_INSTALL_SERVICE_PSTORE)
> + $(SYSTEMD_INSTALL_SERVICE_NETWORKD)
> + $(SYSTEMD_INSTALL_SERVICE_AUDIT)
> + $(SYSTEMD_INSTALL_SERVICE_BOOT_CHECK)
> endef
>
> SYSTEMD_CONF_ENV = $(HOST_UTF8_LOCALE_ENV)
> --
> 2.20.1
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
>
--
[image: SMILE] <http://www.smile.eu/>
20 rue des Jardins
92600 Asnières-sur-Seine
*Jérémy ROSEN*
Architecte technique
[image: email] jeremy.rosen at smile.fr
[image: phone] +33 6 88 25 87 42
[image: url] http://www.smile.eu
[image: Twitter] <https://twitter.com/GroupeSmile> [image: Facebook]
<https://www.facebook.com/smileopensource> [image: LinkedIn]
<https://www.linkedin.com/company/smile> [image: Github]
<https://github.com/Smile-SA>
[image: Découvrez l’univers Smile, rendez-vous sur smile.eu]
<https://www.smile.eu/fr/publications/livres-blancs/yocto?utm_source=signature&utm_medium=email&utm_campaign=signature>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20191026/9a92610b/attachment.html>
More information about the buildroot
mailing list