diff options
Diffstat (limited to 'units/meson-add-wants.sh')
-rwxr-xr-x | units/meson-add-wants.sh | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/units/meson-add-wants.sh b/units/meson-add-wants.sh new file mode 100755 index 0000000..a483d75 --- /dev/null +++ b/units/meson-add-wants.sh @@ -0,0 +1,28 @@ +#!/bin/sh +set -eu + +unitdir="$1" +target="$2" +unit="$3" + +case "$target" in + */?*) # a path, but not just a slash at the end + dir="${DESTDIR:-}${target}" + ;; + *) + dir="${DESTDIR:-}${unitdir}/${target}" + ;; +esac + +unitpath="${DESTDIR:-}${unitdir}/${unit}" + +case "$target" in + */) + mkdir -vp -m 0755 "$dir" + ;; + *) + mkdir -vp -m 0755 "$(dirname "$dir")" + ;; +esac + +ln -vfs --relative "$unitpath" "$dir" |