From 84348dea38c2981afd38cdcfce814ddd1c1fea2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Mon, 12 Feb 2018 18:31:47 +0100 Subject: [PATCH] package/ci: use Ninja instead of make on Travis. --- package/ci/travis-android-arm.sh | 15 +++++++++------ package/ci/travis-desktop-gles.sh | 10 ++++++---- package/ci/travis-desktop.sh | 17 ++++++++++------- package/ci/travis-emscripten.sh | 15 +++++++++------ package/ci/travis-ios-simulator.sh | 5 +++-- package/ci/travis.yml | 5 +++++ 6 files changed, 42 insertions(+), 25 deletions(-) diff --git a/package/ci/travis-android-arm.sh b/package/ci/travis-android-arm.sh index d3d29cd24..df46a83b1 100755 --- a/package/ci/travis-android-arm.sh +++ b/package/ci/travis-android-arm.sh @@ -15,8 +15,9 @@ cmake .. \ -DCMAKE_BUILD_TYPE=Release \ -DWITH_INTERCONNECT=OFF \ -DWITH_PLUGINMANAGER=OFF \ - -DWITH_TESTSUITE=OFF -make -j install + -DWITH_TESTSUITE=OFF \ + -G Ninja +ninja install cd .. # Crosscompile Corrade @@ -26,8 +27,9 @@ ANDROID_NDK=$TRAVIS_BUILD_DIR/android-ndk-r10e cmake .. \ -DCMAKE_BUILD_TYPE=Release \ -DCORRADE_RC_EXECUTABLE=$HOME/deps-native/bin/corrade-rc \ -DCMAKE_INSTALL_PREFIX=$HOME/deps \ - -DWITH_INTERCONNECT=OFF -make -j install + -DWITH_INTERCONNECT=OFF \ + -G Ninja +ninja install cd .. cd .. @@ -50,9 +52,10 @@ ANDROID_NDK=$TRAVIS_BUILD_DIR/android-ndk-r10e cmake .. \ -DWITH_TGAIMAGECONVERTER=ON \ -DWITH_TGAIMPORTER=ON \ -DWITH_WAVAUDIOIMPORTER=OFF \ - -DBUILD_TESTS=ON + -DBUILD_TESTS=ON \ + -G Ninja # Otherwise the job gets killed (probably because using too much memory) -make -j4 +ninja -j4 # Start simulator and run tests echo no | android create avd --force -n test -t android-19 --abi armeabi-v7a diff --git a/package/ci/travis-desktop-gles.sh b/package/ci/travis-desktop-gles.sh index e4275f662..b70623ae5 100755 --- a/package/ci/travis-desktop-gles.sh +++ b/package/ci/travis-desktop-gles.sh @@ -9,8 +9,9 @@ cmake .. \ -DCMAKE_INSTALL_PREFIX=$HOME/deps \ -DCMAKE_INSTALL_RPATH=$HOME/deps/lib \ -DCMAKE_BUILD_TYPE=Release \ - -DWITH_INTERCONNECT=OFF -make -j install + -DWITH_INTERCONNECT=OFF \ + -G Ninja +ninja install cd ../.. mkdir build && cd build @@ -38,7 +39,8 @@ cmake .. \ -DWITH_MAGNUMINFO=ON \ -DWITH_AL_INFO=ON \ -DBUILD_TESTS=ON \ - -DBUILD_GL_TESTS=ON + -DBUILD_GL_TESTS=ON \ + -G Ninja # Otherwise the job gets killed (probably because using too much memory) -make -j4 +ninja -j4 CORRADE_TEST_COLOR=ON ctest -V -E GLTest diff --git a/package/ci/travis-desktop.sh b/package/ci/travis-desktop.sh index 761535001..460c0a429 100755 --- a/package/ci/travis-desktop.sh +++ b/package/ci/travis-desktop.sh @@ -10,8 +10,9 @@ cmake .. \ -DCMAKE_INSTALL_RPATH=$HOME/deps/lib \ -DCMAKE_BUILD_TYPE=Debug \ -DBUILD_DEPRECATED=$BUILD_DEPRECATED \ - -DWITH_INTERCONNECT=OFF -make -j install + -DWITH_INTERCONNECT=OFF \ + -G Ninja +ninja install cd ../.. mkdir build && cd build @@ -41,17 +42,19 @@ cmake .. \ -DWITH_AL_INFO=ON \ -DBUILD_TESTS=ON \ -DBUILD_GL_TESTS=ON \ - -DBUILD_DEPRECATED=$BUILD_DEPRECATED + -DBUILD_DEPRECATED=$BUILD_DEPRECATED \ + -G Ninja # Otherwise the job gets killed (probably because using too much memory) -make -j4 +ninja -j4 ASAN_OPTIONS="color=always" LSAN_OPTIONS="color=always suppressions=$TRAVIS_BUILD_DIR/package/ci/leaksanitizer.conf" CORRADE_TEST_COLOR=ON ctest -V -E GLTest # Verify also compilation of the documentation image generators -make install +ninja install cd .. mkdir build-doc-generated && cd build-doc-generated cmake ../doc/generated \ -DCMAKE_CXX_FLAGS="$CMAKE_CXX_FLAGS" \ -DCMAKE_PREFIX_PATH=$HOME/deps \ - -DCMAKE_BUILD_TYPE=Debug -make -j4 + -DCMAKE_BUILD_TYPE=Debug \ + -G Ninja +ninja diff --git a/package/ci/travis-emscripten.sh b/package/ci/travis-emscripten.sh index 51794305a..88c3efc3f 100755 --- a/package/ci/travis-emscripten.sh +++ b/package/ci/travis-emscripten.sh @@ -15,8 +15,9 @@ cmake .. \ -DCMAKE_INSTALL_RPATH=$HOME/deps-native/lib \ -DWITH_INTERCONNECT=OFF \ -DWITH_PLUGINMANAGER=OFF \ - -DWITH_TESTSUITE=OFF -make -j install + -DWITH_TESTSUITE=OFF \ + -G Ninja +ninja install cd .. # Crosscompile Corrade @@ -29,8 +30,9 @@ cmake .. \ -DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG -O1" \ -DCMAKE_EXE_LINKER_FLAGS_RELEASE="-O1" \ -DCMAKE_INSTALL_PREFIX=$HOME/deps \ - -DWITH_INTERCONNECT=OFF -make -j install + -DWITH_INTERCONNECT=OFF \ + -G Ninja +ninja install cd .. cd .. @@ -58,9 +60,10 @@ cmake .. \ -DWITH_MAGNUMINFO=ON \ -DWITH_AL_INFO=ON \ -DBUILD_TESTS=ON \ - -DTARGET_GLES2=$TARGET_GLES2 + -DTARGET_GLES2=$TARGET_GLES2 \ + -G Ninja # Otherwise the job gets killed (probably because using too much memory) -make -j4 +ninja -j4 # Test CORRADE_TEST_COLOR=ON ctest -V -E ALTest diff --git a/package/ci/travis-ios-simulator.sh b/package/ci/travis-ios-simulator.sh index f149fd199..21e44186d 100755 --- a/package/ci/travis-ios-simulator.sh +++ b/package/ci/travis-ios-simulator.sh @@ -15,8 +15,9 @@ cmake .. \ -DCMAKE_INSTALL_RPATH=$HOME/deps-native/lib \ -DWITH_INTERCONNECT=OFF \ -DWITH_PLUGINMANAGER=OFF \ - -DWITH_TESTSUITE=OFF -make -j install + -DWITH_TESTSUITE=OFF \ + -G Ninja +ninja install cd .. # Crosscompile Corrade diff --git a/package/ci/travis.yml b/package/ci/travis.yml index aca4b2970..044a3e96a 100644 --- a/package/ci/travis.yml +++ b/package/ci/travis.yml @@ -5,6 +5,7 @@ addons: packages: - libgl1-mesa-dev - g++-4.7 + - ninja-build - libsdl2-dev - freeglut3-dev - libopenal-dev @@ -45,6 +46,7 @@ matrix: - llvm-toolchain-trusty packages: - libgl1-mesa-dev + - ninja-build - clang-3.8 - libsdl2-dev - libopenal-dev @@ -116,6 +118,7 @@ matrix: - ubuntu-toolchain-r-test packages: - g++-4.7 + - ninja-build android: components: - build-tools-19.0.0 @@ -136,6 +139,7 @@ matrix: - ubuntu-toolchain-r-test packages: - g++-4.7 + - ninja-build android: components: - build-tools-19.0.0 @@ -171,6 +175,7 @@ install: # PATH setting can't be cached, so it's separate (bit me two times already) - if [ "$TRAVIS_OS_NAME" == "linux" ] && [ "$TARGET" == "android" ] && [ ! -e "$HOME/cmake/bin" ]; then cd $HOME ; wget -nc --no-check-certificate https://cmake.org/files/v2.8/cmake-2.8.12.2-Linux-i386.tar.gz && mkdir -p cmake && cd cmake && tar --strip-components=1 -xzvf ../cmake-2.8.12.2-Linux-i386.tar.gz && cd $TRAVIS_BUILD_DIR ; fi - if [ "$TRAVIS_OS_NAME" == "linux" ] && [ "$TARGET" == "android" ]; then export PATH=$HOME/cmake/bin:$PATH; fi +- if [ "$TRAVIS_OS_NAME" == "osx" ]; then HOMEBREW_NO_AUTO_UPDATE=1 brew install ninja; fi - if [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$TARGET" == "desktop" ]; then export PLATFORM_GL_API=CGL; fi - if [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$TARGET" == "ios-simulator" ]; then gem install xcpretty; fi - if [ "$TRAVIS_OS_NAME" == "osx" ] && [ "$TARGET" == "emscripten" ]; then brew install emscripten && export LLVM=/usr/local/opt/emscripten/libexec/llvm/bin && emcc; fi