summaryrefslogtreecommitdiffstats
path: root/units/meson-add-wants.sh
blob: a483d75b86f36d0b81223cae62fa12043c64d015 (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"