-
Notifications
You must be signed in to change notification settings - Fork 7
/
.travis.yml
124 lines (115 loc) · 6.12 KB
/
.travis.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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
language: c
branches:
only:
- master
matrix:
allow_failures:
- env:
- CROSSCOMPILE=x86_64-w64-mingw32
- WINEDEBUG=-all
- env:
- CROSSCOMPILE=i686-w64-mingw32
- WINEDEBUG=-all
include:
- os: linux
compiler: gcc
env:
- CROSSCOMPILE=x86_64-w64-mingw32
- WINEDEBUG=-all
addons:
apt:
sources:
- sourceline: deb https://dl.winehq.org/wine-builds/ubuntu/ trusty main
key_url: https://dl.winehq.org/wine-builds/Release.key
packages:
- cmake
- swig
- ocaml-mingw-w64-x86-64
- gcc-mingw-w64-x86-64
- winehq-stable
- os: linux
compiler: gcc
env:
- CROSSCOMPILE=i686-w64-mingw32
- WINEDEBUG=-all
addons:
apt:
sources:
- sourceline: deb https://dl.winehq.org/wine-builds/ubuntu/ trusty main
key_url: https://dl.winehq.org/wine-builds/Release.key
packages:
- cmake
- swig
- ocaml-mingw-w64-i686
- gcc-mingw-w64-i686
- winehq-stable
- os: linux
compiler: gcc
env:
- CROSSCOMPILE=x86_64-opam-cross-windows
- WINEDEBUG=-all
addons:
apt:
sources:
- sourceline: ppa:avsm/ppa
key_url: http://keyserver.ubuntu.com:11371/pks/lookup?op=get&search=0xDD3D0AF807E3ADD0
- sourceline: deb https://dl.winehq.org/wine-builds/ubuntu/ trusty main
key_url: https://dl.winehq.org/wine-builds/Release.key
packages:
- cmake
- swig
- opam
- gcc-mingw-w64-x86-64
- winehq-stable
- os: linux
compiler: gcc
env:
- CROSSCOMPILE=i686-opam-cross-windows
- WINEDEBUG=-all
addons:
apt:
sources:
- sourceline: ppa:avsm/ppa
key_url: http://keyserver.ubuntu.com:11371/pks/lookup?op=get&search=0xDD3D0AF807E3ADD0
- sourceline: deb https://dl.winehq.org/wine-builds/ubuntu/ trusty main
key_url: https://dl.winehq.org/wine-builds/Release.key
packages:
- cmake
- swig
- opam
- gcc-mingw-w64-i686
- gcc-multilib
- winehq-stable
sudo: required
dist: trusty
group: edge
osx_image: xcode8
os:
- linux
- osx
compiler:
- gcc
- clang
env:
- CROSSCOMPILE=native
addons:
apt:
sources:
- sourceline: ppa:avsm/ppa
key_url: http://keyserver.ubuntu.com:11371/pks/lookup?op=get&search=0xDD3D0AF807E3ADD0
packages:
- cmake
- swig
- ocaml
before_install:
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install swig ; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install ocaml ; fi
- if [[ "$CROSSCOMPILE" == "x86_64-opam-cross-windows" ]]; then opam init -y --comp 4.06.1 --root ~/opam-cross-windows && eval `opam config env --root ~/opam-cross-windows` && opam switch 4.06.1 && eval `opam config env` && opam repository add windows git://github.com/whitequark/opam-cross-windows && opam pin -y add ocamlbuild https://github.com/ocaml/ocamlbuild.git && opam pin -y add topkg https://github.com/whitequark/topkg.git && opam install conf-flambda-windows && opam install -y ocaml-windows; fi
- if [[ "$CROSSCOMPILE" == "i686-opam-cross-windows" ]]; then opam init -y --comp 4.06.1+32bit --root ~/opam-cross-windows && eval `opam config env --root ~/opam-cross-windows` && opam switch 4.06.1+32bit && eval `opam config env` && opam repository add windows git://github.com/whitequark/opam-cross-windows && opam pin -y add ocamlbuild https://github.com/ocaml/ocamlbuild.git && opam pin -y add topkg https://github.com/whitequark/topkg.git && opam install conf-flambda-windows && opam install -y ocaml-windows; fi
script:
- if [[ "$CROSSCOMPILE" == "native" ]]; then ocamlc -config; rm -fr tmp-build && mkdir -p tmp-build && cd tmp-build && cmake .. -DCMAKE_VERBOSE_MAKEFILE=on -DCMAKE_INSTALL_PREFIX:PATH="`pwd`"/install -DCMAKE_C_FLAGS="-Wall -Werror" -DCMAKE_OCaml_FLAGS=-verbose -DCMAKE_OCaml_LINKER_FLAGS=-verbose && make && make install && find "`pwd`"/install; fi
- if [[ "$CROSSCOMPILE" == "x86_64-w64-mingw32" ]]; then x86_64-w64-mingw32-ocamlc -config; rm -fr tmp-build && mkdir -p tmp-build && cd tmp-build && cmake .. -DCMAKE_VERBOSE_MAKEFILE=on -DCMAKE_INSTALL_PREFIX:PATH="`pwd`"/install -DCMAKE_C_FLAGS="-Wall -Werror" -DCMAKE_OCaml_FLAGS=-verbose -DCMAKE_OCaml_LINKER_FLAGS=-verbose -DCMAKE_TOOLCHAIN_FILE=../ocaml-cmake/toolchains/Toolchain-mingw64.cmake && make && make install && find "`pwd`"/install; fi
- if [[ "$CROSSCOMPILE" == "i686-w64-mingw32" ]]; then i686-w64-mingw32-ocamlc -config; rm -fr tmp-build && mkdir -p tmp-build && cd tmp-build && cmake .. -DCMAKE_VERBOSE_MAKEFILE=on -DCMAKE_INSTALL_PREFIX:PATH="`pwd`"/install -DCMAKE_C_FLAGS="-Wall -Werror" -DCMAKE_OCaml_FLAGS=-verbose -DCMAKE_OCaml_LINKER_FLAGS=-verbose -DCMAKE_TOOLCHAIN_FILE=../ocaml-cmake/toolchains/Toolchain-mingw32.cmake && make && make install && find "`pwd`"/install; fi
- if [[ "$CROSSCOMPILE" == "x86_64-opam-cross-windows" ]]; then ocamlfind -toolchain windows ocamlc -config; rm -fr tmp-build && mkdir -p tmp-build && cd tmp-build && cmake .. -DCMAKE_VERBOSE_MAKEFILE=on -DCMAKE_INSTALL_PREFIX:PATH="`pwd`"/install -DCMAKE_C_FLAGS="-Wall -Werror" -DCMAKE_OCaml_FLAGS=-verbose -DCMAKE_OCaml_LINKER_FLAGS=-verbose -DCMAKE_TOOLCHAIN_FILE=../ocaml-cmake/toolchains/Toolchain-opam-cross-windows-x86_64-mingw.cmake && make && make install && find "`pwd`"/install; fi
- if [[ "$CROSSCOMPILE" == "i686-opam-cross-windows" ]]; then ocamlfind -toolchain windows ocamlc -config; rm -fr tmp-build && mkdir -p tmp-build && cd tmp-build && cmake .. -DCMAKE_VERBOSE_MAKEFILE=on -DCMAKE_INSTALL_PREFIX:PATH="`pwd`"/install -DCMAKE_C_FLAGS="-Wall -Werror" -DCMAKE_OCaml_FLAGS=-verbose -DCMAKE_OCaml_LINKER_FLAGS=-verbose -DCMAKE_TOOLCHAIN_FILE=../ocaml-cmake/toolchains/Toolchain-opam-cross-windows-i686-mingw.cmake && make && make install && find "`pwd`"/install; fi