diff options
author | Enrico Scholz <enrico.scholz@sigma-chemnitz.de> | 2013-04-24 13:37:21 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-04-29 14:45:06 +0100 |
commit | 999302e9d87aee2fe5f171995ee33118e8b30f8c (patch) | |
tree | 065bb4d02190157ab2d8f4a5b17a906020691e4d | |
parent | 499bb2c6b369a021ace3059426470d3371c07fb1 (diff) | |
download | poky-999302e9d87aee2fe5f171995ee33118e8b30f8c.tar.gz |
systemd-systemctl: parse unit files more correctly
Old script failed to parse unit files containing comments like
| #Alias=some-alias
or whitespaces like
| WantedBy = foo
correctly. Patch changes script to interpret keywords only when they
are at the beginning of a line and ignores whitespaces before the '='.
(From OE-Core rev: 443e75ee2c0e9a62df997aef24855bce54d39177)
Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rwxr-xr-x | meta/recipes-core/systemd/systemd-systemctl/systemctl | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/meta/recipes-core/systemd/systemd-systemctl/systemctl b/meta/recipes-core/systemd/systemd-systemctl/systemctl index d71c7eda8b..8abbdf6938 100755 --- a/meta/recipes-core/systemd/systemd-systemctl/systemctl +++ b/meta/recipes-core/systemd/systemd-systemctl/systemctl | |||
@@ -78,8 +78,7 @@ for service in $services; do | |||
78 | echo "Found $service in $service_file" | 78 | echo "Found $service in $service_file" |
79 | 79 | ||
80 | # create the required symbolic links | 80 | # create the required symbolic links |
81 | wanted_by=$(grep WantedBy $ROOT/$service_file \ | 81 | wanted_by=$(sed '/^WantedBy[[:space:]]*=/s,[^=]*=,,p;d' "$ROOT/$service_file" \ |
82 | | sed 's,WantedBy=,,g' \ | ||
83 | | tr ',' '\n' \ | 82 | | tr ',' '\n' \ |
84 | | grep '\(\.target$\)\|\(\.service$\)') | 83 | | grep '\(\.target$\)\|\(\.service$\)') |
85 | 84 | ||
@@ -97,8 +96,7 @@ for service in $services; do | |||
97 | done | 96 | done |
98 | 97 | ||
99 | # create the required symbolic 'Alias' links | 98 | # create the required symbolic 'Alias' links |
100 | alias=$(grep Alias $ROOT/$service_file \ | 99 | alias=$(sed '/^Alias[[:space:]]*=/s,[^=]*=,,p;d' "$ROOT/$service_file" \ |
101 | | sed 's,Alias=,,g' \ | ||
102 | | tr ',' '\n' \ | 100 | | tr ',' '\n' \ |
103 | | grep '\.service$') | 101 | | grep '\.service$') |
104 | 102 | ||
@@ -114,8 +112,7 @@ for service in $services; do | |||
114 | done | 112 | done |
115 | 113 | ||
116 | # call us for the other required scripts | 114 | # call us for the other required scripts |
117 | also=$(grep Also $ROOT/$service_file \ | 115 | also=$(sed '/^Also[[:space:]]*=/s,[^=]*=,,p;d' "$ROOT/$service_file" \ |
118 | | sed 's,Also=,,g' \ | ||
119 | | tr ',' '\n') | 116 | | tr ',' '\n') |
120 | for a in $also; do | 117 | for a in $also; do |
121 | echo "Also=$a found in $service" | 118 | echo "Also=$a found in $service" |