language: cpp sudo: false matrix: include: - os: linux env: ARCH="i686" compiler: "g++-5 -m32" addons: apt: sources: - ubuntu-toolchain-r-test - kalakris-cmake packages: - cmake - bar - time - binutils - gcc-5 - g++-5 - gcc-5-multilib - g++-5-multilib - make:i386 - libssl-dev:i386 - gfortran-5 - gfortran-5-multilib - os: linux env: ARCH="x86_64" compiler: "g++-5 -m64" addons: apt: sources: - ubuntu-toolchain-r-test - kalakris-cmake packages: - cmake - bar - time - g++-5 - gfortran-5 - os: osx env: ARCH="x86_64" cache: directories: - $TRAVIS_BUILD_DIR/deps/srccache - $TRAVIS_BUILD_DIR/deps/build branches: only: - master - /release-.*/ notifications: email: false irc: channels: - "chat.freenode.net#julia-notifications" on_success: change on_failure: always webhooks: urls: - http://status.julialang.org/put/travis - http://julia.mit.edu:8000/travis-hook before_install: - make check-whitespace - if [ `uname` = "Linux" ]; then contrib/travis_fastfail.sh || exit 1; mkdir -p $HOME/bin; ln -s /usr/bin/gcc-5 $HOME/bin/gcc; ln -s /usr/bin/g++-5 $HOME/bin/g++; ln -s /usr/bin/gfortran-5 $HOME/bin/gfortran; ln -s /usr/bin/gcc-5 $HOME/bin/x86_64-linux-gnu-gcc; ln -s /usr/bin/g++-5 $HOME/bin/x86_64-linux-gnu-g++; gcc --version; BUILDOPTS="-j3 VERBOSE=1 FORCE_ASSERTIONS=1 LLVM_ASSERTIONS=1"; echo "override ARCH=$ARCH" >> Make.user; TESTSTORUN="all"; elif [ `uname` = "Darwin" ]; then brew update; brew install -v jq bar; contrib/travis_fastfail.sh || exit 1; brew tap staticfloat/julia; brew rm --force $(brew deps --HEAD julia); brew install -v staticfloat/juliadeps/libgfortran; brew install -v --only-dependencies --HEAD julia; BUILDOPTS="-j3 USECLANG=1 LLVM_CONFIG=$(brew --prefix llvm37-julia)/bin/llvm-config-3.7.1 LLVM_SIZE=$(brew --prefix llvm37-julia)/bin/llvm-size-3.7.1"; BUILDOPTS="$BUILDOPTS VERBOSE=1 USE_BLAS64=0 SUITESPARSE_INC=-I$(brew --prefix suite-sparse-julia)/include FORCE_ASSERTIONS=1 STAGE2_DEPS=utf8proc"; BUILDOPTS="$BUILDOPTS LIBBLAS=-lopenblas LIBBLASNAME=libopenblas LIBLAPACK=-lopenblas LIBLAPACKNAME=libopenblas"; for lib in LLVM SUITESPARSE ARPACK BLAS FFTW LAPACK GMP MPFR PCRE LIBUNWIND; do export BUILDOPTS="$BUILDOPTS USE_SYSTEM_$lib=1"; done; export CXXFLAGS=-DUSE_ORCJIT; export LDFLAGS="-L$(brew --prefix openblas-julia)/lib -L$(brew --prefix suite-sparse-julia)/lib"; export DYLD_FALLBACK_LIBRARY_PATH="/usr/local/lib:/lib:/usr/lib:$(brew --prefix openblas-julia)/lib:$(brew --prefix suite-sparse-julia)/lib:$(brew --prefix arpack-julia)/lib"; make $BUILDOPTS -C contrib -f repackage_system_suitesparse4.make; TESTSTORUN="all --skip linalg/triangular subarray"; fi # TODO: re enable these if possible without timing out - git clone -q git://git.kitenet.net/moreutils script: - make -C moreutils mispipe - make $BUILDOPTS -C base version_git.jl.phony - moreutils/mispipe "make $BUILDOPTS NO_GIT=1 -C deps" bar > deps.log || cat deps.log - make $BUILDOPTS NO_GIT=1 prefix=/tmp/julia install | moreutils/ts -s "%.s" - make $BUILDOPTS NO_GIT=1 build-stats - du -sk /tmp/julia/* - if [ `uname` = "Darwin" ]; then for name in suitesparseconfig spqr umfpack colamd cholmod amd suitesparse_wrapper; do install -pm755 usr/lib/lib${name}*.dylib* /tmp/julia/lib/julia/; done; fi - cd .. && mv julia julia2 - /tmp/julia/bin/julia --precompiled=no -e 'true' && /tmp/julia/bin/julia-debug --precompiled=no -e 'true' - /tmp/julia/bin/julia -e 'versioninfo()' - export JULIA_CPU_CORES=2 && export JULIA_TEST_MAXRSS_MB=600 && cd /tmp/julia/share/julia/test && /tmp/julia/bin/julia --check-bounds=yes runtests.jl $TESTSTORUN && /tmp/julia/bin/julia --check-bounds=yes runtests.jl libgit2-online pkg - cd `dirname $TRAVIS_BUILD_DIR` && mv julia2 julia && rm -rf julia/deps/build/julia-env # uncomment the following if failures are suspected to be due to the out-of-memory killer # - dmesg