2015-03-06 19:18:15 +03:00
|
|
|
#! /bin/bash
|
2015-01-09 22:30:29 +03:00
|
|
|
|
|
|
|
#
|
|
|
|
# This file should be included by other shell scripts that
|
|
|
|
# want to use any of the functions
|
|
|
|
#
|
|
|
|
|
2015-12-11 18:24:24 +03:00
|
|
|
function assure_installed_valgrind {
|
|
|
|
valgrind --version &> /dev/null
|
|
|
|
if (( $? != 0 )); then
|
|
|
|
msg="Valgrind seems to not be installed."
|
|
|
|
err "$msg" "$msg"
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
2015-01-09 22:30:29 +03:00
|
|
|
|
|
|
|
function needle { #needle #haystack
|
|
|
|
python -c "import re; print(re.search(r'$1', '$2').group(0))"
|
|
|
|
if (( $? != 0 )); then
|
|
|
|
msg="Python script error"
|
|
|
|
err "$msg" "$msg"
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function extract_num { #needle with number #haystack
|
|
|
|
string=$(needle "$1" "$2")
|
|
|
|
needle "[0-9]*" "$string"
|
|
|
|
if (( $? != 0 )); then
|
|
|
|
msg="Python script error"
|
|
|
|
err "$msg" "$msg"
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2015-01-18 03:26:04 +03:00
|
|
|
function time_exec { #command ..
|
|
|
|
realsecs=$(/usr/bin/time -f '%e' "$@" 2>&1 > /dev/null)
|
|
|
|
echo "$realsecs"
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2015-01-09 22:30:29 +03:00
|
|
|
function err { #string #log
|
|
|
|
echo "------------------- ERROR ------------------------"
|
|
|
|
echo "$1"
|
2015-01-16 22:37:20 +03:00
|
|
|
echo "$2" >> error.log
|
2015-01-09 22:30:29 +03:00
|
|
|
exit 1
|
|
|
|
}
|
2015-03-06 19:11:07 +03:00
|
|
|
|
|
|
|
|
|
|
|
function compile { #cfilepath
|
2015-03-31 13:49:46 +03:00
|
|
|
gcc $COMPILATION_FLAGS "$1" ../thpool.c -D THPOOL_DEBUG -pthread -o test
|
2015-03-06 19:11:07 +03:00
|
|
|
}
|