Merge pull request #404 from nicolaiskogheim/freebsd-fix

Make git effort run on FreeBSD
This commit is contained in:
hemanth.hm 2015-07-29 13:36:00 +05:30
commit 46db56905d

View file

@ -35,7 +35,7 @@ show_cursor_and_cleanup() {
#
active_days() {
uniq <(echo "$1") | wc -l
uniq <<<$(echo "$1") | wc -l
}
#
@ -119,33 +119,37 @@ above_index=0
has_above=false
next_is_above=false
num_files=0
for i in `seq ${#@}`
do
cur="${!i}"
if "$next_is_above" ; then
above="$cur"
next_is_above=false
continue
fi
# Some implementations of `seq` gives "1\n0" for seq 0
if [ $# -gt 0 ] ; then
for i in `seq ${#@}`
do
cur="${!i}"
case "$cur" in
--above)
if "$has_above" ; then
echo "error: --above can only be specified one time" 1>&2
exit 1
fi
next_is_above=true
has_above=true
above_index=$(( i - 1 ))
;;
--*)
;;
*)
num_files=$(( num_files + 1 ))
;;
esac
done
if "$next_is_above" ; then
above="$cur"
next_is_above=false
continue
fi
case "$cur" in
--above)
if "$has_above" ; then
echo "error: --above can only be specified one time" 1>&2
exit 1
fi
next_is_above=true
has_above=true
above_index=$(( i - 1 ))
;;
--*)
;;
*)
num_files=$(( num_files + 1 ))
;;
esac
done
fi
# Exit if above-value is not an int
if [ -z "${above##*[!0-9]*}" ] ; then
@ -193,9 +197,18 @@ export -f dates
export above
export log_args
bash_params=
# If bash exits sucessfully with --import-functions,
# then we need to pass it (FreeBSD probably)
bash --import-functions -c ":" 1>/dev/null 2>&1
if [ $? -eq 0 ] ; then
bash_params="--import-functions"
fi
heading
# send files to effort
printf "%s\0" "${files[@]}" | xargs -0 -n 1 -P 4 -I % bash -c "effort \"%\"" | tee $tmp
printf "%s\0" "${files[@]}" | xargs -0 -n 1 -P 4 -I % bash $bash_params -c "effort \"%\"" | tee $tmp
# if more than one file, sort and print
test "$(wc -l $tmp | awk '{print $1}')" -gt 1 && sort_effort