summaryrefslogtreecommitdiffstats
path: root/units/meson-add-wants.sh
blob: e2b260398c5dde9937679d623e9b10304166b644 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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"