check-all.sh

Fri, 23 May 2025 12:44:24 +0200

author
Mike Becker <universe@uap-core.de>
date
Fri, 23 May 2025 12:44:24 +0200
changeset 1327
ed75dc1db503
parent 1303
4022e403de60
permissions
-rwxr-xr-x

make test-compile depend on both static and shared

the shared lib is not needed for the tests,
but when run with coverage, gcov will be confused
when outdated line information is available from
a previous shared build

#!/bin/sh

# backup config
cp config.mk config.mk.bak

function perform_check
{
  if ! make clean check > /dev/null ; then
    echo "fail."
  else
    echo "ok."
  fi
}

function perform_check_cxx
{
  # we cannot mute the warnings, so throw every everything
  if ! make clean check-cxx > /dev/null 2> /dev/null ; then
    echo "fail."
  else
    echo "ok."
  fi
}

for cc in clang gcc; do
  CC=$cc ./configure --debug > /dev/null
  printf "Check $cc... "
  perform_check
  printf "Check $cc (c++)... "
  perform_check_cxx
done

printf "Check w/o szmul builtin... "
./configure --debug --disable-szmul-builtin > /dev/null
perform_check
printf "Check w/o szmul builtin (c++)... "
perform_check_cxx

printf "Check release config... "
./configure --release > /dev/null
perform_check

printf "Check gcc C23... "
CC=gcc CFLAGS=-std=c23 ./configure --debug > /dev/null
perform_check

# clean build files and restore config
make clean > /dev/null
mv config.mk.bak config.mk

mercurial