ENH: clean up loaded command test so you can tell what really failed

This commit is contained in:
Bill Hoffman 2004-10-25 15:08:05 -04:00
parent ef07a8565e
commit 5eda379907
6 changed files with 56 additions and 28 deletions

View File

@ -5,6 +5,7 @@ SET (TEST_COMMAND_TEST1 1)
INCLUDE (${CMAKE_ROOT}/Modules/CheckTypeSize.cmake)
CHECK_TYPE_SIZE(char SIZEOF_CHAR)
CHECK_TYPE_SIZE(short SIZEOF_SHORT)
INCLUDE (CheckFunctionExists)
CHECK_FUNCTION_EXISTS(printf HAVE_PRINTF)
@ -55,8 +56,9 @@ ELSE (COMPILE_OK)
MESSAGE("failed to compile CMAKE_LOADED_COMMANDS")
ENDIF (COMPILE_OK)
IF (TEST_DEF)
# TEST_DEF is set by the loaded command cmTestCommand.c
IF (TEST_DEF AND SOME_CACHE_VARIABLE)
ADD_DEFINITIONS(-DCMAKE_IS_FUN)
ENDIF (TEST_DEF)
ENDIF (TEST_DEF AND SOME_CACHE_VARIABLE)
ADD_EXECUTABLE (LoadedCommand LoadedCommand.cxx)

View File

@ -1,30 +1,41 @@
#include "LoadedCommand.h"
#include <stdio.h>
int testSizeOf(int s1, int s2)
{
return s1 - s2;
}
int main ()
{
int ret = 0;
#ifdef HAVE_VSBLABLA
printf("Should not be able to find vsblabla\n");
return 1;
ret = 1;
#endif
#if !defined( HAVE_PRINTF )
printf("Should be able to find printf\n");
return 1;
ret= 1;
#endif
#if !defined( ADDED_DEFINITION )
printf("Should have ADDED_DEFINITION defined\n");
return 1;
ret= 1;
#endif
if(SIZEOF_CHAR != 1)
#if !defined(CMAKE_IS_FUN)
printf("Loaded Command was not built with CMAKE_IS_FUN: failed.\n");
ret = 1;
#endif
if(testSizeOf(SIZEOF_CHAR, sizeof(char)))
{
printf("Size of char is not one, something is broken\n");
printf("Size of char is broken.\n");
ret = 1;
}
#ifdef CMAKE_IS_FUN
return SIZEOF_CHAR-1;
#else
return SIZEOF_SHORT;
#endif
if(testSizeOf(SIZEOF_SHORT, sizeof(short)))
{
printf("Size of short is broken.\n");
ret = 1;
}
return ret;
}

View File

@ -1,5 +1,6 @@
/* Check for size of types */
#cmakedefine SIZEOF_CHAR ${SIZEOF_CHAR}
#cmakedefine SIZEOF_SHORT ${SIZEOF_SHORT}
/* Check for functions */
#cmakedefine HAVE_PRINTF
@ -9,4 +10,4 @@
#cmakedefine HAVE_SYS_PRCTL_H
/* Check for libraries */
#cmakedefine HAVE_LIBM
#cmakedefine HAVE_LIBM

View File

@ -5,6 +5,7 @@ SET (TEST_COMMAND_TEST1 1)
INCLUDE (${CMAKE_ROOT}/Modules/CheckTypeSize.cmake)
CHECK_TYPE_SIZE(char SIZEOF_CHAR)
CHECK_TYPE_SIZE(short SIZEOF_SHORT)
INCLUDE (CheckFunctionExists)
CHECK_FUNCTION_EXISTS(printf HAVE_PRINTF)
@ -55,8 +56,9 @@ ELSE (COMPILE_OK)
MESSAGE("failed to compile CMAKE_LOADED_COMMANDS")
ENDIF (COMPILE_OK)
IF (TEST_DEF)
# TEST_DEF is set by the loaded command cmTestCommand.c
IF (TEST_DEF AND SOME_CACHE_VARIABLE)
ADD_DEFINITIONS(-DCMAKE_IS_FUN)
ENDIF (TEST_DEF)
ENDIF (TEST_DEF AND SOME_CACHE_VARIABLE)
ADD_EXECUTABLE (LoadedCommand LoadedCommand.cxx)

View File

@ -1,30 +1,41 @@
#include "LoadedCommand.h"
#include <stdio.h>
int testSizeOf(int s1, int s2)
{
return s1 - s2;
}
int main ()
{
int ret = 0;
#ifdef HAVE_VSBLABLA
printf("Should not be able to find vsblabla\n");
return 1;
ret = 1;
#endif
#if !defined( HAVE_PRINTF )
printf("Should be able to find printf\n");
return 1;
ret= 1;
#endif
#if !defined( ADDED_DEFINITION )
printf("Should have ADDED_DEFINITION defined\n");
return 1;
ret= 1;
#endif
if(SIZEOF_CHAR != 1)
#if !defined(CMAKE_IS_FUN)
printf("Loaded Command was not built with CMAKE_IS_FUN: failed.\n");
ret = 1;
#endif
if(testSizeOf(SIZEOF_CHAR, sizeof(char)))
{
printf("Size of char is not one, something is broken\n");
printf("Size of char is broken.\n");
ret = 1;
}
#ifdef CMAKE_IS_FUN
return SIZEOF_CHAR-1;
#else
return SIZEOF_SHORT;
#endif
if(testSizeOf(SIZEOF_SHORT, sizeof(short)))
{
printf("Size of short is broken.\n");
ret = 1;
}
return ret;
}

View File

@ -1,5 +1,6 @@
/* Check for size of types */
#cmakedefine SIZEOF_CHAR ${SIZEOF_CHAR}
#cmakedefine SIZEOF_SHORT ${SIZEOF_SHORT}
/* Check for functions */
#cmakedefine HAVE_PRINTF
@ -9,4 +10,4 @@
#cmakedefine HAVE_SYS_PRCTL_H
/* Check for libraries */
#cmakedefine HAVE_LIBM
#cmakedefine HAVE_LIBM