authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-08-27 01:07:06-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2017-08-27 01:07:06-04:00
log6623a11b2cf13bdbebd0b128052d230cc5d72234
treef9263c62252fc6bf08a3844da401044f6d97c629
parentb59aa7b906c984f182b8abc8fd3e146d956a799d

travis: add macos script


7 files changed, 90 insertions(+), 18 deletions(-)

.travis.yml+10-18
......@@ -1,24 +1,16 @@
1os:
2 - linux
3 - osx
14dist: trusty
5osx_image: xcode8.3
26sudo: required
37language: cpp
48before_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
911install:
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
1314script:
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
3sudo sh -c 'echo "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-5.0 main" >> /etc/apt/sources.list'
4wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
5sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
6sudo apt-get update -q
ci/travis_linux_install created+5
......@@ -0,0 +1,5 @@
1#!/bin/sh
2
3sudo apt-get remove -y llvm-*
4sudo rm -rf /usr/local/*
5sudo 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
3export CC=clang-5.0
4export CXX=clang++-5.0
5which $CC
6which $CXX
7echo $PATH
8mkdir build
9cd build
10cmake .. -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))
11make VERBOSE=1
12make install
13./zig build --build-file ../build.zig test
ci/travis_osx_before_install created+3
......@@ -0,0 +1,3 @@
1#!/bin/sh
2
3brew update
ci/travis_osx_install created+39
......@@ -0,0 +1,39 @@
1#!/bin/sh
2
3brew install gcc@7
4brew outdated gcc@7 || brew upgrade gcc@7
5
6SRC_DIR=$(pwd)
7PREFIX_DIR=$SRC_DIR/local
8export CC=/usr/local/opt/gcc/bin/$(uname -m)-apple-darwin$(uname -r)-gcc-7
9export CXX=/usr/local/opt/gcc/bin/$(uname -m)-apple-darwin$(uname -r)-g++-7
10
11wget http://prereleases.llvm.org/5.0.0/rc2/llvm-5.0.0rc2.src.tar.xz
12wget http://prereleases.llvm.org/5.0.0/rc2/cfe-5.0.0rc2.src.tar.xz
13wget http://prereleases.llvm.org/5.0.0/rc2/lld-5.0.0rc2.src.tar.xz
14
15cd $SRC_DIR
16tar xvf llvm-5.0.0rc2.src.tar.xz
17cd llvm-5.0.0rc2.src
18mkdir build
19cd build
20cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX_DIR -DCMAKE_PREFIX_PATH=$PREFIX_DIR
21make install
22
23cd $SRC_DIR
24tar xvf lld-5.0.0rc2.src.tar.xz
25cd lld-5.0.0rc2.src
26mkdir build
27cd build
28cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX_DIR -DCMAKE_PREFIX_PATH=$PREFIX_DIR
29make install
30
31cd $SRC_DIR
32tar xvf cfe-5.0.0rc2.src.tar.xz
33cd cfe-5.0.0rc2.src
34mkdir build
35cd build
36cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$PREFIX_DIR -DCMAKE_PREFIX_PATH=$PREFIX_DIR
37make install
38
39cd $SRC_DIR
ci/travis_osx_script created+14
......@@ -0,0 +1,14 @@
1#!/bin/sh
2
3PREFIX_DIR=$(pwd)/local
4export CC=/usr/local/opt/gcc/bin/$(uname -m)-apple-darwin$(uname -r)-gcc-7
5export CXX=/usr/local/opt/gcc/bin/$(uname -m)-apple-darwin$(uname -r)-g++-7
6
7echo $PATH
8mkdir build
9cd build
10cmake .. -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))
11make VERBOSE=1
12make install
13# TODO get tests passing on macos
14# ./zig build --build-file ../build.zig test