2018-06-25 06:56:07 +08:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
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"
|
2018-08-25 22:16:30 +08:00
|
|
|
make -j50 -k distcheck DISTCHECK_CONFIGURE_FLAGS="$CONFIG_FLAGS"
|
2018-06-25 06:56:07 +08:00
|
|
|
cd - # popd
|
|
|
|
}
|
|
|
|
|
|
|
|
if [ "-z" "$ACTION" ]; then
|
|
|
|
"travis_script"
|
|
|
|
else
|
|
|
|
"travis_$ACTION"
|
|
|
|
fi
|