-
Notifications
You must be signed in to change notification settings - Fork 36
/
.travis.osx.yml
94 lines (88 loc) · 2.94 KB
/
.travis.osx.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
osx_image: xcode7
language: objective-c
env:
matrix:
- CMAKE_CXX_COMPILER=g++-5 CMAKE_C_COMPILER=gcc-5
CMAKE_BUILD_TYPE=Release
CTEST=TRUE
CPACK=TRUE
- CMAKE_CXX_COMPILER=g++-5 CMAKE_C_COMPILER=gcc-5
CMAKE_BUILD_TYPE=Debug
CTEST=TRUE
- CMAKE_CXX_COMPILER=clang++ CMAKE_C_COMPILER=clang
CMAKE_BUILD_TYPE=Release
CTEST=TRUE
- CMAKE_CXX_COMPILER=clang++ CMAKE_C_COMPILER=clang
CMAKE_BUILD_TYPE=Debug
CTEST=TRUE
install:
- brew update
- brew --config
- brew --env
- brew install cmake
- if [[ ${CMAKE_CXX_COMPILER} == g++-5 ]]; then
brew install gcc;
COMPILER=g++-5.2.0;
fi
- if [[ ${CMAKE_CXX_COMPILER} == clang++ ]]; then
wget https://dl.dropboxusercontent.com/u/203889738/gcc/clang+llvm-3.4.1-x86_64-apple-darwin10.9.tar.xz;
sudo tar xfz clang+llvm-3.4.1-x86_64-apple-darwin10.9.tar.xz -C /;
sudo chown -R `whoami` /usr/bin;
export LIBRARY_PATH=/usr/lib:/usr/local/lib;
COMPILER=clang++-3.4.1;
fi
- brew install ninja
# ocaml, opam, ocamlfind, ocaml-batteries
- if [[ ${CPACK} == TRUE ]]; then
export OPAMYES=1;
export OPAMVERBOSE=1;
brew update;
brew reinstall ocaml;
brew install libffi opam;
opam init;
opam switch $OCAML_VERSION;
eval `opam config env`;
opam update;
opam install ocamlfind batteries oasis;
eval `opam config env`;
fi
before_script:
- SITE=OSX10.10.5@Travis
- BUILD_NAME=${TRAVIS_BRANCH}_${COMPILER}_${CMAKE_BUILD_TYPE}
- GIT_SUBJECT=`git log HEAD~ --oneline -n 1 | cut -d ' ' -f 2-`
- GIT_SUBJECT=${GIT_SUBJECT//\"/\\\"}
- GIT_SUBJECT=${GIT_SUBJECT//,/\,}
- GIT_SUBJECT=$(echo -e $(printf '%q' "$GIT_SUBJECT"))
script:
# compile dReal
- mkdir build
- cd build
- cmake -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -G Ninja ../src
- CONFIG_FILE=DartConfiguration.tcl
- sed -i "" "s/^Site:.*/Site:$SITE/" $CONFIG_FILE
- sed -i "" "s/BuildName:.*/BuildName:$BUILD_NAME/" $CONFIG_FILE
- ctest -D ExperimentalConfigure
- sed -i "" "s/^Site:.*/Site:$SITE/" $CONFIG_FILE
- sed -i "" "s/BuildName:.*/BuildName:$BUILD_NAME/" $CONFIG_FILE
- ctest -D ExperimentalBuild -VV
- cd ..
after_script:
- cd build
- if [[ $CTEST == TRUE ]]; then
ctest -D ExperimentalTest -L normal --timeout 250 -VV;
fi
- find Testing -name "*.xml" -exec sed -i "" "s,Generator=\".*\",Generator=\"${TRAVIS_COMMIT}###${GIT_SUBJECT}\"," {} ";"
- find Testing \( -name "LastTest_*.log" -o -name "LastDynamicAnalysis_*.log" \) -exec sh -c 'TMP=`mktemp /tmp/ctesttmp_XXXX`; ../script/demangle_cpptype.py {} > $TMP; mv -v $TMP {}' ";"
- ctest -D ExperimentalSubmit
# compile tools
- if [[ ${CPACK} == TRUE ]]; then
make -C ../tools;
cpack;
fi
- cd ..
notifications:
email:
recipients:
on_success: change
on_failure: always