Browse Source

CMake: move testing setup later, after all options are defined.

It doesn't have to be interleaved with them.
pull/570/head
Vladimír Vondruš 4 years ago
parent
commit
1b55a76a3a
  1. 30
      CMakeLists.txt

30
CMakeLists.txt

@ -215,20 +215,6 @@ option(BUILD_TESTS "Build unit tests" OFF)
cmake_dependent_option(BUILD_GL_TESTS "Build unit tests for OpenGL code" OFF "BUILD_TESTS;TARGET_GL" OFF) cmake_dependent_option(BUILD_GL_TESTS "Build unit tests for OpenGL code" OFF "BUILD_TESTS;TARGET_GL" OFF)
cmake_dependent_option(BUILD_AL_TESTS "Build unit tests for OpenAL code" ON "BUILD_TESTS;WITH_AUDIO" OFF) cmake_dependent_option(BUILD_AL_TESTS "Build unit tests for OpenAL code" ON "BUILD_TESTS;WITH_AUDIO" OFF)
cmake_dependent_option(BUILD_VK_TESTS "Build unit tests for Vulkan code" OFF "BUILD_TESTS;TARGET_VK" OFF) cmake_dependent_option(BUILD_VK_TESTS "Build unit tests for Vulkan code" OFF "BUILD_TESTS;TARGET_VK" OFF)
if(BUILD_TESTS)
find_package(Corrade REQUIRED TestSuite)
if(CORRADE_TARGET_IOS)
set(CORRADE_TESTSUITE_BUNDLE_IDENTIFIER_PREFIX "cz.mosra.magnum")
endif()
enable_testing()
# For experimental Gradle-less Android APK creation. Only with CMake > 3.7
# that has builtin Android support -- Gradle uses 3.6 so this will nicely
# work in both cases.
if(CORRADE_TARGET_ANDROID AND CMAKE_ANDROID_NDK)
include(${PROJECT_SOURCE_DIR}/toolchains/modules/UseAndroid.cmake)
endif()
endif()
# OpenGLTester / VulkanTester libraries, built by default only if GL / VK tests # OpenGLTester / VulkanTester libraries, built by default only if GL / VK tests
# are enabled # are enabled
@ -304,6 +290,22 @@ if(TARGET_VK)
set(MAGNUM_TARGET_VK 1) set(MAGNUM_TARGET_VK 1)
endif() endif()
# Testing setup
if(BUILD_TESTS)
find_package(Corrade REQUIRED TestSuite)
if(CORRADE_TARGET_IOS)
set(CORRADE_TESTSUITE_BUNDLE_IDENTIFIER_PREFIX "cz.mosra.magnum")
endif()
enable_testing()
# For experimental Gradle-less Android APK creation. Only with CMake > 3.7
# that has builtin Android support -- Gradle uses 3.6 so this will nicely
# work in both cases.
if(CORRADE_TARGET_ANDROID AND CMAKE_ANDROID_NDK)
include(${PROJECT_SOURCE_DIR}/toolchains/modules/UseAndroid.cmake)
endif()
endif()
if(WITH_OPENGLTESTER) if(WITH_OPENGLTESTER)
if(MAGNUM_TARGET_HEADLESS OR CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID) if(MAGNUM_TARGET_HEADLESS OR CORRADE_TARGET_EMSCRIPTEN OR CORRADE_TARGET_ANDROID)
set(WITH_WINDOWLESSEGLAPPLICATION ON) set(WITH_WINDOWLESSEGLAPPLICATION ON)

Loading…
Cancel
Save