From 4582207bd858eb17595e62f63f8f36c6b016555c Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Thu, 22 Jan 2009 15:48:05 +0000 Subject: [PATCH] jw-build-functions.sh: Add file --- scripts/jw-build-functions.sh | 78 +++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 scripts/jw-build-functions.sh diff --git a/scripts/jw-build-functions.sh b/scripts/jw-build-functions.sh new file mode 100644 index 00000000..ce658c8a --- /dev/null +++ b/scripts/jw-build-functions.sh @@ -0,0 +1,78 @@ +export PATH=$PATH:/opt/ytools/bin + +ytools_log() +{ + echo $@ +} + +ytools_log_err() +{ + echo $@ >&2 +} + +ytools_source_config() +{ + local o_verbose="" + + set -- `getopt 'v' $*` + + while [ "$1" != -- ]; do + case $1 in + -v) + o_verbose=true;; + *) + ytools_log_err unknown option $1 + exit 1;; + esac + shift + done + shift + + [ ! -r "$1" ] && return + [ "$o_verbose" ] && ytools_log o reading config "<$1>" + . $1 +} + +ytools_source_configs() +{ + local c + local basename=${myname/.*/} + local rc="$basename"rc + local project=ytools + local o_verbose="" + + set -- `getopt 'v' $*` + + while [ "$1" != -- ]; do + case $1 in + -v) + o_verbose=true;; + *) + ytools_log_err unknown option $1 + exit 1;; + esac + shift + done + shift + + config_files=" + /etc/opt/$project/$basename.conf + $HOME/.$project/$basename.conf + $HOME/.$project/$rc + $HOME/.$basename/$basename.conf + $HOME/.$basename/$rc + $HOME/.$rc + " + + for c in $config_files; do + ytools_source_config $c + if [ -d $c.d ]; then + local dirconfs=`find $c.d -maxdepth 1 -type f` + local f + for f in $dirconfs; do + ytools_source_config $f + done + fi + done +} +