it is a maintanence burden * packages requiring libgudev are broken for months * in case of issues it caused - at least me - several hours to understand what's going on
Signed-off-by: Andreas Müller <schnitzelt...@googlemail.com> --- .../systemd/systemd/00-create-volatile.conf | 7 - ...ort-for-executing-scripts-under-etc-rcS.d.patch | 138 ------- .../systemd/0001-configure-disable-LTO.patch | 31 -- ...gind-add-support-for-Triton2-Power-Button.patch | 24 -- ...ing.h-add-fake-__NR_memfd_create-for-MIPS.patch | 29 -- ...ind-add-support-for-TPS65217-Power-Button.patch | 71 ---- ...nd-add-support-for-gpio-keys-Power-Button.patch | 57 --- .../systemd/systemd/binfmt-install.patch | 56 --- recipes-tweaks/systemd/systemd/init | 104 ------ .../systemd/systemd/optional_secure_getenv.patch | 19 - recipes-tweaks/systemd/systemd/run-ptest | 5 - .../systemd-pam-configure-check-uclibc.patch | 32 -- .../systemd/systemd/systemd-pam-fix-execvpe.patch | 29 -- .../systemd/systemd-pam-fix-fallocate.patch | 92 ----- .../systemd/systemd-pam-fix-getty-unit.patch | 35 -- .../systemd/systemd/systemd-pam-fix-mkostemp.patch | 30 -- recipes-tweaks/systemd/systemd/touchscreen.rules | 18 - .../systemd/systemd/uclibc-get-physmem.patch | 37 -- .../systemd/systemd/uclibc-sysinfo_h.patch | 19 - recipes-tweaks/systemd/systemd_216.bb | 406 --------------------- 20 files changed, 1239 deletions(-) delete mode 100644 recipes-tweaks/systemd/systemd/00-create-volatile.conf delete mode 100644 recipes-tweaks/systemd/systemd/0001-add-support-for-executing-scripts-under-etc-rcS.d.patch delete mode 100644 recipes-tweaks/systemd/systemd/0001-configure-disable-LTO.patch delete mode 100644 recipes-tweaks/systemd/systemd/0001-logind-add-support-for-Triton2-Power-Button.patch delete mode 100644 recipes-tweaks/systemd/systemd/0001-missing.h-add-fake-__NR_memfd_create-for-MIPS.patch delete mode 100644 recipes-tweaks/systemd/systemd/0002-logind-add-support-for-TPS65217-Power-Button.patch delete mode 100644 recipes-tweaks/systemd/systemd/0003-logind-add-support-for-gpio-keys-Power-Button.patch delete mode 100644 recipes-tweaks/systemd/systemd/binfmt-install.patch delete mode 100644 recipes-tweaks/systemd/systemd/init delete mode 100644 recipes-tweaks/systemd/systemd/optional_secure_getenv.patch delete mode 100644 recipes-tweaks/systemd/systemd/run-ptest delete mode 100644 recipes-tweaks/systemd/systemd/systemd-pam-configure-check-uclibc.patch delete mode 100644 recipes-tweaks/systemd/systemd/systemd-pam-fix-execvpe.patch delete mode 100644 recipes-tweaks/systemd/systemd/systemd-pam-fix-fallocate.patch delete mode 100644 recipes-tweaks/systemd/systemd/systemd-pam-fix-getty-unit.patch delete mode 100644 recipes-tweaks/systemd/systemd/systemd-pam-fix-mkostemp.patch delete mode 100644 recipes-tweaks/systemd/systemd/touchscreen.rules delete mode 100644 recipes-tweaks/systemd/systemd/uclibc-get-physmem.patch delete mode 100644 recipes-tweaks/systemd/systemd/uclibc-sysinfo_h.patch delete mode 100644 recipes-tweaks/systemd/systemd_216.bb diff --git a/recipes-tweaks/systemd/systemd/00-create-volatile.conf b/recipes-tweaks/systemd/systemd/00-create-volatile.conf deleted file mode 100644 index 9ffa88e..0000000 --- a/recipes-tweaks/systemd/systemd/00-create-volatile.conf +++ /dev/null @@ -1,7 +0,0 @@ -#This goes hand-in-hand with the base-files of OE-Core. The file must -# be sorted before 'systemd.conf' becuase this attempts to create a file -# inside /var/log. - - -d /var/volatile/log - - - - -d /var/volatile/tmp - - - - diff --git a/recipes-tweaks/systemd/systemd/0001-add-support-for-executing-scripts-under-etc-rcS.d.patch b/recipes-tweaks/systemd/systemd/0001-add-support-for-executing-scripts-under-etc-rcS.d.patch deleted file mode 100644 index 9aa07c1..0000000 --- a/recipes-tweaks/systemd/systemd/0001-add-support-for-executing-scripts-under-etc-rcS.d.patch +++ /dev/null @@ -1,138 +0,0 @@ -Upstream-Status: Inappropriate [OE specific] - -Subject: add support for executing scripts under /etc/rcS.d/ - -To be compatible, all services translated from scripts under /etc/rcS.d would -run before services translated from scripts under /etc/rcN.d. - -Signed-off-by: Chen Qi <qi.c...@windriver.com> ---- - src/sysv-generator/sysv-generator.c | 50 ++++++++++++++++++++++++++++--------- - 1 file changed, 38 insertions(+), 12 deletions(-) - -diff --git a/src/sysv-generator/sysv-generator.c b/src/sysv-generator/sysv-generator.c -index 9a869ba..10c55c0 100644 ---- a/src/sysv-generator/sysv-generator.c -+++ b/src/sysv-generator/sysv-generator.c -@@ -43,7 +43,8 @@ - - typedef enum RunlevelType { - RUNLEVEL_UP, -- RUNLEVEL_DOWN -+ RUNLEVEL_DOWN, -+ RUNLEVEL_SYSINIT - } RunlevelType; - - static const struct { -@@ -58,6 +59,9 @@ static const struct { - { "rc4.d", SPECIAL_RUNLEVEL4_TARGET, RUNLEVEL_UP }, - { "rc5.d", SPECIAL_RUNLEVEL5_TARGET, RUNLEVEL_UP }, - -+ /* Debian style rcS.d, also adopted by OE */ -+ { "rcS.d", SPECIAL_SYSINIT_TARGET, RUNLEVEL_SYSINIT}, -+ - /* Standard SysV runlevels for shutdown */ - { "rc0.d", SPECIAL_POWEROFF_TARGET, RUNLEVEL_DOWN }, - { "rc6.d", SPECIAL_REBOOT_TARGET, RUNLEVEL_DOWN } -@@ -66,7 +70,7 @@ static const struct { - directories in this order, and we want to make sure that - sysv_start_priority is known when we first load the - unit. And that value we only know from S links. Hence -- UP must be read before DOWN */ -+ UP/SYSINIT must be read before DOWN */ - }; - - typedef struct SysvStub { -@@ -82,6 +86,8 @@ typedef struct SysvStub { - char **conflicts; - bool has_lsb; - bool reload; -+ bool default_dependencies; -+ bool from_rcsd; - } SysvStub; - - const char *arg_dest = "/tmp"; -@@ -156,6 +162,9 @@ static int generate_unit_file(SysvStub *s) { - "Description=%s\n", - s->path, s->description); - -+ if (!s->default_dependencies) -+ fprintf(f, "DefaultDependencies=no\n"); -+ - if (!isempty(before)) - fprintf(f, "Before=%s\n", before); - if (!isempty(after)) -@@ -661,18 +670,30 @@ static int fix_order(SysvStub *s, Hashmap *all_services) { - if (s->has_lsb && other->has_lsb) - continue; - -- if (other->sysv_start_priority < s->sysv_start_priority) { -- r = strv_extend(&s->after, other->name); -+ /* All scripts under /etc/rcS.d should execute before scripts under -+ * /etc/rcN.d */ -+ if (!other->from_rcsd && s->from_rcsd) { -+ r = strv_extend(&s->before, other->name); - if (r < 0) - return log_oom(); -- } -- else if (other->sysv_start_priority > s->sysv_start_priority) { -- r = strv_extend(&s->before, other->name); -+ } else if (other->from_rcsd && !s->from_rcsd) { -+ r = strv_extend(&s->after, other->name); - if (r < 0) - return log_oom(); -- } -- else -- continue; -+ } else { -+ if (other->sysv_start_priority < s->sysv_start_priority) { -+ r = strv_extend(&s->after, other->name); -+ if (r < 0) -+ return log_oom(); -+ } -+ else if (other->sysv_start_priority > s->sysv_start_priority) { -+ r = strv_extend(&s->before, other->name); -+ if (r < 0) -+ return log_oom(); -+ } -+ else -+ continue; -+ } - - /* FIXME: Maybe we should compare the name here lexicographically? */ - } -@@ -725,6 +746,8 @@ static int enumerate_sysv(LookupPaths lp, Hashmap *all_services) { - return log_oom(); - - service->sysv_start_priority = -1; -+ service->default_dependencies = true; -+ service->from_rcsd = false; - service->name = name; - service->path = fpath; - -@@ -810,9 +833,11 @@ static int set_dependencies_from_rcnd(LookupPaths lp, Hashmap *all_services) { - - if (de->d_name[0] == 'S') { - -- if (rcnd_table[i].type == RUNLEVEL_UP) { -+ if (rcnd_table[i].type == RUNLEVEL_UP || rcnd_table[i].type == RUNLEVEL_SYSINIT) { - service->sysv_start_priority = - MAX(a*10 + b, service->sysv_start_priority); -+ service->default_dependencies = (rcnd_table[i].type == RUNLEVEL_SYSINIT)?false:true; -+ service->from_rcsd = (rcnd_table[i].type == RUNLEVEL_SYSINIT)?true:false; - } - - r = set_ensure_allocated(&runlevel_services[i], -@@ -825,7 +850,8 @@ static int set_dependencies_from_rcnd(LookupPaths lp, Hashmap *all_services) { - goto finish; - - } else if (de->d_name[0] == 'K' && -- (rcnd_table[i].type == RUNLEVEL_DOWN)) { -+ (rcnd_table[i].type == RUNLEVEL_DOWN || -+ rcnd_table[i].type == RUNLEVEL_SYSINIT)) { - - r = set_ensure_allocated(&shutdown_services, - trivial_hash_func, trivial_compare_func); --- -1.9.1 - diff --git a/recipes-tweaks/systemd/systemd/0001-configure-disable-LTO.patch b/recipes-tweaks/systemd/systemd/0001-configure-disable-LTO.patch deleted file mode 100644 index 99f15bc..0000000 --- a/recipes-tweaks/systemd/systemd/0001-configure-disable-LTO.patch +++ /dev/null @@ -1,31 +0,0 @@ -From a8c1816f2be50d8bf371f911ca093e09638fa404 Mon Sep 17 00:00:00 2001 -From: Koen Kooi <k...@dominion.thruhere.net> -Date: Thu, 24 Jul 2014 07:28:27 +0200 -Subject: [PATCH] configure: disable LTO - -Some compilers (e.g. linux gcc 4.9) can't handle it, so disable it. - -Upstream-Status: Pending -Signed-off-by: Koen Kooi <k...@dominion.thruhere.net> ---- - configure.ac | 4 ---- - 1 file changed, 4 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 43b6eef..68006b5 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -199,10 +199,6 @@ CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\ - -fstack-protector-strong \ - -fPIE \ - --param=ssp-buffer-size=4]) --AS_CASE([$CFLAGS], [*-O[[12345\ ]]*], -- [CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\ -- -flto -ffat-lto-objects])], -- [AC_MSG_RESULT([skipping -flto, optimization not enabled])]) - AC_SUBST([OUR_CFLAGS], "$with_cflags $sanitizer_cflags") - - AS_CASE([$CFLAGS], [*-O[[12345\ ]]*], --- -1.9.0 - diff --git a/recipes-tweaks/systemd/systemd/0001-logind-add-support-for-Triton2-Power-Button.patch b/recipes-tweaks/systemd/systemd/0001-logind-add-support-for-Triton2-Power-Button.patch deleted file mode 100644 index 5716914..0000000 --- a/recipes-tweaks/systemd/systemd/0001-logind-add-support-for-Triton2-Power-Button.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 58d4aabedd415a735efeb8c2608ee73618c07f78 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbys...@in.waw.pl> -Date: Mon, 22 Sep 2014 22:14:39 -0400 -Subject: [PATCH 1/3] logind: add support for Triton2 Power Button - -https://bugs.freedesktop.org/show_bug.cgi?id=84201 ---- - src/login/70-power-switch.rules | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/login/70-power-switch.rules b/src/login/70-power-switch.rules -index 36fb827..a6997f7 100644 ---- a/src/login/70-power-switch.rules -+++ b/src/login/70-power-switch.rules -@@ -9,5 +9,6 @@ ACTION=="remove", GOTO="power_switch_end" - - SUBSYSTEM=="input", KERNEL=="event*", SUBSYSTEMS=="acpi", TAG+="power-switch" - SUBSYSTEM=="input", KERNEL=="event*", KERNELS=="thinkpad_acpi", TAG+="power-switch" -+SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="twl4030_pwrbutton", TAG+="power-switch" - - LABEL="power_switch_end" --- -1.9.0 - diff --git a/recipes-tweaks/systemd/systemd/0001-missing.h-add-fake-__NR_memfd_create-for-MIPS.patch b/recipes-tweaks/systemd/systemd/0001-missing.h-add-fake-__NR_memfd_create-for-MIPS.patch deleted file mode 100644 index 448ef1a..0000000 --- a/recipes-tweaks/systemd/systemd/0001-missing.h-add-fake-__NR_memfd_create-for-MIPS.patch +++ /dev/null @@ -1,29 +0,0 @@ -Upstream-Status: Backport - -Subject: missing.h: add fake __NR_memfd_create for MIPS - -We don't have the correct __NR_memfd_create syscall number yet, so set it to -0xffffffff for now to prevent compile time errors. - -Signed-off-by: Chen Qi <qi.c...@windriver.com> ---- - src/shared/missing.h | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/shared/missing.h b/src/shared/missing.h -index 3ff1a21..3051cb5 100644 ---- a/src/shared/missing.h -+++ b/src/shared/missing.h -@@ -167,6 +167,9 @@ static inline int pivot_root(const char *new_root, const char *put_old) { - # define __NR_fanotify_mark 5296 - # endif - # endif -+# ifndef __NR_memfd_create -+# define __NR_memfd_create 0xffffffff /* FIXME */ -+# endif - #else - # ifndef __NR_fanotify_init - # define __NR_fanotify_init 338 --- -1.9.1 - diff --git a/recipes-tweaks/systemd/systemd/0002-logind-add-support-for-TPS65217-Power-Button.patch b/recipes-tweaks/systemd/systemd/0002-logind-add-support-for-TPS65217-Power-Button.patch deleted file mode 100644 index 4c06a39..0000000 --- a/recipes-tweaks/systemd/systemd/0002-logind-add-support-for-TPS65217-Power-Button.patch +++ /dev/null @@ -1,71 +0,0 @@ -From 0c22189a9ecdff5bb38f9ea362caeea9e3902414 Mon Sep 17 00:00:00 2001 -From: Koen Kooi <k...@dominion.thruhere.net> -Date: Sat, 27 Sep 2014 09:48:29 +0200 -Subject: [PATCH 2/3] logind: add support for TPS65217 Power Button - -This PMIC is found on TI AM335x based boards like the beaglebone and -beaglebone black. - -root@beaglebone-white:~# udevadm info -a /dev/input/event0 - -Udevadm info starts with the device specified by the devpath and then -walks up the chain of parent devices. It prints for every device -found, all possible attributes in the udev rules key format. -A rule to match, can be composed by the attributes of the device -and the attributes from one single parent device. - - looking at device -'/devices/ocp.3/44e0b000.i2c/i2c-0/0-0024/input/input0/event0': - KERNEL=="event0" - SUBSYSTEM=="input" - DRIVER=="" - - looking at parent device -'/devices/ocp.3/44e0b000.i2c/i2c-0/0-0024/input/input0': - KERNELS=="input0" - SUBSYSTEMS=="input" - DRIVERS=="" - ATTRS{name}=="tps65217_pwr_but" - ATTRS{phys}=="" - ATTRS{uniq}=="" - ATTRS{properties}=="0" - - looking at parent device '/devices/ocp.3/44e0b000.i2c/i2c-0/0-0024': - KERNELS=="0-0024" - SUBSYSTEMS=="i2c" - DRIVERS=="tps65217" - ATTRS{name}=="tps65217" - - looking at parent device '/devices/ocp.3/44e0b000.i2c/i2c-0': - KERNELS=="i2c-0" - SUBSYSTEMS=="i2c" - DRIVERS=="" - ATTRS{name}=="OMAP I2C adapter" - - looking at parent device '/devices/ocp.3/44e0b000.i2c': - KERNELS=="44e0b000.i2c" - SUBSYSTEMS=="platform" - DRIVERS=="omap_i2c" - - looking at parent device '/devices/ocp.3': - KERNELS=="ocp.3" - SUBSYSTEMS=="platform" - DRIVERS=="" ---- - src/login/70-power-switch.rules | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/login/70-power-switch.rules b/src/login/70-power-switch.rules -index a6997f7..695d246 100644 ---- a/src/login/70-power-switch.rules -+++ b/src/login/70-power-switch.rules -@@ -10,5 +10,6 @@ ACTION=="remove", GOTO="power_switch_end" - SUBSYSTEM=="input", KERNEL=="event*", SUBSYSTEMS=="acpi", TAG+="power-switch" - SUBSYSTEM=="input", KERNEL=="event*", KERNELS=="thinkpad_acpi", TAG+="power-switch" - SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="twl4030_pwrbutton", TAG+="power-switch" -+SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="tps65217_pwr_but", TAG+="power-switch" - - LABEL="power_switch_end" --- -1.9.0 - diff --git a/recipes-tweaks/systemd/systemd/0003-logind-add-support-for-gpio-keys-Power-Button.patch b/recipes-tweaks/systemd/systemd/0003-logind-add-support-for-gpio-keys-Power-Button.patch deleted file mode 100644 index 947a591..0000000 --- a/recipes-tweaks/systemd/systemd/0003-logind-add-support-for-gpio-keys-Power-Button.patch +++ /dev/null @@ -1,57 +0,0 @@ -From c7f5cc647cd31c25e3beb66bf060160e084edd05 Mon Sep 17 00:00:00 2001 -From: Koen Kooi <k...@dominion.thruhere.net> -Date: Sat, 27 Sep 2014 09:50:57 +0200 -Subject: [PATCH 3/3] logind: add support for gpio-keys Power Button - -This might be too broad since it will listen on *all* gpio-keys based -input devices for a power button press, but such is life. - -root@arietta-g25:~# udevadm info -a /dev/input/event0 - -Udevadm info starts with the device specified by the devpath and then -walks up the chain of parent devices. It prints for every device -found, all possible attributes in the udev rules key format. -A rule to match, can be composed by the attributes of the device -and the attributes from one single parent device. - - looking at device '/devices/keys/input/input0/event0': - KERNEL=="event0" - SUBSYSTEM=="input" - DRIVER=="" - - looking at parent device '/devices/keys/input/input0': - KERNELS=="input0" - SUBSYSTEMS=="input" - DRIVERS=="" - ATTRS{name}=="keys" - ATTRS{phys}=="gpio-keys/input0" - ATTRS{uniq}=="" - ATTRS{properties}=="0" - - looking at parent device '/devices/keys': - KERNELS=="keys" - SUBSYSTEMS=="platform" - DRIVERS=="gpio-keys" - ATTRS{keys}=="116" - ATTRS{switches}=="" - ATTRS{driver_override}=="(null)" - ATTRS{disabled_keys}=="" - ATTRS{disabled_switches}=="" ---- - src/login/70-power-switch.rules | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/login/70-power-switch.rules b/src/login/70-power-switch.rules -index 695d246..7bbe096 100644 ---- a/src/login/70-power-switch.rules -+++ b/src/login/70-power-switch.rules -@@ -11,5 +11,6 @@ SUBSYSTEM=="input", KERNEL=="event*", SUBSYSTEMS=="acpi", TAG+="power-switch" - SUBSYSTEM=="input", KERNEL=="event*", KERNELS=="thinkpad_acpi", TAG+="power-switch" - SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="twl4030_pwrbutton", TAG+="power-switch" - SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="tps65217_pwr_but", TAG+="power-switch" -+SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="keys", TAG+="power-switch" - - LABEL="power_switch_end" --- -1.9.0 - diff --git a/recipes-tweaks/systemd/systemd/binfmt-install.patch b/recipes-tweaks/systemd/systemd/binfmt-install.patch deleted file mode 100644 index c2d5099..0000000 --- a/recipes-tweaks/systemd/systemd/binfmt-install.patch +++ /dev/null @@ -1,56 +0,0 @@ -Don't install dependency links at install time for the binfmt services, use -[Install] blocks so that they get created when the service is enabled like a -traditional service. - -The [Install] blocks were rejected upstream as they don't have a way to "enable" -it on install without static symlinks which can't be disabled, only masked. We -however can do that in a postinst. - -Upstream-Status: Denied -Signed-off-by: Ross Burton <ross.bur...@intel.com> - -diff --git a/Makefile.am b/Makefile.am -index 7933de6..78acb6f 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -3133,10 +3133,6 @@ INSTALL_DIRS += \ - $(prefix)/lib/binfmt.d \ - $(sysconfdir)/binfmt.d - --SYSINIT_TARGET_WANTS += \ -- systemd-binfmt.service \ -- proc-sys-fs-binfmt_misc.automount -- - endif - - EXTRA_DIST += \ -diff --git a/units/proc-sys-fs-binfmt_misc.automount b/units/proc-sys-fs-binfmt_misc.automount -index 6be3893..709adef 100644 ---- a/units/proc-sys-fs-binfmt_misc.automount -+++ b/units/proc-sys-fs-binfmt_misc.automount -@@ -16,3 +16,6 @@ ConditionPathIsReadWrite=/proc/sys/ - - [Automount] - Where=/proc/sys/fs/binfmt_misc -+ -+[Install] -+WantedBy=sysinit.target -diff --git a/units/systemd-binfmt.service.in b/units/systemd-binfmt.service.in -index 02dfe77..86d3481 100644 ---- a/units/systemd-binfmt.service.in -+++ b/units/systemd-binfmt.service.in -@@ -11,6 +11,7 @@ Documentation=man:systemd-binfmt.service(8) man:binfmt.d(5) - Documentation=https://www.kernel.org/doc/Documentation/binfmt_misc.txt - DefaultDependencies=no - Conflicts=shutdown.target -+Wants=proc-sys-fs-binfmt_misc.automount - After=systemd-readahead-collect.service systemd-readahead-replay.service proc-sys-fs-binfmt_misc.automount - Before=sysinit.target shutdown.target - ConditionPathIsReadWrite=/proc/sys/ -@@ -24,3 +25,6 @@ ConditionDirectoryNotEmpty=|/run/binfmt.d - Type=oneshot - RemainAfterExit=yes - ExecStart=@rootlibexecdir@/systemd-binfmt -+ -+[Install] -+WantedBy=sysinit.target diff --git a/recipes-tweaks/systemd/systemd/init b/recipes-tweaks/systemd/systemd/init deleted file mode 100644 index ea52be4..0000000 --- a/recipes-tweaks/systemd/systemd/init +++ /dev/null @@ -1,104 +0,0 @@ -#!/bin/sh - -### BEGIN INIT INFO -# Provides: udev -# Required-Start: mountvirtfs -# Required-Stop: -# Default-Start: S -# Default-Stop: -# Short-Description: Start udevd, populate /dev and load drivers. -### END INIT INFO - -. /etc/init.d/functions - -export TZ=/etc/localtime - -[ -d /sys/class ] || exit 1 -[ -r /proc/mounts ] || exit 1 -[ -x @UDEVD@ ] || exit 1 -[ -f /etc/default/udev-cache ] && . /etc/default/udev-cache -[ -f /etc/udev/udev.conf ] && . /etc/udev/udev.conf - -readfile () { - filename=$1 - READDATA="" - if [ -r $filename ]; then - while read line; do - READDATA="$READDATA$line" - done < $filename - fi -} - -case "$1" in - start) - export ACTION=add - # propagate /dev from /sys - echo "Starting udev" - - # mount the devtmpfs on /dev, if not already done - LANG=C awk '$2 == "/dev" && ($3 == "devtmpfs") { exit 1 }' /proc/mounts && { - mount -n -o mode=0755 -t devtmpfs none "/dev" - } - [ -e /dev/pts ] || mkdir -m 0755 /dev/pts - [ -e /dev/shm ] || mkdir -m 1777 /dev/shm - mount -a -t tmpfs 2>/dev/null - - # cache handling - if [ "$DEVCACHE" != "" ]; then - readfile /proc/version - VERSION="$READDATA" - readfile /proc/cmdline - CMDLINE="$READDATA" - readfile /proc/devices - DEVICES="$READDATA" - readfile /proc/atags - ATAGS="$READDATA" - - if [ -e $DEVCACHE ]; then - readfile /etc/udev/cache.data - if [ "$READDATA" = "$VERSION$CMDLINE$DEVICES$ATAGS" ]; then - (cd /; tar xf $DEVCACHE > /dev/null 2>&1) - not_first_boot=1 - [ "$VERBOSE" != "no" ] && echo "udev: using cache file $DEVCACHE" - [ -e /dev/shm/udev.cache ] && rm -f /dev/shm/udev.cache - else - echo "$VERSION$CMDLINE$DEVICES$ATAGS" > /dev/shm/udev.cache - fi - else - echo "$VERSION$CMDLINE$DEVICES$ATAGS" > /dev/shm/udev.cache - fi - fi - - # make_extra_nodes - killproc systemd-udevd > "/dev/null" 2>&1 - - # trigger the sorted events - echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug - @UDEVD@ -d - - udevadm control --env=STARTUP=1 - if [ "$not_first_boot" != "" ];then - udevadm trigger --action=add --subsystem-nomatch=tty --subsystem-nomatch=mem --subsystem-nomatch=vc --subsystem-nomatch=vtconsole --subsystem-nomatch=misc --subsystem-nomatch=dcon --subsystem-nomatch=pci_bus --subsystem-nomatch=graphics --subsystem-nomatch=backlight --subsystem-nomatch=video4linux --subsystem-nomatch=platform - (udevadm settle --timeout=3; udevadm control --env=STARTUP=)& - else - udevadm trigger --action=add - udevadm settle - fi - ;; - stop) - echo "Stopping udevd" - start-stop-daemon --stop --name systemd-udevd --quiet - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - status) - status systemd-udevd - ;; - *) - echo "Usage: $0 {start|stop|status|restart}" - exit 1 -esac -exit 0 diff --git a/recipes-tweaks/systemd/systemd/optional_secure_getenv.patch b/recipes-tweaks/systemd/systemd/optional_secure_getenv.patch deleted file mode 100644 index 2063268..0000000 --- a/recipes-tweaks/systemd/systemd/optional_secure_getenv.patch +++ /dev/null @@ -1,19 +0,0 @@ -on uclibc secure_getenv is not available -therefore default to using getenv instead - -Upstream-Status: Denied [no desire for uclibc support] -Signed-off-by: Khem Raj <raj.k...@gmail.com> - -Index: git/src/shared/missing.h -=================================================================== ---- git.orig/src/shared/missing.h 2012-09-22 18:46:44.141282145 -0700 -+++ git/src/shared/missing.h 2012-09-22 18:48:44.081276570 -0700 -@@ -233,6 +233,8 @@ - #ifndef HAVE_SECURE_GETENV - # ifdef HAVE___SECURE_GETENV - # define secure_getenv __secure_getenv -+# elif defined __UCLIBC__ -+# define secure_getenv getenv - # else - # error neither secure_getenv nor __secure_getenv are available - # endif diff --git a/recipes-tweaks/systemd/systemd/run-ptest b/recipes-tweaks/systemd/systemd/run-ptest deleted file mode 100644 index a2d61c2..0000000 --- a/recipes-tweaks/systemd/systemd/run-ptest +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -tar -C test -xJf test/sys.tar.xz -make test/rules-test.sh.log -make test/udev-test.pl.log diff --git a/recipes-tweaks/systemd/systemd/systemd-pam-configure-check-uclibc.patch b/recipes-tweaks/systemd/systemd/systemd-pam-configure-check-uclibc.patch deleted file mode 100644 index 4639532..0000000 --- a/recipes-tweaks/systemd/systemd/systemd-pam-configure-check-uclibc.patch +++ /dev/null @@ -1,32 +0,0 @@ -Upstream-Status: Denied [no desire for uclibc support] -Signed-off-by: Khem Raj <raj.k...@gmail.com> - -Index: git/configure.ac -=================================================================== ---- git.orig/configure.ac 2014-03-15 17:53:51.756340454 -0700 -+++ git/configure.ac 2014-03-15 18:07:34.888355897 -0700 -@@ -78,6 +78,24 @@ - - M4_DEFINES= - -+# check for few functions not implemented in uClibc -+ -+AC_CHECK_FUNCS_ONCE(mkostemp execvpe posix_fallocate) -+ -+# check for %ms format support - assume always no if cross compiling -+ -+AC_MSG_CHECKING([whether %ms format is supported by *scanf]) -+ -+AC_LINK_IFELSE( -+ [AC_LANG_PROGRAM([ -+ #include <stdio.h> -+ ],[ -+ char *buf1, *buf2, *buf3, str="1 2.3 abcde" ; -+ int rc = sscanf(str, "%ms %ms %ms", &buf1, &buf2, &buf3) ; -+ return (rc==3)?0:1;])], -+ [AC_DEFINE([HAVE_MSFORMAT], [1], [Define if %ms format is supported by *scanf.])], -+ [AC_MSG_RESULT([no])]) -+ - # gtkdocize greps for '^GTK_DOC_CHECK', so it needs to be on its own line - m4_ifdef([GTK_DOC_CHECK], [ - GTK_DOC_CHECK([1.18],[--flavour no-tmpl])], diff --git a/recipes-tweaks/systemd/systemd/systemd-pam-fix-execvpe.patch b/recipes-tweaks/systemd/systemd/systemd-pam-fix-execvpe.patch deleted file mode 100644 index 7170a38..0000000 --- a/recipes-tweaks/systemd/systemd/systemd-pam-fix-execvpe.patch +++ /dev/null @@ -1,29 +0,0 @@ -Upstream-Status: Denied [no desire for uclibc support] -Signed-off-by: Khem Raj <raj.k...@gmail.com> - -Index: systemd-209/src/nspawn/nspawn.c -=================================================================== ---- systemd-209.orig/src/nspawn/nspawn.c 2014-02-19 15:03:09.000000000 -0800 -+++ systemd-209/src/nspawn/nspawn.c 2014-02-19 23:20:38.720628627 -0800 -@@ -91,6 +91,8 @@ - LINK_GUEST - } LinkJournal; - -+#include "config.h" -+ - static char *arg_directory = NULL; - static char *arg_user = NULL; - static sd_id128_t arg_uuid = {}; -@@ -2045,7 +2047,12 @@ - a[0] = (char*) "/sbin/init"; - execve(a[0], a, env_use); - } else if (argc > optind) -+#ifdef HAVE_EXECVPE - execvpe(argv[optind], argv + optind, env_use); -+#else -+ environ = env_use; -+ execvp(argv[optind], argv + optind); -+#endif /* HAVE_EXECVPE */ - else { - chdir(home ? home : "/root"); - execle("/bin/bash", "-bash", NULL, env_use); diff --git a/recipes-tweaks/systemd/systemd/systemd-pam-fix-fallocate.patch b/recipes-tweaks/systemd/systemd/systemd-pam-fix-fallocate.patch deleted file mode 100644 index f8e19ce..0000000 --- a/recipes-tweaks/systemd/systemd/systemd-pam-fix-fallocate.patch +++ /dev/null @@ -1,92 +0,0 @@ -Upstream-Status: Denied [no desire for uclibc support] - -This patch is uclibc specific, thus not suitable for upstream. - -Signed-off-by: Khem Raj <raj.k...@gmail.com> -Signed-off-by: Chen Qi <qi.c...@windriver.com> ---- - src/journal/journal-file.c | 16 +++++++++++++++- - src/journal/journald-kmsg.c | 16 ++++++++++++++-- - 2 files changed, 29 insertions(+), 3 deletions(-) - -diff --git a/src/journal/journal-file.c b/src/journal/journal-file.c -index f2f1f35..092f87b 100644 ---- a/src/journal/journal-file.c -+++ b/src/journal/journal-file.c -@@ -38,6 +38,8 @@ - #include "compress.h" - #include "fsprg.h" - -+#include "config.h" -+ - #define DEFAULT_DATA_HASH_TABLE_SIZE (2047ULL*sizeof(HashItem)) - #define DEFAULT_FIELD_HASH_TABLE_SIZE (333ULL*sizeof(HashItem)) - -@@ -314,7 +316,7 @@ static int journal_file_verify_header(JournalFile *f) { - - static int journal_file_allocate(JournalFile *f, uint64_t offset, uint64_t size) { - uint64_t old_size, new_size; -- int r; -+ int r = 0; - - assert(f); - -@@ -362,9 +364,21 @@ static int journal_file_allocate(JournalFile *f, uint64_t offset, uint64_t size) - /* Note that the glibc fallocate() fallback is very - inefficient, hence we try to minimize the allocation area - as we can. */ -+#ifdef HAVE_POSIX_FALLOCATE - r = posix_fallocate(f->fd, old_size, new_size - old_size); - if (r != 0) - return -r; -+#else -+ /* Write something every 512 bytes to make sure the block is allocated */ -+ uint64_t len = new_size - old_size; -+ uint64_t offset = old_size; -+ for (offset += (len-1) % 512; len > 0; offset += 512) { -+ len -= 512; -+ if (pwrite(f->fd, "", 1, offset) != 1) -+ return -errno; -+ } -+ -+#endif /* HAVE_POSIX_FALLOCATE */ - - if (fstat(f->fd, &f->last_stat) < 0) - return -errno; -diff --git a/src/journal/journald-kmsg.c b/src/journal/journald-kmsg.c -index 12992e7..dc4fa93 100644 ---- a/src/journal/journald-kmsg.c -+++ b/src/journal/journald-kmsg.c -@@ -437,6 +437,7 @@ fail: - int server_open_kernel_seqnum(Server *s) { - _cleanup_close_ int fd; - uint64_t *p; -+ int r = 0; - - assert(s); - -@@ -449,8 +450,19 @@ int server_open_kernel_seqnum(Server *s) { - log_error("Failed to open /run/systemd/journal/kernel-seqnum, ignoring: %m"); - return 0; - } -- -- if (posix_fallocate(fd, 0, sizeof(uint64_t)) < 0) { -+#ifdef HAVE_POSIX_FALLOCATE -+ r = posix_fallocate(fd, 0, sizeof(uint64_t)); -+#else -+ /* Use good old method to write zeros into the journal file -+ perhaps very inefficient yet working. */ -+ char *buf = alloca(sizeof(uint64_t)); -+ off_t oldpos = lseek(fd, 0, SEEK_CUR); -+ bzero(buf, sizeof(uint64_t)); -+ lseek(fd, 0, SEEK_SET); -+ r = write(fd, buf, sizeof(uint64_t)); -+ lseek(fd, oldpos, SEEK_SET); -+#endif /* HAVE_POSIX_FALLOCATE */ -+ if (r < 0) { - log_error("Failed to allocate sequential number file, ignoring: %m"); - return 0; - } --- -1.7.9.5 - diff --git a/recipes-tweaks/systemd/systemd/systemd-pam-fix-getty-unit.patch b/recipes-tweaks/systemd/systemd/systemd-pam-fix-getty-unit.patch deleted file mode 100644 index 9b4c940..0000000 --- a/recipes-tweaks/systemd/systemd/systemd-pam-fix-getty-unit.patch +++ /dev/null @@ -1,35 +0,0 @@ -Prefer getty to agetty in console setup systemd units - -Upstream-Status: Inappropriate [configuration specific] -Signed-off-by: Maxime Ripard <maxime.rip...@free-electrons.com> ---- - units/getty@.service.m4 | 2 +- - units/serial-getty@.service.m4 | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -Index: git/units/getty@.service.m4 -=================================================================== ---- git.orig/units/getty@.service.m4 2014-03-15 08:16:17.000000000 -0700 -+++ git/units/getty@.service.m4 2014-03-15 08:21:11.007695825 -0700 -@@ -27,7 +27,7 @@ - - [Service] - # the VT is cleared by TTYVTDisallocate --ExecStart=-/sbin/agetty --noclear %I $TERM -+ExecStart=-/sbin/getty -L %I $TERM - Type=idle - Restart=always - RestartSec=0 -Index: git/units/serial-getty@.service.m4 -=================================================================== ---- git.orig/units/serial-getty@.service.m4 2014-03-15 08:16:17.000000000 -0700 -+++ git/units/serial-getty@.service.m4 2014-03-15 08:22:31.291697331 -0700 -@@ -22,7 +22,7 @@ - IgnoreOnIsolate=yes - - [Service] --ExecStart=-/sbin/agetty --keep-baud 115200,38400,9600 %I $TERM -+ExecStart=-/sbin/getty -L 115200 %I $TERM - Type=idle - Restart=always - RestartSec=0 diff --git a/recipes-tweaks/systemd/systemd/systemd-pam-fix-mkostemp.patch b/recipes-tweaks/systemd/systemd/systemd-pam-fix-mkostemp.patch deleted file mode 100644 index 8c7aa07..0000000 --- a/recipes-tweaks/systemd/systemd/systemd-pam-fix-mkostemp.patch +++ /dev/null @@ -1,30 +0,0 @@ -Upstream-Status: Denied [no desire for uclibc support] -Signed-off-by: Khem Raj <raj.k...@gmail.com> - -Index: git/src/shared/util.c -=================================================================== ---- git.orig/src/shared/util.c 2014-03-15 15:14:21.368160908 -0700 -+++ git/src/shared/util.c 2014-03-15 15:44:21.988194688 -0700 -@@ -85,6 +85,8 @@ - #include "def.h" - #include "missing.h" - -+#include "config.h" -+ - int saved_argc = 0; - char **saved_argv = NULL; - -@@ -6222,7 +6224,13 @@ - - u = umask(077); - -+#ifdef HAVE_MKOSTEMP - fd = mkostemp(pattern, flags); -+#else -+ fd = mkstemp(pattern); -+ if (fd >= 0) fcntl(fd, F_SETFD, flags); -+#endif /* HAVE_MKOSTEMP */ -+ - if (fd < 0) - return -errno; - diff --git a/recipes-tweaks/systemd/systemd/touchscreen.rules b/recipes-tweaks/systemd/systemd/touchscreen.rules deleted file mode 100644 index d83fd16..0000000 --- a/recipes-tweaks/systemd/systemd/touchscreen.rules +++ /dev/null @@ -1,18 +0,0 @@ -# There are a number of modifiers that are allowed to be used in some -# of the different fields. They provide the following subsitutions: -# -# %n the "kernel number" of the device. -# For example, 'sda3' has a "kernel number" of '3' -# %e the smallest number for that name which does not matches an existing node -# %k the kernel name for the device -# %M the kernel major number for the device -# %m the kernel minor number for the device -# %b the bus id for the device -# %c the string returned by the PROGRAM -# %s{filename} the content of a sysfs attribute -# %% the '%' char itself -# - -# Create a symlink to any touchscreen input device -SUBSYSTEM=="input", KERNEL=="event[0-9]*", ATTRS{modalias}=="input:*-e0*,3,*a0,1,*18,*", SYMLINK+="input/touchscreen0" -SUBSYSTEM=="input", KERNEL=="event[0-9]*", ATTRS{modalias}=="ads7846", SYMLINK+="input/touchscreen0" diff --git a/recipes-tweaks/systemd/systemd/uclibc-get-physmem.patch b/recipes-tweaks/systemd/systemd/uclibc-get-physmem.patch deleted file mode 100644 index 39dfc9e..0000000 --- a/recipes-tweaks/systemd/systemd/uclibc-get-physmem.patch +++ /dev/null @@ -1,37 +0,0 @@ -bypass unimplemented _SC_PHYS_PAGES system configuration API in uclibc - -Upstream-Status: Inappropriate [uclibc-specific] - -Signed-off-by: Khem Raj <raj.k...@gmail.com> - -Index: git/src/shared/util.c -=================================================================== ---- git.orig/src/shared/util.c 2014-03-15 18:09:34.796358146 -0700 -+++ git/src/shared/util.c 2014-03-15 20:16:33.836501084 -0700 -@@ -6332,11 +6332,24 @@ - - /* We return this as uint64_t in case we are running as 32bit - * process on a 64bit kernel with huge amounts of memory */ -- -+#ifdef __UCLIBC__ -+ char line[128]; -+ FILE *f = fopen("/proc/meminfo", "r"); -+ if (f == NULL) -+ return 0; -+ while (!feof(f) && fgets(line, sizeof(line)-1, f)) { -+ if (sscanf(line, "MemTotal: %l kB", &mem) == 1) { -+ mem *= 1024; -+ break; -+ } -+ } -+ fclose(f); -+ return (uint64_t) mem; -+#else - mem = sysconf(_SC_PHYS_PAGES); - assert(mem > 0); -- - return (uint64_t) mem * (uint64_t) page_size(); -+#endif - } - - char* mount_test_option(const char *haystack, const char *needle) { diff --git a/recipes-tweaks/systemd/systemd/uclibc-sysinfo_h.patch b/recipes-tweaks/systemd/systemd/uclibc-sysinfo_h.patch deleted file mode 100644 index 15645de..0000000 --- a/recipes-tweaks/systemd/systemd/uclibc-sysinfo_h.patch +++ /dev/null @@ -1,19 +0,0 @@ -Dont include sys/sysinfo.h on uclibc it conflicts with linux/sysinfo.h - -Signed-off-by: Khem Raj <raj.k...@gmail.com> -Upstream-Status: Inappropriate [uclibc specific] - -Index: systemd-209/src/readahead/readahead-common.c -=================================================================== ---- systemd-209.orig/src/readahead/readahead-common.c 2014-02-12 18:42:33.810685053 -0800 -+++ systemd-209/src/readahead/readahead-common.c 2014-02-19 23:49:31.856661142 -0800 -@@ -22,7 +22,9 @@ - #include <errno.h> - #include <stdlib.h> - #include <string.h> -+#ifndef __UCLIBC__ - #include <sys/sysinfo.h> -+#endif - #include <sys/inotify.h> - #include <fcntl.h> - #include <sys/mman.h> diff --git a/recipes-tweaks/systemd/systemd_216.bb b/recipes-tweaks/systemd/systemd_216.bb deleted file mode 100644 index f42831f..0000000 --- a/recipes-tweaks/systemd/systemd_216.bb +++ /dev/null @@ -1,406 +0,0 @@ -SUMMARY = "System and service manager for Linux, replacing SysVinit" -HOMEPAGE = "http://www.freedesktop.org/wiki/Software/systemd" - -LICENSE = "GPLv2 & LGPLv2.1 & MIT" -LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \ - file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c \ - file://LICENSE.MIT;md5=544799d0b492f119fa04641d1b8868ed" - -PROVIDES = "udev" - -PE = "1" - -DEPENDS = "kmod docbook-sgml-dtd-4.1-native intltool-native gperf-native acl readline dbus libcap libcgroup glib-2.0 qemu-native" -DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" - -SECTION = "base/shell" - -inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives qemu systemd ptest gettext - -SRCREV = "5d0ae62c665262c4c55536457e84e278c252cc0b" - -PV = "216+git${SRCPV}" - -SRC_URI = "git://anongit.freedesktop.org/systemd/systemd;branch=master;protocol=git \ - file://binfmt-install.patch \ - file://systemd-pam-configure-check-uclibc.patch \ - file://systemd-pam-fix-execvpe.patch \ - file://systemd-pam-fix-fallocate.patch \ - file://systemd-pam-fix-mkostemp.patch \ - file://optional_secure_getenv.patch \ - file://uclibc-sysinfo_h.patch \ - file://uclibc-get-physmem.patch \ - file://0001-add-support-for-executing-scripts-under-etc-rcS.d.patch \ - file://0001-missing.h-add-fake-__NR_memfd_create-for-MIPS.patch \ - file://0001-configure-disable-LTO.patch \ - file://0001-logind-add-support-for-Triton2-Power-Button.patch \ - file://0002-logind-add-support-for-TPS65217-Power-Button.patch \ - file://0003-logind-add-support-for-gpio-keys-Power-Button.patch \ - file://touchscreen.rules \ - file://00-create-volatile.conf \ - file://init \ - file://run-ptest \ - " - -S = "${WORKDIR}/git" - -SRC_URI_append_libc-uclibc = "\ - file://systemd-pam-fix-getty-unit.patch \ - " -LDFLAGS_append_libc-uclibc = " -lrt" - -GTKDOC_DOCDIR = "${S}/docs/" - -PACKAGECONFIG ??= "xz resolved networkd" -PACKAGECONFIG[journal-upload] = "--enable-libcurl,--disable-libcurl,curl" -# Sign the journal for anti-tampering -PACKAGECONFIG[gcrypt] = "--enable-gcrypt,--disable-gcrypt,libgcrypt" -# regardless of PACKAGECONFIG, libgcrypt is always required to expand -# the AM_PATH_LIBGCRYPT autoconf macro -DEPENDS += "libgcrypt" -# Compress the journal -PACKAGECONFIG[xz] = "--enable-xz,--disable-xz,xz" -PACKAGECONFIG[cryptsetup] = "--enable-libcryptsetup,--disable-libcryptsetup,cryptsetup" -PACKAGECONFIG[microhttpd] = "--enable-microhttpd,--disable-microhttpd,libmicrohttpd" -PACKAGECONFIG[elfutils] = "--enable-elfutils,--disable-elfutils,elfutils" -PACKAGECONFIG[resolved] = "--enable-resolved,--disable-resolved" -PACKAGECONFIG[networkd] = "--enable-networkd,--disable-networkd" - -CACHED_CONFIGUREVARS = "ac_cv_path_KILL=${base_bindir}/kill" - -# Helper variables to clarify locations. This mirrors the logic in systemd's -# build system. -rootprefix ?= "${base_prefix}" -rootlibdir ?= "${base_libdir}" -rootlibexecdir = "${rootprefix}/lib" - -# The gtk+ tools should get built as a separate recipe e.g. systemd-tools -EXTRA_OECONF = " --with-rootprefix=${rootprefix} \ - --with-rootlibdir=${rootlibdir} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--enable-pam', '--disable-pam', d)} \ - --disable-manpages \ - --disable-coredump \ - --disable-introspection \ - --disable-kdbus \ - --enable-split-usr \ - --without-python \ - --with-sysvrcnd-path=${sysconfdir} \ - --with-firmware-path=/lib/firmware \ - ac_cv_path_KILL=${base_bindir}/kill \ - " -# uclibc does not have NSS -EXTRA_OECONF_append_libc-uclibc = " --disable-myhostname " - -do_configure_prepend() { - export CPP="${HOST_PREFIX}cpp ${TOOLCHAIN_OPTIONS} ${HOST_CC_ARCH}" - export NM="${HOST_PREFIX}gcc-nm" - export AR="${HOST_PREFIX}gcc-ar" - export RANLIB="${HOST_PREFIX}gcc-ranlib" - export KMOD="${base_bindir}/kmod" - if [ -d ${S}/units.pre_sed ] ; then - cp -r ${S}/units.pre_sed ${S}/units - else - cp -r ${S}/units ${S}/units.pre_sed - fi - sed -i -e 's:=/root:=${ROOT_HOME}:g' ${S}/units/*.service* - sed -i '/ln --relative --help/d' ${S}/configure.ac - sed -i -e 's:\$(LN_S) --relative -f:lnr:g' ${S}/Makefile.am - sed -i -e 's:\$(LN_S) --relative:lnr:g' ${S}/Makefile.am -} - -do_install() { - autotools_do_install - install -d ${D}/${base_sbindir} - # Provided by a separate recipe - rm ${D}${systemd_unitdir}/system/serial-getty* -f - - # Provide support for initramfs - [ ! -e ${D}/init ] && ln -s ${rootlibexecdir}/systemd/systemd ${D}/init - [ ! -e ${D}/${base_sbindir}/udevd ] && ln -s ${rootlibexecdir}/systemd/systemd-udevd ${D}/${base_sbindir}/udevd - - # Create machine-id - # 20:12 < mezcalero> koen: you have three options: a) run systemd-machine-id-setup at install time, b) have / read-only and an empty file there (for stateless) and c) boot with / writable - touch ${D}${sysconfdir}/machine-id - - install -m 0644 ${WORKDIR}/*.rules ${D}${sysconfdir}/udev/rules.d/ - - install -m 0644 ${WORKDIR}/00-create-volatile.conf ${D}${sysconfdir}/tmpfiles.d/ - - if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then - install -d ${D}${sysconfdir}/init.d - install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/systemd-udevd - sed -i s%@UDEVD@%${rootlibexecdir}/systemd/systemd-udevd% ${D}${sysconfdir}/init.d/systemd-udevd - fi - - # Move libgudev back to ${rootlibdir} to keep backward compatibility - [ ${rootlibdir} != ${libdir} ] && mv -t ${D}${rootlibdir} ${D}${libdir}/libgudev* - - # Delete journal README, as log can be symlinked inside volatile. - rm -f ${D}/${localstatedir}/log/README - - # Create symlinks for systemd-update-utmp-runlevel.service - install -d ${D}${systemd_unitdir}/system/graphical.target.wants - install -d ${D}${systemd_unitdir}/system/multi-user.target.wants - install -d ${D}${systemd_unitdir}/system/poweroff.target.wants - install -d ${D}${systemd_unitdir}/system/reboot.target.wants - install -d ${D}${systemd_unitdir}/system/rescue.target.wants - ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/graphical.target.wants/systemd-update-utmp-runlevel.service - ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/multi-user.target.wants/systemd-update-utmp-runlevel.service - ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/poweroff.target.wants/systemd-update-utmp-runlevel.service - ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/reboot.target.wants/systemd-update-utmp-runlevel.service - ln -sf ../systemd-update-utmp-runlevel.service ${D}${systemd_unitdir}/system/rescue.target.wants/systemd-update-utmp-runlevel.service - - # Enable journal to forward message to syslog daemon - sed -i -e 's/.*ForwardToSyslog.*/ForwardToSyslog=yes/' ${D}${sysconfdir}/systemd/journald.conf -} - -do_install_ptest () { - install -d ${D}${PTEST_PATH}/test - cp -rf ${S}/test/* ${D}${PTEST_PATH}/test - install -m 0755 ${B}/test-udev ${D}${PTEST_PATH}/ - install -d ${D}${PTEST_PATH}/build-aux - cp ${S}/build-aux/test-driver ${D}${PTEST_PATH}/build-aux/ - cp -rf ${B}/rules ${D}${PTEST_PATH}/ - # This directory needs to be there for udev-test.pl to work. - install -d ${D}${libdir}/udev/rules.d - cp ${B}/Makefile ${D}${PTEST_PATH}/ - cp ${S}/test/sys.tar.xz ${D}${PTEST_PATH}/test - sed -i 's/"tree"/"ls"/' ${D}${PTEST_PATH}/test/udev-test.pl - sed -i 's#${S}#${PTEST_PATH}#g' ${D}${PTEST_PATH}/Makefile - sed -i 's#${B}#${PTEST_PATH}#g' ${D}${PTEST_PATH}/Makefile -} - -python populate_packages_prepend (){ - systemdlibdir = d.getVar("rootlibdir", True) - do_split_packages(d, systemdlibdir, '^lib(.*)\.so\.*', 'lib%s', 'Systemd %s library', extra_depends='', allow_links=True) -} -PACKAGES_DYNAMIC += "^lib(udev|gudev|systemd).*" - -PACKAGES =+ "${PN}-gui ${PN}-vconsole-setup ${PN}-initramfs ${PN}-analyze ${PN}-kernel-install \ - ${PN}-rpm-macros ${PN}-binfmt ${PN}-pam ${PN}-zsh" - -SYSTEMD_PACKAGES = "${PN}-binfmt" -SYSTEMD_SERVICE_${PN}-binfmt = "systemd-binfmt.service" - -USERADD_PACKAGES = "${PN}" -USERADD_PARAM_${PN} += "--system systemd-journal-gateway" -GROUPADD_PARAM_${PN} = "-r lock; -r systemd-journal" - -FILES_${PN}-analyze = "${bindir}/systemd-analyze" - -FILES_${PN}-initramfs = "/init" -RDEPENDS_${PN}-initramfs = "${PN}" - -# The test cases need perl and bash to run correctly. -RDEPENDS_${PN}-ptest += "perl bash" -FILES_${PN}-ptest += "${libdir}/udev/rules.d" - -FILES_${PN}-dbg += "${libdir}/systemd/ptest/.debug" - -FILES_${PN}-gui = "${bindir}/systemadm" - -FILES_${PN}-vconsole-setup = "${rootlibexecdir}/systemd/systemd-vconsole-setup \ - ${systemd_unitdir}/system/systemd-vconsole-setup.service \ - ${systemd_unitdir}/system/sysinit.target.wants/systemd-vconsole-setup.service" - -FILES_${PN}-kernel-install = "${bindir}/kernel-install \ - ${sysconfdir}/kernel/ \ - ${exec_prefix}/lib/kernel \ - " -FILES_${PN}-rpm-macros = "${exec_prefix}/lib/rpm \ - " - -FILES_${PN}-zsh = "${datadir}/zsh/site-functions" - -FILES_${PN}-binfmt = "${sysconfdir}/binfmt.d/ \ - ${exec_prefix}/lib/binfmt.d \ - ${rootlibexecdir}/systemd/systemd-binfmt \ - ${systemd_unitdir}/system/proc-sys-fs-binfmt_misc.* \ - ${systemd_unitdir}/system/systemd-binfmt.service" -RRECOMMENDS_${PN}-binfmt = "kernel-module-binfmt-misc" - -RRECOMMENDS_${PN}-vconsole-setup = "kbd kbd-consolefonts kbd-keymaps" - -CONFFILES_${PN} = "${sysconfdir}/systemd/journald.conf \ - ${sysconfdir}/systemd/logind.conf \ - ${sysconfdir}/systemd/system.conf \ - ${sysconfdir}/systemd/user.conf \ - ${libdir}/sysusers.d/systemd.conf \ - ${libdir}/sysusers.d/basic.conf \ - " - -FILES_${PN} = " ${base_bindir}/* \ - ${datadir}/bash-completion \ - ${datadir}/dbus-1/services \ - ${datadir}/dbus-1/system-services \ - ${datadir}/polkit-1 \ - ${datadir}/${BPN} \ - ${datadir}/factory \ - ${sysconfdir}/bash_completion.d/ \ - ${sysconfdir}/dbus-1/ \ - ${sysconfdir}/machine-id \ - ${sysconfdir}/modules-load.d/ \ - ${sysconfdir}/sysctl.d/ \ - ${sysconfdir}/systemd/ \ - ${sysconfdir}/tmpfiles.d/ \ - ${sysconfdir}/xdg/ \ - ${sysconfdir}/init.d/README \ - ${rootlibexecdir}/systemd/* \ - ${systemd_unitdir}/* \ - ${base_libdir}/security/*.so \ - ${libdir}/libnss_* \ - /cgroup \ - ${bindir}/systemd* \ - ${bindir}/busctl \ - ${bindir}/localectl \ - ${bindir}/hostnamectl \ - ${bindir}/timedatectl \ - ${bindir}/bootctl \ - ${bindir}/kernel-install \ - ${exec_prefix}/lib/tmpfiles.d/*.conf \ - ${exec_prefix}/lib/systemd \ - ${exec_prefix}/lib/modules-load.d \ - ${exec_prefix}/lib/sysctl.d \ - ${exec_prefix}/lib/sysusers.d \ - ${localstatedir} \ - /lib/udev/rules.d/70-uaccess.rules \ - /lib/udev/rules.d/71-seat.rules \ - /lib/udev/rules.d/73-seat-late.rules \ - /lib/udev/rules.d/99-systemd.rules \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${sysconfdir}/pam.d', '', d)} \ - " - -FILES_${PN}-dbg += "${rootlibdir}/.debug ${systemd_unitdir}/.debug ${systemd_unitdir}/*/.debug ${base_libdir}/security/.debug/" -FILES_${PN}-dev += "${base_libdir}/security/*.la ${datadir}/dbus-1/interfaces/ ${sysconfdir}/rpm/macros.systemd" - -RDEPENDS_${PN} += "kmod dbus util-linux-mount udev (= ${EXTENDPKGV})" -RDEPENDS_${PN} += "volatile-binds" - -RRECOMMENDS_${PN} += "systemd-serialgetty systemd-compat-units udev-hwdb\ - util-linux-agetty \ - util-linux-fsck e2fsprogs-e2fsck \ - kernel-module-autofs4 kernel-module-unix kernel-module-ipv6 os-release \ -" - -PACKAGES =+ "udev-dbg udev udev-hwdb" - -FILES_udev-dbg += "/lib/udev/.debug" - -RPROVIDES_udev = "hotplug" - -RDEPENDS_udev-hwdb += "udev" - -FILES_udev += "${base_sbindir}/udevd \ - ${rootlibexecdir}/systemd/systemd-udevd \ - ${rootlibexecdir}/udev/accelerometer \ - ${rootlibexecdir}/udev/ata_id \ - ${rootlibexecdir}/udev/cdrom_id \ - ${rootlibexecdir}/udev/collect \ - ${rootlibexecdir}/udev/findkeyboards \ - ${rootlibexecdir}/udev/keyboard-force-release.sh \ - ${rootlibexecdir}/udev/keymap \ - ${rootlibexecdir}/udev/mtd_probe \ - ${rootlibexecdir}/udev/scsi_id \ - ${rootlibexecdir}/udev/v4l_id \ - ${rootlibexecdir}/udev/keymaps \ - ${rootlibexecdir}/udev/rules.d/4*.rules \ - ${rootlibexecdir}/udev/rules.d/5*.rules \ - ${rootlibexecdir}/udev/rules.d/6*.rules \ - ${rootlibexecdir}/udev/rules.d/70-power-switch.rules \ - ${rootlibexecdir}/udev/rules.d/75*.rules \ - ${rootlibexecdir}/udev/rules.d/78*.rules \ - ${rootlibexecdir}/udev/rules.d/8*.rules \ - ${rootlibexecdir}/udev/rules.d/95*.rules \ - ${sysconfdir}/udev \ - ${sysconfdir}/init.d/systemd-udevd \ - ${systemd_unitdir}/system/*udev* \ - ${systemd_unitdir}/system/*.wants/*udev* \ - ${base_bindir}/udevadm \ - ${datadir}/bash-completion/completions/udevadm \ - " - -FILES_udev-hwdb = "${rootlibexecdir}/udev/hwdb.d" - -INITSCRIPT_PACKAGES = "udev" -INITSCRIPT_NAME_udev = "systemd-udevd" -INITSCRIPT_PARAMS_udev = "start 03 S ." - -python __anonymous() { - if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d): - d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1") -} - -# TODO: -# u-a for runlevel and telinit - -ALTERNATIVE_${PN} = "init halt reboot shutdown poweroff runlevel" - -ALTERNATIVE_TARGET[init] = "${rootlibexecdir}/systemd/systemd" -ALTERNATIVE_LINK_NAME[init] = "${base_sbindir}/init" -ALTERNATIVE_PRIORITY[init] ?= "300" - -ALTERNATIVE_TARGET[halt] = "${base_bindir}/systemctl" -ALTERNATIVE_LINK_NAME[halt] = "${base_sbindir}/halt" -ALTERNATIVE_PRIORITY[halt] ?= "300" - -ALTERNATIVE_TARGET[reboot] = "${base_bindir}/systemctl" -ALTERNATIVE_LINK_NAME[reboot] = "${base_sbindir}/reboot" -ALTERNATIVE_PRIORITY[reboot] ?= "300" - -ALTERNATIVE_TARGET[shutdown] = "${base_bindir}/systemctl" -ALTERNATIVE_LINK_NAME[shutdown] = "${base_sbindir}/shutdown" -ALTERNATIVE_PRIORITY[shutdown] ?= "300" - -ALTERNATIVE_TARGET[poweroff] = "${base_bindir}/systemctl" -ALTERNATIVE_LINK_NAME[poweroff] = "${base_sbindir}/poweroff" -ALTERNATIVE_PRIORITY[poweroff] ?= "300" - -ALTERNATIVE_TARGET[runlevel] = "${base_bindir}/systemctl" -ALTERNATIVE_LINK_NAME[runlevel] = "${base_sbindir}/runlevel" -ALTERNATIVE_PRIORITY[runlevel] ?= "300" - -pkg_postinst_udev-hwdb () { - if test -n "$D"; then - ${@qemu_run_binary(d, '$D', '${base_bindir}/udevadm')} hwdb --update \ - --root $D - else - udevadm hwdb --update - fi -} - -pkg_prerm_udev-hwdb () { - if test -n "$D"; then - exit 1 - fi - - rm -f ${sysconfdir}/udev/hwdb.bin -} - -# Do not activate libnss-resolve by default, that needs more thought - -pkg_postinst_${PN} () { - sed -e '/^hosts:/s/\s*\<myhostname\>//' \ - -e 's/\(^hosts:.*\)\(\<files\>\)\(.*\)\(\<dns\>\)\(.*\)/\1\2 myhostname \3\4\5/' \ - -i $D${sysconfdir}/nsswitch.conf - - sed -e '/^hosts:/s/\s*\<mymachine\>//' \ - -e 's/\(^hosts:.*\)\(\<files\>\)\(.*\)\(\<dns\>\)\(.*\)/\1\2 mymachine \3\4\5/' \ - -i $D${sysconfdir}/nsswitch.conf -} - -pkg_prerm_${PN} () { - sed -e '/^hosts:/s/\s*\<myhostname\>//' \ - -e '/^hosts:/s/\s*myhostname//' \ - -i $D${sysconfdir}/nsswitch.conf - - sed -e '/^hosts:/s/\s*\<mymachine\>//' \ - -e '/^hosts:/s/\s*mymachine//' \ - -i $D${sysconfdir}/nsswitch.conf -} - -# As this recipe builds udev, respect systemd being in DISTRO_FEATURES so -# that we don't build both udev and systemd in world builds. -python () { - if not bb.utils.contains ('DISTRO_FEATURES', 'systemd', True, False, d): - raise bb.parse.SkipPackage("'systemd' not in DISTRO_FEATURES") -} -- 1.9.3 _______________________________________________ Angstrom-distro-devel mailing list Angstrom-distro-devel@linuxtogo.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/angstrom-distro-devel