toxcore/.travis/autotools-linux

55 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
ACTION="$1"
set -eu
CACHEDIR="$HOME/cache"
NPROC=$(nproc)
travis_install() {
# Install vanilla NaCl only.
[ -f "$CACHEDIR/lib/amd64/libnacl.a" ] || {
curl https://hyperelliptic.org/nacl/nacl-20110221.tar.bz2 | tar jx
cd nacl-20110221 # pushd
"./do"
# "make install"
mkdir -p "$CACHEDIR/include"
mv build/*/include/* "$CACHEDIR/include"
mkdir -p "$CACHEDIR/lib"
mv build/*/lib/* "$CACHEDIR/lib"
cd - # popd
}
}
travis_script() {
. ".travis/flags-$CC.sh"
add_ld_flag -Wl,-z,defs
# Make compilation error on a warning
add_flag -Werror
add_config_flag --with-nacl-libs="$CACHEDIR/lib/amd64"
add_config_flag --with-nacl-headers="$CACHEDIR/include/amd64"
add_config_flag --disable-ipv6
add_config_flag --enable-nacl
add_config_flag --enable-daemon
add_config_flag --enable-logging
add_config_flag --with-log-level=TRACE
autoreconf -fi
mkdir -p _build
cd _build # pushd
../configure "${CONFIG_FLAGS[@]}" || (cat config.log && false)
make "-j$NPROC" -k CFLAGS="$C_FLAGS" LDFLAGS="$LD_FLAGS"
make -j50 -k distcheck DISTCHECK_CONFIGURE_FLAGS="${CONFIG_FLAGS[*]}" || (cat tox-*/_build/build/test-suite.log && false)
cd - # popd
}
if [ "-z" "$ACTION" ]; then
"travis_script"
else
"travis_$ACTION"
fi