forked from elnabo/json2object
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
111 lines (105 loc) · 3.23 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
language: haxe
os:
- linux
# - osx
haxe:
- 3.4.1
- 3.4.7
- 4.1.3
- development
dist: trusty
# thanks to Andy Li! https://github.com/andyli/HaxeCI
addons:
# This is the preferred way to install apt packages.
# However, it only allow some but not all packages.
# Alternatively, we can use `sudo apt-get install ...` in the `install:` section.
# http://docs.travis-ci.com/user/apt/#Adding-APT-Packages
apt:
packages:
- cmake
- ninja-build
# C++ (for rebuilding hxcpp)
- gcc-multilib
- g++-multilib
# Python
- python3
# C#
- mono-devel
- mono-mcs
# Lua
- libpcre3-dev
# HL
- libpng-dev
- libjpeg-turbo8-dev
- libturbojpeg
- zlib1g-dev
- libvorbis-dev
install:
# os-specific config
- if [ "${TRAVIS_OS_NAME}" = "linux" ]; then
phpenv global 7.0;
elif [ "${TRAVIS_OS_NAME}" = "osx" ]; then
brew update;
brew install mono;
brew upgrade python;
brew install [email protected];
fi
# Haxe Lua dependencies
#- if [ "${TRAVIS_OS_NAME}" = "osx" ]; then
# brew install pcre;
# export PATH=$PATH:/Users/travis/Library/Python/2.7/bin;
# fi
#- pip install --user hererocks
#- export PATH=$PATH:$HOME/lua_env/bin/
#- hererocks $HOME/lua_env/ -l5.2 -rlatest -i
#- lua -v
#- luarocks
#- export LUA_SERVER=https://luarocks.org/dev
#- luarocks install lrexlib-pcre 2.8.0-1 $LUA_SERVER
#- luarocks install luv 1.22.0-1 $LUA_SERVER
#- luarocks install luasocket 3.0rc1-2 $LUA_SERVER
#- luarocks install luautf8 0.1.1-1 $LUA_SERVER
# HL
- if [ "${TRAVIS_OS_NAME}" = "osx" ]; then
brew install ninja;
fi
- if [ "${TRAVIS_HAXE_VERSION}" = "development" ]; then
export HL_DIR=$HOME/hashlink;
git clone https://github.com/HaxeFoundation/hashlink.git $HL_DIR;
export HL_BUILD=$HOME/hashlink_build;
mkdir $HL_BUILD;
fi
- if [ "${TRAVIS_OS_NAME}" = "osx" ] && [ "${TRAVIS_HAXE_VERSION}" = "development" ]; then
brew bundle --file=$HL_DIR/Brewfile;
fi
- if [ "${TRAVIS_HAXE_VERSION}" = "development" ]; then
cmake -GNinja -DBUILD_TESTING=OFF -DWITH_BULLET=OFF -DWITH_DIRECTX=OFF -DWITH_FMT=ON -DWITH_OPENAL=OFF -DWITH_SDL=OFF -DWITH_SQLITE=OFF -DWITH_SSL=OFF -DWITH_UI=OFF -DWITH_UV=OFF -DWITH_VIDEO=OFF -B$HL_BUILD -H$HL_DIR;
cmake --build $HL_BUILD;
export PATH=$PATH:$HL_BUILD/bin/;
hl --version;
else
export PATH=$PATH:$HOME;
ln -s /bin/echo $HOME/hl;
fi
# Install haxelibs
- if [ "${TRAVIS_HAXE_VERSION}" = "development" ]; then
git clone https://github.com/HaxeFoundation/hxcpp.git;
haxelib dev hxcpp hxcpp;
pushd $(haxelib path hxcpp | head -1);
pushd tools/hxcpp; haxe compile.hxml; popd;
pushd project; neko build.n; haxe compile-cppia.hxml; popd;
popd;
else
haxelib install hxcpp;
fi
- haxelib install hxjava
- haxelib install hxcs
- haxelib install hxjsonast # dep for json2object
- haxelib install utest
- haxelib list
script:
- haxe tests/build/build_all.hxml
- if [ "${TRAVIS_HAXE_VERSION}" = "4.1.3" ] || [ "${TRAVIS_HAXE_VERSION}" = "development" ]; then
haxe tests/build/build_jvm.hxml;
haxe tests/build/build_cppia.hxml;
fi