mirror of
https://github.com/irungentoo/toxcore.git
synced 2024-03-22 13:30:51 +08:00
43 lines
1.2 KiB
Bash
Executable File
43 lines
1.2 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# Enable test coverage recording.
|
|
export CFLAGS="$CFLAGS -fprofile-arcs -ftest-coverage"
|
|
|
|
set_opt() {
|
|
opts="$opts -D$1="`expr ON \& \( $i % 2 \) \| OFF`
|
|
set +e # result can be 0
|
|
i=`expr $i / 2`
|
|
set -e
|
|
}
|
|
|
|
# Try some combinations of cmake options.
|
|
for i in `seq 0 7`; do
|
|
set +x
|
|
opts="$CMAKE_EXTRA_FLAGS -DWARNINGS=OFF"
|
|
set_opt STRICT_ABI
|
|
set_opt ENABLE_STATIC
|
|
set_opt ENABLE_SHARED
|
|
set -x
|
|
RUN $CMAKE -B$BUILD_DIR -H. $opts
|
|
RUN rm -rf $BUILD_DIR
|
|
done
|
|
|
|
# Build toxcore and run tests.
|
|
RUN $CMAKE \
|
|
-B$BUILD_DIR \
|
|
-H. \
|
|
-DCMAKE_INSTALL_PREFIX:PATH=$CURDIR/_install \
|
|
-DASAN=ON \
|
|
-DDEBUG=ON \
|
|
-DSTRICT_ABI=ON \
|
|
-DTEST_TIMEOUT_SECONDS=120 \
|
|
-DTRACE=ON \
|
|
$CMAKE_EXTRA_FLAGS
|
|
|
|
export CTEST_OUTPUT_ON_FAILURE=1
|
|
|
|
RUN $MAKE -C$BUILD_DIR -j$NPROC -k install
|
|
if $RUN_TESTS; then
|
|
TESTS $MAX_TEST_RETRIES $MAKE -C$BUILD_DIR -j$NPROC test ARGS="--rerun-failed" CTEST_OUTPUT_ON_FAILURE="$CTEST_OUTPUT_ON_FAILURE"
|
|
fi
|