function xconfigure
{
- ./configure "$@"
+ ./configure "$@" $OSX_CONFOPTS
err=$?
if [ "$DUMP_CONFIG_LOG" = "short" ]; then
grep -B1 -A10000 "^## Output variables" config.log | grep -v "_FALSE="
xconfigure \
--disable-use-tty-group \
- --with-python \
--enable-all-programs \
- --enable-gtk-doc \
|| return
$MAKE || return
+
+ osx_prepare_check
$MAKE check TS_OPTS="$opts" || return
+
$MAKE install DESTDIR=/tmp/dest || return
}
local opts="$MAKE_CHECK_OPTS --parallel=1"
xconfigure \
- --with-python \
--enable-all-programs \
|| return
$MAKE || return
+
$MAKE check TS_COMMAND="true" || return
+ osx_prepare_check
sudo -E $MAKE check TS_OPTS="$opts" || return
+
sudo $MAKE install || return
}
function travis_install_script
{
+ if [ "$TRAVIS_OS_NAME" = "osx" ]; then
+ osx_install_script
+ return
+ fi
+
# install some packages from Ubuntu's default sources
sudo apt-get -qq update || return
sudo apt-get install -qq >/dev/null \
|| true
}
+function osx_install_script
+{
+ brew update >/dev/null
+ brew tap homebrew/dupes
+
+ brew install gettext ncurses socat xz
+ brew link --force gettext
+ brew link --force ncurses
+
+ OSX_CONFOPTS="
+ --disable-runuser \
+ --disable-su \
+ --disable-login \
+ --disable-last \
+ --disable-utmpdump \
+ --disable-agetty \
+ --disable-wall \
+ --disable-ipcrm \
+ --disable-ipcs \
+ --disable-write \
+ "
+}
+
+function osx_prepare_check
+{
+ [ "$TRAVIS_OS_NAME" = "osx" ] || return 0
+
+ # these ones only need to be gnu for our test-suite
+ brew install coreutils findutils gnu-tar gnu-sed
+
+ # symlink minimally needed gnu commands into PATH
+ mkdir ~/bin
+ for cmd in md5sum readlink seq truncate find xargs tar sed; do
+ ln -s /usr/local/bin/g$cmd $HOME/bin/$cmd
+ done
+ hash -r
+
+ export TS_OPT_col_multibyte_known_fail=yes
+ export TS_OPT_colcrt_regressions_known_fail=yes
+ export TS_OPT_column_invalid_multibyte_known_fail=yes
+}
+
function travis_before_script
{
set -o xtrace