blob: c3f4b393459ec1517a1e0ea007aab5e0927fa6b8 [file] [log] [blame]
Brad Bishop316dfdd2018-06-25 12:45:53 -04001From c93eb6cdec03f5e243e59e95dc49273fcb90e7c1 Mon Sep 17 00:00:00 2001
2From: Chen Qi <Qi.Chen@windriver.com>
3Date: Fri, 23 Feb 2018 10:23:40 +0800
4Subject: [PATCH 02/31] binfmt: Don't install dependency links at install time
5 for the binfmt services
6
7use [Install] blocks so that they get created when the service is enabled
8like a traditional service.
9
10The [Install] blocks were rejected upstream as they don't have a way to
11"enable" it on install without static symlinks which can't be disabled,
12only masked. We however can do that in a postinst.
13
14Upstream-Status: Denied
15
16Signed-off-by: Ross Burton <ross.burton@intel.com>
17Signed-off-by: Khem Raj <raj.khem@gmail.com>
18Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
19---
20 units/meson.build | 6 ++----
21 units/proc-sys-fs-binfmt_misc.automount | 3 +++
22 units/systemd-binfmt.service.in | 4 ++++
23 3 files changed, 9 insertions(+), 4 deletions(-)
24
25diff --git a/units/meson.build b/units/meson.build
26index 814ee7885..49ace0d0f 100644
27--- a/units/meson.build
28+++ b/units/meson.build
29@@ -60,8 +60,7 @@ units = [
30 ['poweroff.target', '',
31 'runlevel0.target'],
32 ['printer.target', ''],
33- ['proc-sys-fs-binfmt_misc.automount', 'ENABLE_BINFMT',
34- 'sysinit.target.wants/'],
35+ ['proc-sys-fs-binfmt_misc.automount', 'ENABLE_BINFMT'],
36 ['proc-sys-fs-binfmt_misc.mount', 'ENABLE_BINFMT'],
37 ['reboot.target', '',
38 'runlevel6.target ctrl-alt-del.target'],
39@@ -144,8 +143,7 @@ in_units = [
40 ['systemd-ask-password-console.service', ''],
41 ['systemd-ask-password-wall.service', ''],
42 ['systemd-backlight@.service', 'ENABLE_BACKLIGHT'],
43- ['systemd-binfmt.service', 'ENABLE_BINFMT',
44- 'sysinit.target.wants/'],
45+ ['systemd-binfmt.service', 'ENABLE_BINFMT'],
46 ['systemd-coredump@.service', 'ENABLE_COREDUMP'],
47 ['systemd-exit.service', ''],
48 ['systemd-firstboot.service', 'ENABLE_FIRSTBOOT',
49diff --git a/units/proc-sys-fs-binfmt_misc.automount b/units/proc-sys-fs-binfmt_misc.automount
50index 30a6bc991..4231f3b70 100644
51--- a/units/proc-sys-fs-binfmt_misc.automount
52+++ b/units/proc-sys-fs-binfmt_misc.automount
53@@ -18,3 +18,6 @@ ConditionPathIsReadWrite=/proc/sys/
54
55 [Automount]
56 Where=/proc/sys/fs/binfmt_misc
57+
58+[Install]
59+WantedBy=sysinit.target
60diff --git a/units/systemd-binfmt.service.in b/units/systemd-binfmt.service.in
61index df9396d89..0687f4648 100644
62--- a/units/systemd-binfmt.service.in
63+++ b/units/systemd-binfmt.service.in
64@@ -13,6 +13,7 @@ Documentation=man:systemd-binfmt.service(8) man:binfmt.d(5)
65 Documentation=https://www.kernel.org/doc/Documentation/binfmt_misc.txt
66 DefaultDependencies=no
67 Conflicts=shutdown.target
68+Wants=proc-sys-fs-binfmt_misc.automount
69 After=proc-sys-fs-binfmt_misc.automount
70 Before=sysinit.target shutdown.target
71 ConditionPathIsReadWrite=/proc/sys/
72@@ -27,3 +28,6 @@ Type=oneshot
73 RemainAfterExit=yes
74 ExecStart=@rootlibexecdir@/systemd-binfmt
75 TimeoutSec=90s
76+
77+[Install]
78+WantedBy=sysinit.target
79--
802.13.0
81