2017-10-20 14:07:06 +00:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
set -ex
|
|
|
|
|
2017-10-23 13:10:00 +00:00
|
|
|
if [ -z "$MAKE" ]; then
|
|
|
|
set +x
|
|
|
|
echo "Error: you need to set \$MAKE before invoking, e.g. MAKE=make"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
2017-10-27 20:40:30 +00:00
|
|
|
osmo-clean-workspace.sh
|
|
|
|
|
2018-06-09 03:32:42 +00:00
|
|
|
verify_value_string_arrays_are_terminated.py
|
2017-10-20 14:07:06 +00:00
|
|
|
|
2022-03-18 13:24:29 +00:00
|
|
|
# Validate enum fields in header are added to tlv_definition in source file (SYS#5891):
|
|
|
|
|
|
|
|
verify_gsm0808_tlv_definition() {
|
|
|
|
set +x;
|
|
|
|
enums=$(grep "GSM0808_IE_" include/osmocom/gsm/protocol/gsm_08_08.h | grep "=" | awk '{ print $1 }')
|
|
|
|
counted_enums=$(for f in $enums; do printf "%-60s %s\n" "$f" "$(grep -c "\[$f\]" src/gsm/gsm0808.c)"; done)
|
|
|
|
missing_enums=$(echo "$counted_enums" | grep -v GSM0808_IE_RESERVED | grep "0$" || true)
|
|
|
|
if [ "x$missing_enums" != "x" ]; then
|
|
|
|
echo "Missing IEs in src/gsm/gsm0808.c!"
|
|
|
|
echo "$missing_enums"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
set -x;
|
|
|
|
}
|
|
|
|
verify_gsm0808_tlv_definition
|
|
|
|
|
2022-04-04 17:37:19 +00:00
|
|
|
verify_gsm_08_05_tlv_definition() {
|
|
|
|
set +x;
|
|
|
|
enums=$(grep "RSL_IE_" include/osmocom/gsm/protocol/gsm_08_58.h | grep -e "=" -e ",$" | awk '{ print $1 }' | tr -d ',')
|
|
|
|
counted_enums=$(for f in $enums; do printf "%-60s %s\n" "$f" "$(grep -c "\[$f\]" src/gsm/rsl.c)"; done)
|
|
|
|
# TODO: Add RSL_IE_SIEMENS_* to the tlv struct definitions.
|
|
|
|
missing_enums=$(echo "$counted_enums" | grep -v RSL_IE_SIEMENS |grep "0$" || true)
|
|
|
|
if [ "x$missing_enums" != "x" ]; then
|
|
|
|
echo "Missing IEs in src/gsm/rsl.c!"
|
|
|
|
echo "$missing_enums"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
set -x;
|
|
|
|
}
|
|
|
|
verify_gsm_08_05_tlv_definition
|
|
|
|
|
2017-10-23 12:57:56 +00:00
|
|
|
prep_build() {
|
|
|
|
_src_dir="$1"
|
|
|
|
_build_dir="$2"
|
|
|
|
|
|
|
|
cd "$_src_dir"
|
|
|
|
|
2017-10-27 20:40:30 +00:00
|
|
|
# clean again before each build variant
|
|
|
|
osmo-clean-workspace.sh
|
2017-10-23 12:57:56 +00:00
|
|
|
|
|
|
|
autoreconf --install --force
|
|
|
|
|
|
|
|
mkdir -p "$_build_dir"
|
|
|
|
cd "$_build_dir"
|
|
|
|
}
|
2018-01-18 16:37:18 +00:00
|
|
|
|
|
|
|
run_make() {
|
|
|
|
$MAKE $PARALLEL_MAKE check || cat-testlogs.sh
|
|
|
|
}
|