Fix some compiling problems on OSX
and enable osx builds on travis
This commit is contained in:
committed by
Nekotekina
parent
e8088d1216
commit
009370f73c
+48
-30
@@ -1,5 +1,11 @@
|
||||
language: cpp
|
||||
|
||||
os:
|
||||
- linux
|
||||
- osx
|
||||
|
||||
osx_image: xcode6.4
|
||||
|
||||
compiler:
|
||||
- clang
|
||||
- gcc
|
||||
@@ -12,47 +18,58 @@ branches:
|
||||
except:
|
||||
- ppu_recompiler
|
||||
|
||||
matrix:
|
||||
exclude:
|
||||
- os: osx
|
||||
compiler: gcc
|
||||
|
||||
git:
|
||||
submodules: false
|
||||
|
||||
before_install:
|
||||
# shutdown services on Travis, which may have a memory impact
|
||||
# show memory usage before and after shutdown of services
|
||||
- sudo service --status-all
|
||||
- sudo free -m -t
|
||||
- sudo /etc/init.d/mysql stop
|
||||
- sudo /etc/init.d/postgresql stop
|
||||
- sudo /etc/init.d/couchdb stop
|
||||
- sudo /etc/init.d/redis-server stop
|
||||
- sudo free -m -t
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
||||
sudo service --status-all;
|
||||
sudo free -m -t;
|
||||
sudo /etc/init.d/mysql stop;
|
||||
sudo /etc/init.d/postgresql stop;
|
||||
sudo /etc/init.d/couchdb stop;
|
||||
sudo /etc/init.d/redis-server stop;
|
||||
sudo free -m -t;
|
||||
fi;
|
||||
|
||||
- echo "yes" | sudo apt-key adv --fetch-keys http://repos.codelite.org/CodeLite.asc
|
||||
- echo "yes" | sudo apt-add-repository 'deb http://repos.codelite.org/wx3.0/ubuntu/ precise universe'
|
||||
# Add later version of Clang, apt from llvm.org. the repository link is for development version.
|
||||
- echo "yes" | sudo add-apt-repository 'deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu precise main'
|
||||
- echo "yes" | sudo add-apt-repository 'deb http://llvm.org/apt/precise/ llvm-toolchain-precise-3.6 main'
|
||||
- wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -;
|
||||
# And the libstdc++4.9 of GCC from ppa
|
||||
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
|
||||
- sudo apt-get update
|
||||
- sudo apt-get install libwxgtk3.0-dev libopenal-dev freeglut3-dev libglew-dev libc6-dev llvm-3.6 llvm-3.6-dev libedit-dev
|
||||
- sudo apt-get install aria2 -qq
|
||||
- download_extract() { aria2c -x 16 $1 -o $2 && tar -xf $2; }
|
||||
- if [ "$CXX" = "g++" ]; then
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
||||
echo "yes" | sudo apt-key adv --fetch-keys 'http://repos.codelite.org/CodeLite.asc';
|
||||
echo "yes" | sudo apt-add-repository 'deb http://repos.codelite.org/wx3.0/ubuntu/ precise universe';
|
||||
echo "yes" | sudo add-apt-repository 'deb http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu precise main';
|
||||
echo "yes" | sudo add-apt-repository 'deb http://llvm.org/apt/precise/ llvm-toolchain-precise-3.6 main';
|
||||
wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -;
|
||||
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y;
|
||||
sudo apt-get update;
|
||||
sudo apt-get install libwxgtk3.0-dev libopenal-dev freeglut3-dev libglew-dev libc6-dev llvm-3.6 llvm-3.6-dev libedit-dev;
|
||||
sudo apt-get install aria2 -qq;
|
||||
download_extract() { aria2c -x 16 $1 -o $2 && tar -xf $2; };
|
||||
fi;
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$CXX" = "g++" ]; then
|
||||
sudo apt-get install -qq g++-4.9;
|
||||
export CXX="g++-4.9" CC="gcc-4.9" CXXFLAGS="-Wno-format-security";
|
||||
export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01';
|
||||
else
|
||||
elif [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
||||
sudo apt-get install -qq --allow-unauthenticated clang-3.6 libstdc++-4.8-dev;
|
||||
export CXX="clang++-3.6" CC="clang-3.6";
|
||||
fi;
|
||||
# Travis uses CMake 2.8.7. We require 2.8.8. Grab latest
|
||||
- sudo apt-get install lib32stdc++6 -qq &&
|
||||
aria2c -x 16 http://www.cmake.org/files/v3.0/cmake-3.0.0-Linux-i386.sh &&
|
||||
chmod a+x cmake-3.0.0-Linux-i386.sh &&
|
||||
sudo ./cmake-3.0.0-Linux-i386.sh --skip-license --prefix=/usr;
|
||||
# Add coverall for C++ so coverall.io could be triggered. Even it should be --coverage and gcov.
|
||||
- sudo pip install cpp-coveralls
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
||||
sudo apt-get install lib32stdc++6 -qq &&
|
||||
aria2c -x 16 http://www.cmake.org/files/v3.0/cmake-3.0.0-Linux-i386.sh &&
|
||||
chmod a+x cmake-3.0.0-Linux-i386.sh &&
|
||||
sudo ./cmake-3.0.0-Linux-i386.sh --skip-license --prefix=/usr;
|
||||
sudo pip install cpp-coveralls;
|
||||
else
|
||||
brew install glew wxwidgets;
|
||||
fi;
|
||||
|
||||
before_script:
|
||||
- git submodule update --init asmjit ffmpeg llvm
|
||||
@@ -82,7 +99,8 @@ script:
|
||||
after_success:
|
||||
- if [ "$COVERITY_SCAN_BRANCH" != 1 ]; then coveralls --extension .c --extension .cpp --extension .h; fi
|
||||
after_failure:
|
||||
# show memory usage again
|
||||
- sudo free -m -t
|
||||
# show actions of the OOM killer
|
||||
- sudo dmesg
|
||||
# show memory usage again and show actions of the OOM killer
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
||||
sudo free -m -t;
|
||||
sudo dmesg;
|
||||
fi;
|
||||
|
||||
Reference in New Issue
Block a user