12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- #!/bin/bash
-
-
- get_dst() {
- #
- # Find out target path for src file $2 of group $1
- #
- local grp=$1
- local src=$2
- echo "$(get_root $grp)/$(ini path "files:$group:$src")"
- }
-
- get_root() {
- #
- # Find out target rooot for group $1
- #
- local group="$1"
- local varname="${group^^*}_DIR"
- test -n "${!varname}" || die "missing in config.mk: $varname"
- echo "${!varname}"
- }
-
- install() {
- #
- # Install product
- #
- local dst group mode src
- ini path "main:group" \
- | while read group;
- do
- mode=$(ini path "modes:$group")
- ini lskeys "files:$group" \
- | while read src;
- do
- dst=$(get_dst "$group" "$src")
- command -p install -DTvm $mode $src "$dst"
- done
- done
- test -f .autoclean && clean || :
- }
-
- uninstall() {
- #
- # Uninstall product
- #
- local dst group src
- ini path "main:group" \
- | while read group;
- do
- ini lskeys "files:$group" \
- | while read src;
- do
- dst=$(get_dst "$group" "$src")
- rm -vf "$dst"
- done
- done
-
- }
|