|
Packit Service |
087331 |
#!/bin/sh
|
|
Packit Service |
087331 |
# Copyright (c) 2020 Petr Vorel <pvorel@suse.cz>
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
set -e
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
CC="${CC:-gcc}"
|
|
Packit Service |
087331 |
CFLAGS="${CFLAGS:--Wformat -Werror=format-security -Werror=implicit-function-declaration -Werror=return-type -fno-common}"
|
|
Packit Service |
087331 |
PREFIX="${PREFIX:-$HOME/ima-evm-utils-install}"
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
export LD_LIBRARY_PATH="$PREFIX/lib64:$PREFIX/lib:/usr/local/lib64:/usr/local/lib"
|
|
Packit Service |
087331 |
export PATH="$PREFIX/bin:/usr/local/bin:$PATH"
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
title()
|
|
Packit Service |
087331 |
{
|
|
Packit Service |
087331 |
echo "===== $1 ====="
|
|
Packit Service |
087331 |
}
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
log_exit()
|
|
Packit Service |
087331 |
{
|
|
Packit Service |
087331 |
local ret="${3:-$?}"
|
|
Packit Service |
087331 |
local log="$1"
|
|
Packit Service |
087331 |
local msg="$2"
|
|
Packit Service |
087331 |
local prefix
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
echo "=== $log ==="
|
|
Packit Service |
087331 |
[ $ret -eq 0 ] || prefix="FAIL: "
|
|
Packit Service |
087331 |
cat $log
|
|
Packit Service |
087331 |
echo
|
|
Packit Service |
087331 |
echo "$prefix$msg, see output of $log above"
|
|
Packit Service |
087331 |
exit $ret
|
|
Packit Service |
087331 |
}
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
cd `dirname $0`
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
case "$VARIANT" in
|
|
Packit Service |
087331 |
i386)
|
|
Packit Service |
087331 |
echo "32-bit compilation"
|
|
Packit Service |
087331 |
export CFLAGS="-m32 $CFLAGS" LDFLAGS="-m32 $LDFLAGS"
|
|
Packit Service |
087331 |
export PKG_CONFIG_LIBDIR=/usr/lib/i386-linux-gnu/pkgconfig
|
|
Packit Service |
087331 |
;;
|
|
Packit Service |
087331 |
cross-compile)
|
|
Packit Service |
087331 |
host="${CC%-gcc}"
|
|
Packit Service |
087331 |
export CROSS_COMPILE="${host}-"
|
|
Packit Service |
087331 |
host="--host=$host"
|
|
Packit Service |
087331 |
echo "cross compilation: $host"
|
|
Packit Service |
087331 |
echo "CROSS_COMPILE: '$CROSS_COMPILE'"
|
|
Packit Service |
087331 |
;;
|
|
Packit Service |
087331 |
*)
|
|
Packit Service |
087331 |
if [ "$VARIANT" ]; then
|
|
Packit Service |
087331 |
echo "Wrong VARIANT: '$VARIANT'" >&2
|
|
Packit Service |
087331 |
exit 1
|
|
Packit Service |
087331 |
fi
|
|
Packit Service |
087331 |
echo "native build"
|
|
Packit Service |
087331 |
;;
|
|
Packit Service |
087331 |
esac
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
title "compiler version"
|
|
Packit Service |
087331 |
$CC --version
|
|
Packit Service |
087331 |
echo "CFLAGS: '$CFLAGS'"
|
|
Packit Service |
087331 |
echo "LDFLAGS: '$LDFLAGS'"
|
|
Packit Service |
087331 |
echo "PREFIX: '$PREFIX'"
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
title "configure"
|
|
Packit Service |
087331 |
./autogen.sh
|
|
Packit Service |
087331 |
./configure --prefix=$PREFIX $host || log_exit config.log "configure failed"
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
title "make"
|
|
Packit Service |
087331 |
make -j$(nproc)
|
|
Packit Service |
087331 |
make install
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
title "test"
|
|
Packit Service |
087331 |
if [ "$VARIANT" = "cross-compile" ]; then
|
|
Packit Service |
087331 |
echo "skip make check on cross compilation"
|
|
Packit Service |
087331 |
exit 0
|
|
Packit Service |
087331 |
fi
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
ret=0
|
|
Packit Service |
087331 |
VERBOSE=1 make check || ret=$?
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
title "logs"
|
|
Packit Service |
087331 |
if [ $ret -eq 0 ]; then
|
|
Packit Service |
087331 |
tail -3 tests/ima_hash.log
|
|
Packit Service |
087331 |
tail -3 tests/sign_verify.log
|
|
Packit Service |
087331 |
tail -20 tests/boot_aggregate.log
|
|
Packit Service |
087331 |
exit 0
|
|
Packit Service |
087331 |
fi
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
cat tests/test-suite.log
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
if [ $ret -eq 77 ]; then
|
|
Packit Service |
087331 |
msg="WARN: some tests skipped"
|
|
Packit Service |
087331 |
ret=0
|
|
Packit Service |
087331 |
else
|
|
Packit Service |
087331 |
msg="FAIL: tests exited: $ret"
|
|
Packit Service |
087331 |
fi
|
|
Packit Service |
087331 |
|
|
Packit Service |
087331 |
log_exit tests/test-suite.log "$msg" $ret
|