diff options
-rw-r--r-- | include/init.sh | 24 | ||||
-rw-r--r-- | include/lib.sh | 25 |
2 files changed, 23 insertions, 26 deletions
diff --git a/include/init.sh b/include/init.sh index ce9cf9a9..8f5ab059 100644 --- a/include/init.sh +++ b/include/init.sh @@ -17,12 +17,14 @@ xbmkpath="$PATH" xbmk_err="err_" eval "`setvars "" _nogit board reinstall versiondate aur_notice configdir \ - datadir version xbmkpwd relname xbmkpwd xbmktmp python pyver xbmklocal`" + datadir version xbmkpwd relname xbmkpwd xbmktmp python pyver xbmklocal \ + xbmklock`" xbmk_init() { xbmkpwd="`pwd`" || err "Cannot generate PWD" xbmklocal="$xbmkpwd/tmp" + xbmklock="$xbmkpwd/lock" export PWD="$xbmkpwd" @@ -145,6 +147,11 @@ xbmk_set_version() xbmk_git_init() { + for gitarg in "--global user.name" "--global user.email"; do + gitcmd="git config $gitarg"; $gitcmd 1>/dev/null 2>/dev/null \ + || err "Run this first: $gitcmd \"your ${gitcmd##*.}\"" + done + [ -L ".git" ] && return 1 [ -e ".git" ] && return 0 eval "`setvars "$(date -Rud @$versiondate)" cdate _nogit`" @@ -154,12 +161,7 @@ xbmk_git_init() x_ git commit -m "$projectname $version" --date "$cdate" \ --author="xbmk <xbmk@example.com>" 1>/dev/null 2>/dev/null x_ git tag -a "$version" -m "$projectname $version" 1>/dev/null \ - 2>/dev/null - - for gitarg in "--global user.name" "--global user.email"; do - gitcmd="git config $gitarg"; $gitcmd || err \ - "Please run this first: $gitcmd \"your ${gitcmd##*.}\"" - done + 2>/dev/null; : } xbmk_create_tmpdir() @@ -184,8 +186,8 @@ xbmk_create_tmpdir() xbmk_lock() { - [ -f "lock" ] && err "$xbmkpwd/lock exists. Is a build running?" - touch lock || err "cannot create 'lock' file"; : + [ -f "$xbmklock" ] && err "'$xbmklock' exists. Is a build running?" + touch "$xbmklock" || err "cannot create '$xbmklock'"; : } xbmk_create_pathdirs() @@ -204,8 +206,8 @@ xbmk_child_exec() { xbmk_rval=0 ( x_ ./mk "$@" ) || xbmk_rval=1 - rm -Rf "$xbmklocal" "$xbmktmp" || xbmk_rval=1 - rm -f lock || xbmk_rval=1 + ( x_ rm -Rf "$xbmklocal" "$xbmktmp" ) || xbmk_rval=1 + ( x_ rm -f "$xbmklock" ) || xbmk_rval=1 exit $xbmk_rval } diff --git a/include/lib.sh b/include/lib.sh index eb4cddca..71183874 100644 --- a/include/lib.sh +++ b/include/lib.sh @@ -169,6 +169,7 @@ find_ex() x_() { + [ $# -lt 1 ] && printf "WARNING: x_ called without arguments\n" 1>&2 [ $# -lt 1 ] || [ -n "$1" ] || err "Empty first arg: x_ $(echo "$@")" [ $# -lt 1 ] || "$@" || err "Unhandled error for: $(echo "$@")"; : } @@ -176,32 +177,26 @@ x_() err() { xbmk_err_val=0 + real_err="" && [ -n "${xbmk_err+x}" ] && real_err="$xbmk_err" - real_err="$xbmk_err" - if [ -z "$xbmk_err" ]; then - printf "WARNING: err not set. Args: %s\n" "$(echo "$@")" 1>&2 - printf "REMARK: Setting err to default 'err_' value\n" 1>&2 + if [ -z "$real_err" ]; then + printf "WARNING: err not set. Defaulting to 'err_'\n" 1>&2 real_err="err_" fi ( - $real_err "$@" || printf \ - "WARNING: Err function '%s' *returned* 1. Will exit 1 anyway\n" \ - "$real_err" - printf "WARNING: Err function '%s' didn't exit. Will exit 1 anyway\n" \ - "$real_err" 1>&2 - exit 1 + $real_err "$@" || err_ "Error function '$real_err' *returned* 1" + err_ "Error function '$real_err' didn't exit" + exit 1 # just in case! ) || xbmk_err_val=1 # otherwise, it wrongly did exit 0, not exit 1 - [ $xbmk_err_val -eq 0 ] && printf \ - "WARNING: Err function '%s' did exit 0. Will exit 1 anyway.\n" \ - "$real_err" 1>&2 - - exit 1 + [ $xbmk_err_val -eq 0 ] && err_ "Error function '$real_err' did exit 0" + exit 1 # just in case! } err_() { + [ $# -lt 1 ] && printf "ERROR (but no error message provided)\n" 1>&2 [ $# -lt 1 ] || printf "ERROR %s: %s\n" "$0" "$1" 1>&2 || : exit 1 } |