summaryrefslogtreecommitdiff
path: root/sh/rc-functions.sh.in
diff options
context:
space:
mode:
authorRoy Marples <roy@marples.name>2010-02-20 21:48:06 +0000
committerRoy Marples <roy@marples.name>2010-02-20 21:48:06 +0000
commit5c52e5beb588d87b1e267d0485b56a2609b5481f (patch)
tree5ae131370268f371a42aa9dd3edd482e26c11e83 /sh/rc-functions.sh.in
parentc0f5f2122c28aa16a45fada0f95743d795be5d53 (diff)
downloadopenrc-5c52e5beb588d87b1e267d0485b56a2609b5481f.tar.gz
openrc-5c52e5beb588d87b1e267d0485b56a2609b5481f.tar.bz2
openrc-5c52e5beb588d87b1e267d0485b56a2609b5481f.tar.xz
Fix rc_${rc_svcname}_need.
Display config depends in service depend function also.
Diffstat (limited to 'sh/rc-functions.sh.in')
-rw-r--r--sh/rc-functions.sh.in21
1 files changed, 21 insertions, 0 deletions
diff --git a/sh/rc-functions.sh.in b/sh/rc-functions.sh.in
index 2a656bc..ee9c983 100644
--- a/sh/rc-functions.sh.in
+++ b/sh/rc-functions.sh.in
@@ -84,6 +84,27 @@ get_bootparam()
return 1
}
+# Called from runscript.sh or gendepends.sh
+_depend() {
+ depend
+ local _rc_svcname=$(shell_var "$RC_SVCNAME") _deptype= _depends=
+
+ # Add any user defined depends
+ for _deptype in config:CONFIG need:NEED use:USE \
+ after:AFTER before:BEFORE \
+ provide:PROVIDE keyword:KEYWORD; do
+ IFS=:
+ set -- $_deptype
+ unset IFS
+ eval _depends=\$rc_${_rc_svcname}_$1
+ [ -z "$_depends" ] && eval _depends=\$rc_$1
+ [ -z "$_depends" ] && eval _depends=\$RC_${_rc_svcname}_$2
+ [ -z "$_depends" ] && eval _depends=\$RC_$2
+
+ $1 $_depends
+ done
+}
+
# Add our sbin to $PATH
case "$PATH" in
"$RC_LIBEXECDIR"/sbin|"$RC_LIBEXECDIR"/sbin:*);;