return $err
}
-function check_nonroot
+# TODO: integrate checkusage into our regular tests and remove this function
+function make_checkusage
{
- local opts="$MAKE_CHECK_OPTS --show-diff"
+ local tmp
+ if ! tmp=$($MAKE checkusage 2>&1) || test -n "$tmp"; then
+ echo "$tmp"
+ echo "make checkusage failed" >&2
+ return 1
+ fi
+}
- xconfigure \
+function check_nonroot
+{
+ local make_opts="$MAKE_CHECK_OPTS --show-diff"
+ local conf_opts="\
--disable-use-tty-group \
--disable-makeinstall-chown \
- --enable-all-programs \
- || return
+ --enable-all-programs"
+
+ if [ "$TRAVIS_OS_NAME" != "osx" ]; then
+ conf_opts="$conf_opts --enable-asan"
+ make_opts="$make_opts --memcheck-asan"
+ fi
+
+ xconfigure $conf_opts || return
$MAKE || return
osx_prepare_check
- $MAKE check TS_OPTS="$opts" || return
+ $MAKE check TS_OPTS="$make_opts" || return
+
+ make_checkusage || return
$MAKE install DESTDIR=/tmp/dest || return
}
function check_root
{
- local opts="$MAKE_CHECK_OPTS --parallel=1 --show-diff"
+ local make_opts="$MAKE_CHECK_OPTS --show-diff"
+ local conf_opts="--enable-all-programs"
- xconfigure \
- --enable-all-programs \
- || return
+ if [ "$TRAVIS_OS_NAME" != "osx" ]; then
+ conf_opts="$conf_opts --enable-asan"
+ make_opts="$make_opts --memcheck-asan"
+ fi
+
+ xconfigure $conf_opts || return
$MAKE || return
$MAKE check TS_COMMAND="true" || return
osx_prepare_check
- sudo -E $MAKE check TS_OPTS="$opts" || return
+ sudo -E $MAKE check TS_OPTS="$make_opts" || return
+
+ # root on osx has not enough permission for make install ;)
+ [ "$TRAVIS_OS_NAME" = "osx" ] && return
# keep PATH to make sure sudo would find $CC
sudo env "PATH=$PATH" $MAKE install || return
function osx_install_script
{
brew update >/dev/null
- brew tap homebrew/dupes
brew install gettext ncurses socat xz
brew link --force gettext