https://github.com/JuliaLang/julia
Raw File
Tip revision: 26d7bb86c41a2343ad65e4da3e2bea2c7bc72e1c authored by Jameson Nash on 27 February 2016, 05:20:43 UTC
merge calls to identical methods (differing only by type signature) after doing union splitting
Tip revision: 26d7bb8
.travis.yml
language: cpp
sudo: false
matrix:
  include:
    - os: linux
      env: ARCH="i686"
      compiler: "g++-5 -m32"
      addons:
        apt:
          sources:
            - ubuntu-toolchain-r-test
          packages:
            - 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
          packages:
            - 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
    - JULIA_SYSIMG_BUILD_FLAGS="--output-ji ../usr/lib/julia/sys.ji"
    - 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";
        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 --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 LIBGIT2; 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;
        JULIA_SYSIMG_BUILD_FLAGS="$JULIA_SYSIMG_BUILD_FLAGS --compile=all";
        COMPILE_MODE="--compile=min";
        TESTSTORUN="core ccall mmap llvmcall threads"; fi # TODO: turn this back to "all" once it's fast enough to not time 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 JULIA_SYSIMG_BUILD_FLAGS="$JULIA_SYSIMG_BUILD_FLAGS" 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
    - cp /tmp/julia/lib/julia/sys.ji local.ji && /tmp/julia/bin/julia -J local.ji -e 'true' &&
        /tmp/julia/bin/julia-debug -J local.ji -e 'true' && rm local.ji
    - /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 $COMPILE_MODE runtests.jl $TESTSTORUN &&
        /tmp/julia/bin/julia --check-bounds=yes $COMPILE_MODE 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
back to top