forked from Mirrorlandia_minetest/minetest
Travis: build matrix improvements + CPP11 build
This commit is contained in:
parent
7fab86a49d
commit
61d1751dff
36
.travis.yml
36
.travis.yml
@ -1,14 +1,4 @@
|
|||||||
language: cpp
|
language: cpp
|
||||||
compiler:
|
|
||||||
- gcc
|
|
||||||
- clang
|
|
||||||
os:
|
|
||||||
- osx
|
|
||||||
- linux
|
|
||||||
env:
|
|
||||||
- PLATFORM=Win32
|
|
||||||
- PLATFORM=Win64
|
|
||||||
- PLATFORM=Unix
|
|
||||||
before_install: ./util/travis/before_install.sh
|
before_install: ./util/travis/before_install.sh
|
||||||
script: ./util/travis/script.sh
|
script: ./util/travis/script.sh
|
||||||
sudo: required
|
sudo: required
|
||||||
@ -16,14 +6,26 @@ notifications:
|
|||||||
email: false
|
email: false
|
||||||
matrix:
|
matrix:
|
||||||
fast_finish: true
|
fast_finish: true
|
||||||
exclude:
|
include:
|
||||||
- env: PLATFORM=Win32
|
- env: PLATFORM=Win32
|
||||||
compiler: clang
|
compiler: gcc
|
||||||
|
os: linux
|
||||||
- env: PLATFORM=Win64
|
- env: PLATFORM=Win64
|
||||||
|
compiler: gcc
|
||||||
|
os: linux
|
||||||
|
- env: PLATFORM=Unix COMPILER=clang
|
||||||
compiler: clang
|
compiler: clang
|
||||||
- env: PLATFORM=Win32
|
|
||||||
os: osx
|
|
||||||
- env: PLATFORM=Win64
|
|
||||||
os: osx
|
|
||||||
- compiler: gcc
|
|
||||||
os: osx
|
os: osx
|
||||||
|
- env: PLATFORM=Unix COMPILER=g++
|
||||||
|
compiler: gcc
|
||||||
|
os: linux
|
||||||
|
- env: PLATFORM=Unix COMPILER=clang
|
||||||
|
compiler: clang
|
||||||
|
os: linux
|
||||||
|
- env: PLATFORM=Unix COMPILER=g++-6
|
||||||
|
compiler: gcc
|
||||||
|
os: linux
|
||||||
|
addons:
|
||||||
|
apt:
|
||||||
|
sources: &sources
|
||||||
|
- ubuntu-toolchain-r-test
|
||||||
|
@ -32,7 +32,7 @@ public:
|
|||||||
void testAllSettings();
|
void testAllSettings();
|
||||||
|
|
||||||
static const char *config_text_before;
|
static const char *config_text_before;
|
||||||
static const char *config_text_after;
|
static const std::string config_text_after;
|
||||||
};
|
};
|
||||||
|
|
||||||
static TestSettings g_test_instance;
|
static TestSettings g_test_instance;
|
||||||
@ -69,7 +69,7 @@ const char *TestSettings::config_text_before =
|
|||||||
"np_terrain = 5, 40, (250, 250, 250), 12341, 5, 0.7, 2.4\n"
|
"np_terrain = 5, 40, (250, 250, 250), 12341, 5, 0.7, 2.4\n"
|
||||||
"zoop = true";
|
"zoop = true";
|
||||||
|
|
||||||
const char *TestSettings::config_text_after =
|
const std::string TestSettings::config_text_after =
|
||||||
"leet = 1337\n"
|
"leet = 1337\n"
|
||||||
"leetleet = 13371337\n"
|
"leetleet = 13371337\n"
|
||||||
"leetleet_neg = -13371337\n"
|
"leetleet_neg = -13371337\n"
|
||||||
@ -197,7 +197,10 @@ void TestSettings::testAllSettings()
|
|||||||
UASSERT(s.updateConfigObject(is, os, "", 0) == true);
|
UASSERT(s.updateConfigObject(is, os, "", 0) == true);
|
||||||
//printf(">>>> expected config:\n%s\n", TEST_CONFIG_TEXT_AFTER);
|
//printf(">>>> expected config:\n%s\n", TEST_CONFIG_TEXT_AFTER);
|
||||||
//printf(">>>> actual config:\n%s\n", os.str().c_str());
|
//printf(">>>> actual config:\n%s\n", os.str().c_str());
|
||||||
|
#if __cplusplus < 201103L
|
||||||
|
// This test only works in older C++ versions than C++11 because we use unordered_map
|
||||||
UASSERT(os.str() == config_text_after);
|
UASSERT(os.str() == config_text_after);
|
||||||
|
#endif
|
||||||
} catch (SettingNotFoundException &e) {
|
} catch (SettingNotFoundException &e) {
|
||||||
UASSERT(!"Setting not found!");
|
UASSERT(!"Setting not found!");
|
||||||
}
|
}
|
||||||
|
@ -163,6 +163,7 @@ private:
|
|||||||
void TestThreading::testAtomicSemaphoreThread()
|
void TestThreading::testAtomicSemaphoreThread()
|
||||||
{
|
{
|
||||||
Atomic<u32> val;
|
Atomic<u32> val;
|
||||||
|
val = 0;
|
||||||
Semaphore trigger;
|
Semaphore trigger;
|
||||||
static const u8 num_threads = 4;
|
static const u8 num_threads = 4;
|
||||||
|
|
||||||
|
@ -1,16 +1,8 @@
|
|||||||
#!/bin/bash -e
|
#!/bin/bash -e
|
||||||
|
|
||||||
if [[ $TRAVIS_OS_NAME == "linux" ]]; then
|
if [[ $TRAVIS_OS_NAME == "linux" ]]; then
|
||||||
if [[ $CC == "clang" ]]; then
|
|
||||||
export PATH="/usr/bin/:$PATH"
|
|
||||||
sudo sh -c 'echo "deb http://ppa.launchpad.net/eudoxos/llvm-3.1/ubuntu precise main" >> /etc/apt/sources.list'
|
|
||||||
sudo apt-key adv --keyserver pool.sks-keyservers.net --recv-keys 92DE8183
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install llvm-3.1
|
|
||||||
sudo apt-get install clang
|
|
||||||
fi
|
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install p7zip-full
|
sudo apt-get install p7zip-full $COMPILER
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $PLATFORM == "Unix" ]]; then
|
if [[ $PLATFORM == "Unix" ]]; then
|
||||||
|
@ -4,6 +4,10 @@ if [[ $PLATFORM == "Unix" ]]; then
|
|||||||
mkdir -p travisbuild
|
mkdir -p travisbuild
|
||||||
cd travisbuild || exit 1
|
cd travisbuild || exit 1
|
||||||
CMAKE_FLAGS=''
|
CMAKE_FLAGS=''
|
||||||
|
if [[ $COMPILER == "g++-6" ]]; then
|
||||||
|
export CC=gcc-6
|
||||||
|
export CXX=g++-6
|
||||||
|
fi
|
||||||
# Clang builds with FreeType fail on Travis
|
# Clang builds with FreeType fail on Travis
|
||||||
if [[ $CC == "clang" ]]; then
|
if [[ $CC == "clang" ]]; then
|
||||||
CMAKE_FLAGS+=' -DENABLE_FREETYPE=FALSE'
|
CMAKE_FLAGS+=' -DENABLE_FREETYPE=FALSE'
|
||||||
|
Loading…
Reference in New Issue
Block a user