forked from Yadoms/yadoms
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
111 lines (96 loc) · 3.42 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
language: cpp
before_install:
#g++ 4.8
- echo 'Installing G++ 4.8'
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
- sudo apt-get update -qq
- if [ "$CXX" = "g++" ]; then sudo apt-get install -qq g++-4.8; fi
- if [ "$CXX" = "g++" ]; then export CXX="g++-4.8" CC="gcc-4.8"; fi
- sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 90
# deps
- echo 'Installing some dependencies'
- sudo apt-get install libbz2-dev python-dev libudev-dev
#CMake
- echo 'Installing CMake 3.4.3'
- sudo apt-get remove cmake
- wget --no-check-certificate https://cmake.org/files/v3.4/cmake-3.4.3.tar.gz
- tar zxf cmake-3.4.3.tar.gz
- cd cmake-3.4.3
- ./bootstrap > yadoms_cmake.log
- make > yadoms_boost.log
- sudo make install > yadoms_boost.log
- cd ..
# boost
- echo 'Building Boost 1.61.0'
- wget http://netcologne.dl.sourceforge.net/project/boost/boost/1.61.0/boost_1_61_0.tar.bz2
- tar xjf boost_1_61_0.tar.bz2
- cd boost_1_61_0
- ./bootstrap.sh > yadoms_boost.log
- ./b2 --with-atomic --with-chrono --with-date_time --with-filesystem --with-regex --with-thread --with-system link=shared > yadoms_boost.log
- cd ..
# poco
- echo 'Building Poco 1.7.3-all'
- wget http://pocoproject.org/releases/poco-1.7.3/poco-1.7.3-all.tar.gz
- tar xzf poco-1.7.3-all.tar.gz
- sudo apt-get install libssl-dev
- cd poco-1.7.3-all/
- ./configure --omit=CppUnit,CppUnit/WinTestRunner,Data,Data/SQLite,Data/ODBCData/MySQL,MongoDB,PageCompiler,PageCompiler/File2Page --no-samples --no-tests > yadoms_poco.log
- make > yadoms_poco.log
- cd ..
# protobuf
- echo 'Building Protobuf 2.6.1'
- sudo apt-get install autoconf libtool
- wget https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gz
- tar xzf protobuf-2.6.1.tar.gz
- cd protobuf-2.6.1
- ./autogen.sh > yadoms_protobuf.log
- ./configure > yadoms_protobuf.log
- make > yadoms_protobuf.log
- sudo make install > yadoms_protobuf.log
- sudo ldconfig
- cd ..
#gammu
- echo 'Building Gammu 1.36.8'
- wget http://dl.cihar.com/gammu/releases/gammu-1.36.8.tar.gz
- tar zxf gammu-1.36.8.tar.gz
- cd gammu-1.36.8
- mkdir build
- cd build
- cmake .. -DBUILD_SHARED_LIBS=ON > yadoms_gammu.log
- make > yadoms_gammu.log
- cd ..
- cd ..
# PCRE
- echo 'Installing PRCE'
- sudo apt-get install libpcre3 libpcre3-dev
# SWIG
- echo 'Building Swig 3.0.8'
- wget http://prdownloads.sourceforge.net/swig/swig-3.0.8.tar.gz
- tar xzf swig-3.0.8.tar.gz
- cd swig-3.0.8
- ./configure > yadoms_swig.log
- make> yadoms_swig.log
- sudo make install > yadoms_swig.log
- cd ..
# PostgreSQL
- sudo apt-get install libpq-dev postgresql-server-dev-9.3
script:
# Yadoms configuration file
- echo 'Configuring Yadoms CMakeListsUserConfig.txt'
- cp sources/CMakeListsUserConfig.sample.txt sources/CMakeListsUserConfig.txt
- echo 'set(BOOST_ROOT "'$PWD'/boost_1_61_0")' > sources/CMakeListsUserConfig.txt
- echo 'set(POCO_ROOT "'$PWD'/poco-1.7.3-all")' >> sources/CMakeListsUserConfig.txt
- echo 'set(COTIRE_USE ON)' >> sources/CMakeListsUserConfig.txt
- echo 'set(COTIRE_USE_UNITY ON)' >> sources/CMakeListsUserConfig.txt
- echo 'set(PROTOBUF_ROOT "'$PWD'/protobuf-2.6.1")' >> sources/CMakeListsUserConfig.txt
- echo 'set(GAMMU_ROOT "'$PWD'/gammu-1.36.8")' >> sources/CMakeListsUserConfig.txt
- echo 'set(SWIG_ROOT "'$PWD'/swig-3.0.8")' >> sources/CMakeListsUserConfig.txt
- echo 'Result:'
- cat sources/CMakeListsUserConfig.txt
# Yadoms
- echo 'Generating makefile'
- sh cmake_linux.sh m
- cd projects
- echo 'Building Yadoms'
- make all_unity
- cd ..