| author | |
| committer | |
| log | 6623a11b2cf13bdbebd0b128052d230cc5d72234 |
| tree | f9263c62252fc6bf08a3844da401044f6d97c629 |
| parent | b59aa7b906c984f182b8abc8fd3e146d956a799d |
7 files changed, 90 insertions(+), 18 deletions(-)
.travis.yml+10-18| ... | ... | @@ -1,24 +1,16 @@ |
| 1 | os: | |
| 2 | - linux | |
| 3 | - osx | |
| 1 | 4 | dist: trusty |
| 5 | osx_image: xcode8.3 | |
| 2 | 6 | sudo: required |
| 3 | 7 | language: cpp |
| 4 | 8 | before_install: |
| 5 | - sudo sh -c 'echo "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-5.0 main" >> /etc/apt/sources.list' | |
| 6 | - wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - | |
| 7 | - sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test | |
| 8 | - sudo apt-get update -q | |
| 9 | - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then ci/travis_linux_before_install; fi | |
| 10 | - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ci/travis_osx_before_install; fi | |
| 9 | 11 | install: |
| 10 | - sudo apt-get remove -y llvm-* | |
| 11 | - sudo rm -rf /usr/local/* | |
| 12 | - sudo apt-get install -y clang-5.0 libclang-5.0 libclang-5.0-dev llvm-5.0 llvm-5.0-dev liblld-5.0 liblld-5.0-dev cmake | |
| 12 | - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then ci/travis_linux_install; fi | |
| 13 | - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ci/travis_osx_install; fi | |
| 13 | 14 | script: |
| 14 | - export CC=clang-5.0 | |
| 15 | - export CXX=clang++-5.0 | |
| 16 | - which $CC | |
| 17 | - which $CXX | |
| 18 | - echo $PATH | |
| 19 | - mkdir build | |
| 20 | - cd build | |
| 21 | - cmake .. -DCMAKE_INSTALL_PREFIX=$(pwd) -DZIG_LIBC_LIB_DIR=$(dirname $($CC -print-file-name=crt1.o)) -DZIG_LIBC_INCLUDE_DIR=$(echo -n | $CC -E -x c - -v 2>&1 | grep -B1 "End of search list." | head -n1 | cut -c 2- | sed "s/ .*//") -DZIG_LIBC_STATIC_LIB_DIR=$(dirname $($CC -print-file-name=crtbegin.o)) | |
| 22 | - make VERBOSE=1 | |
| 23 | - make install | |
| 24 | - ./zig build --build-file ../build.zig test | |
| 15 | - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then ci/travis_linux_script; fi | |
| 16 | - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then ci/travis_osx_script; fi |
ci/travis_linux_before_install created+6| ... | ... | @@ -0,0 +1,6 @@ |
| 1 | #!/bin/sh | |
| 2 | ||
| 3 | sudo sh -c 'echo "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-5.0 main" >> /etc/apt/sources.list' | |
| 4 | wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - | |
| 5 | sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test | |
| 6 | sudo apt-get update -q |
ci/travis_linux_install created+5| ... | ... | @@ -0,0 +1,5 @@ |
| 1 | #!/bin/sh | |
| 2 | ||
| 3 | sudo apt-get remove -y llvm-* | |
| 4 | sudo rm -rf /usr/local/* | |
| 5 | sudo apt-get install -y clang-5.0 libclang-5.0 libclang-5.0-dev llvm-5.0 llvm-5.0-dev liblld-5.0 liblld-5.0-dev cmake |
ci/travis_linux_script created+13| ... | ... | @@ -0,0 +1,13 @@ |
| 1 | #!/bin/sh | |
| 2 | ||
| 3 | export CC=clang-5.0 | |
| 4 | export CXX=clang++-5.0 | |
| 5 | which $CC | |
| 6 | which $CXX | |
| 7 | echo $PATH | |
| 8 | mkdir build | |
| 9 | cd build | |
| 10 | cmake .. -DCMAKE_INSTALL_PREFIX=$(pwd) -DZIG_LIBC_LIB_DIR=$(dirname $($CC -print-file-name=crt1.o)) -DZIG_LIBC_INCLUDE_DIR=$(echo -n | $CC -E -x c - -v 2>&1 | grep -B1 "End of search list." | head -n1 | cut -c 2- | sed "s/ .*//") -DZIG_LIBC_STATIC_LIB_DIR=$(dirname $($CC -print-file-name=crtbegin.o)) | |
| 11 | make VERBOSE=1 | |
| 12 | make install | |
| 13 | ./zig build --build-file ../build.zig test |
ci/travis_osx_before_install created+3| ... | ... | @@ -0,0 +1,3 @@ |
| 1 | #!/bin/sh | |
| 2 | ||
| 3 | brew update |
ci/travis_osx_install created+39| ... | ... | @@ -0,0 +1,39 @@ |
| 1 | #!/bin/sh | |
| 2 | ||
| 3 | brew install gcc@7 | |
| 4 | brew outdated gcc@7 || brew upgrade gcc@7 | |
| 5 | ||
| 6 | SRC_DIR=$(pwd) | |
| 7 | PREFIX_DIR=$SRC_DIR/local | |
| 8 | export CC=/usr/local/opt/gcc/bin/$(uname -m)-apple-darwin$(uname -r)-gcc-7 | |
| 9 | export CXX=/usr/local/opt/gcc/bin/$(uname -m)-apple-darwin$(uname -r)-g++-7 | |
| 10 | ||
| 11 | wget http://prereleases.llvm.org/5.0.0/rc2/llvm-5.0.0rc2.src.tar.xz | |
| 12 | wget http://prereleases.llvm.org/5.0.0/rc2/cfe-5.0.0rc2.src.tar.xz | |
| 13 | wget http://prereleases.llvm.org/5.0.0/rc2/lld-5.0.0rc2.src.tar.xz | |
| 14 | ||
| 15 | cd $SRC_DIR | |
| 16 | tar xvf llvm-5.0.0rc2.src.tar.xz | |
| 17 | cd llvm-5.0.0rc2.src | |
| 18 | mkdir build | |
| 19 | cd build | |
| 20 | cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX_DIR -DCMAKE_PREFIX_PATH=$PREFIX_DIR | |
| 21 | make install | |
| 22 | ||
| 23 | cd $SRC_DIR | |
| 24 | tar xvf lld-5.0.0rc2.src.tar.xz | |
| 25 | cd lld-5.0.0rc2.src | |
| 26 | mkdir build | |
| 27 | cd build | |
| 28 | cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX_DIR -DCMAKE_PREFIX_PATH=$PREFIX_DIR | |
| 29 | make install | |
| 30 | ||
| 31 | cd $SRC_DIR | |
| 32 | tar xvf cfe-5.0.0rc2.src.tar.xz | |
| 33 | cd cfe-5.0.0rc2.src | |
| 34 | mkdir build | |
| 35 | cd build | |
| 36 | cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX_DIR -DCMAKE_PREFIX_PATH=$PREFIX_DIR | |
| 37 | make install | |
| 38 | ||
| 39 | cd $SRC_DIR |
ci/travis_osx_script created+14| ... | ... | @@ -0,0 +1,14 @@ |
| 1 | #!/bin/sh | |
| 2 | ||
| 3 | PREFIX_DIR=$(pwd)/local | |
| 4 | export CC=/usr/local/opt/gcc/bin/$(uname -m)-apple-darwin$(uname -r)-gcc-7 | |
| 5 | export CXX=/usr/local/opt/gcc/bin/$(uname -m)-apple-darwin$(uname -r)-g++-7 | |
| 6 | ||
| 7 | echo $PATH | |
| 8 | mkdir build | |
| 9 | cd build | |
| 10 | cmake .. -DCMAKE_PREFIX_PATH=$PREFIX_DIR -DCMAKE_INSTALL_PREFIX=$(pwd) -DZIG_LIBC_LIB_DIR=$(dirname $($CC -print-file-name=crt1.o)) -DZIG_LIBC_INCLUDE_DIR=$(echo -n | $CC -E -x c - -v 2>&1 | grep -B1 "End of search list." | head -n1 | cut -c 2- | sed "s/ .*//") -DZIG_LIBC_STATIC_LIB_DIR=$(dirname $($CC -print-file-name=crtbegin.o)) | |
| 11 | make VERBOSE=1 | |
| 12 | make install | |
| 13 | # TODO get tests passing on macos | |
| 14 | # ./zig build --build-file ../build.zig test |