#!/bin/sh set -e # Functions set_vars() { printf 'Setting vars...\n' >&2 sed -r \ -e "s%@CONFIG@%${CONFIG}%" \ -e "s%@LOGDIR@%${LOGDIR}%" } do_tell() { printf 'Executing: %s\n' "$*" "$@" } # Targets target_userrc() { target='userrc' printf '%s\n' "Building $target..." set_vars < "$target".in > "$target" do_tell chmod 755 "$target" ls -l "$target" } target_clean() { do_tell rm -f userrc } target_install() { mkdir -p "$BINDIR" do_tell cp userrc "${BINDIR}/userrc" do_tell chmod 755 "${BINDIR}/userrc" } target_all() { target_userrc } main() { while [ -n "$1" ]; do case "$1" in *=*) export "${1%%=*}=${1#*=}";; --) shift; break;; *) break;; esac shift done target="${1:-all}" # Build configuration . './config.mk.sh' printf '%s\n' "Building target: $target" "target_$target" } main "$@"