diff --git a/.travis.yml b/.travis.yml index 6929601548..a13b9fad61 100644 --- a/.travis.yml +++ b/.travis.yml @@ -54,6 +54,7 @@ env: - PROJECT_DIR=tests/hunter_sleep_before_download TOOLCHAIN=default - PROJECT_DIR=tests/hunter_unpack_directory TOOLCHAIN=default - PROJECT_DIR=tests/hunter_init_not_found_counter TOOLCHAIN=default + - PROJECT_DIR=tests/hunter_check_toolchain_definition TOOLCHAIN=default - TOOLCHAIN=generate-documentation-test diff --git a/appveyor.yml b/appveyor.yml index 81ee5c9f2a..eeb7844dc6 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -65,6 +65,9 @@ environment: - PROJECT_DIR: tests\hunter_sleep_before_download TOOLCHAIN: default + - PROJECT_DIR: tests\hunter_check_toolchain_definition + TOOLCHAIN: default + install: # Python 3 - cmd: set PATH=C:\Python34-x64;C:\Python34-x64\Scripts;%PATH% diff --git a/tests/hunter_check_toolchain_definition/CMakeLists.txt b/tests/hunter_check_toolchain_definition/CMakeLists.txt new file mode 100644 index 0000000000..896fb5c04f --- /dev/null +++ b/tests/hunter_check_toolchain_definition/CMakeLists.txt @@ -0,0 +1,43 @@ +# Copyright (c) 2016, Ruslan Baratov +# All rights reserved. + +cmake_minimum_required(VERSION 3.0) + +include("../../examples/common.cmake") +project(TestModuleHunterCheckToolchainDefinition) + +# We should call at least one 'hunter_add_package' to trigger toolchain-id +# calculation +hunter_add_package(Sugar) + +include(hunter_check_toolchain_definition) + +hunter_check_toolchain_definition( + NAME __cplusplus + DEFINED is_defined + VALUE value +) + +if(NOT is_defined) + message(FATAL_ERROR "Not defined") +endif() + +string(COMPARE EQUAL "${value}" "" is_empty) +if(is_empty) + message(FATAL_ERROR "Is empty") +endif() + +hunter_check_toolchain_definition( + NAME __this_is_not_a_macro + DEFINED is_defined + VALUE value +) + +if(is_defined) + message(FATAL_ERROR "Is defined") +endif() + +string(COMPARE EQUAL "${value}" "" is_empty) +if(NOT is_empty) + message(FATAL_ERROR "Not empty: '${value}'") +endif()