diff options
Diffstat (limited to 'tests/ECMSetupVersionTest/old_header')
-rw-r--r-- | tests/ECMSetupVersionTest/old_header/CMakeLists.txt | 38 | ||||
-rw-r--r-- | tests/ECMSetupVersionTest/old_header/main.c | 24 |
2 files changed, 62 insertions, 0 deletions
diff --git a/tests/ECMSetupVersionTest/old_header/CMakeLists.txt b/tests/ECMSetupVersionTest/old_header/CMakeLists.txt new file mode 100644 index 00000000..53f90820 --- /dev/null +++ b/tests/ECMSetupVersionTest/old_header/CMakeLists.txt @@ -0,0 +1,38 @@ +cmake_minimum_required(VERSION 2.8.12) + +project(old_header) + +set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../../modules) +include(ECMSetupVersion) + +ecm_setup_version(2.3.4 + VARIABLE_PREFIX Foo + VERSION_HEADER "ecm_old_header_version.h" +) + +macro(strcheck var val) + if(NOT ${var} STREQUAL "${val}") + message(FATAL_ERROR "${var} was ${${var}} instead of ${val}") + endif() +endmacro() +macro(numcheck var val) + if(NOT ${var} EQUAL "${val}") + message(FATAL_ERROR "${var} was ${${var}} instead of ${val}") + endif() +endmacro() + +strcheck(PROJECT_VERSION "2.3.4") +strcheck(PROJECT_VERSION_STRING "2.3.4") +numcheck(PROJECT_VERSION_MAJOR 2) +numcheck(PROJECT_VERSION_MINOR 3) +numcheck(PROJECT_VERSION_PATCH 4) + +strcheck(Foo_VERSION "2.3.4") +strcheck(Foo_VERSION_STRING "2.3.4") +numcheck(Foo_VERSION_MAJOR 2) +numcheck(Foo_VERSION_MINOR 3) +numcheck(Foo_VERSION_PATCH 4) +numcheck(Foo_SOVERSION 2) + +add_executable(check_header main.c) +target_include_directories(check_header PRIVATE "${CMAKE_CURRENT_BINARY_DIR}") diff --git a/tests/ECMSetupVersionTest/old_header/main.c b/tests/ECMSetupVersionTest/old_header/main.c new file mode 100644 index 00000000..1ae1679b --- /dev/null +++ b/tests/ECMSetupVersionTest/old_header/main.c @@ -0,0 +1,24 @@ +#include <ecm_old_header_version.h> +#include <string.h> +#include <stdio.h> + +#define intcheck(macro,val) \ + if (macro != val) { \ + printf(#macro " was %d instead of %d", macro, val); \ + return 1; \ + } +#define strcheck(macro,val) \ + if (strcmp(macro,val) != 0) { \ + printf(#macro " was %s instead of %s", macro, val); \ + return 1; \ + } + +int main() +{ + intcheck(Foo_VERSION_MAJOR,2) + intcheck(Foo_VERSION_MINOR,3) + intcheck(Foo_VERSION_PATCH,4) + intcheck(Foo_VERSION,((2 << 16) + (3 << 8) + 4)) + strcheck(Foo_VERSION_STRING,"2.3.4") + return 0; +} |