CMake/Tests/LoadCommand/CMakeLists.txt

69 lines
2.2 KiB
CMake
Raw Normal View History

2007-05-19 18:10:29 +04:00
PROJECT(LoadCommand)
2002-09-17 00:27:00 +04:00
# set a definition
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)
2002-12-05 19:55:53 +03:00
CHECK_FUNCTION_EXISTS(printf HAVE_PRINTF)
2002-09-20 22:17:32 +04:00
CHECK_FUNCTION_EXISTS(vsblabla HAVE_VSBLABLA)
INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake)
CHECK_INCLUDE_FILE("sys/prctl.h" HAVE_SYS_PRCTL_H)
2002-09-25 18:08:46 +04:00
INCLUDE (${CMAKE_ROOT}/Modules/CheckLibraryExists.cmake)
CHECK_LIBRARY_EXISTS(m ceil "" HAVE_LIBM)
2007-05-19 18:15:24 +04:00
CONFIGURE_FILE(${LoadCommand_SOURCE_DIR}/LoadedCommand.h.in
${LoadCommand_BINARY_DIR}/LoadedCommand.h)
2007-05-19 18:15:24 +04:00
INCLUDE_DIRECTORIES(${LoadCommand_BINARY_DIR})
2002-09-17 00:27:00 +04:00
# try to compile the command
2003-03-11 23:25:50 +03:00
# make sure it is not already loaded
IF(COMMAND CMAKE_TEST_COMMAND)
ELSE(COMMAND CMAKE_TEST_COMMAND)
TRY_COMPILE(COMPILE_OK
2007-05-19 18:15:24 +04:00
${LoadCommand_BINARY_DIR}/CMakeCommands
${LoadCommand_SOURCE_DIR}/CMakeCommands
2003-03-11 23:25:50 +03:00
CMAKE_LOADED_COMMANDS CMAKE_FLAGS -DMUDSLIDE_TYPE:STRING=MUCHO
OUTPUT_VARIABLE OUTPUT )
# do another TRY_COMPILE to get around make
# problem on hp
TRY_COMPILE(COMPILE_OK
2007-05-19 18:15:24 +04:00
${LoadCommand_BINARY_DIR}/CMakeCommands
${LoadCommand_SOURCE_DIR}/CMakeCommands
CMAKE_LOADED_COMMANDS CMAKE_FLAGS -DMUDSLIDE_TYPE:STRING=MUCHO
OUTPUT_VARIABLE OUTPUT )
2003-03-11 23:25:50 +03:00
ENDIF(COMMAND CMAKE_TEST_COMMAND)
MESSAGE("Output from try compile: ${OUTPUT}")
2002-09-17 00:27:00 +04:00
# if the compile was OK, try loading the command
IF (COMPILE_OK)
LOAD_COMMAND(CMAKE_TEST_COMMAND
2007-05-19 18:15:24 +04:00
${LoadCommand_BINARY_DIR}/CMakeCommands
${LoadCommand_BINARY_DIR}/CMakeCommands/Debug
${LoadCommand_BINARY_DIR}/CMakeCommands/Development
2002-09-17 00:27:00 +04:00
)
# if the command loaded, execute the command
IF (COMMAND CMAKE_TEST_COMMAND)
CMAKE_TEST_COMMAND(
2007-05-19 18:15:24 +04:00
"${LoadCommand_SOURCE_DIR}/LoadedCommand.cxx.in"
"${LoadCommand_BINARY_DIR}/LoadedCommand2.cxx.in"
"${LoadCommand_BINARY_DIR}/LoadedCommand3.cxx"
)
2002-09-17 00:27:00 +04:00
ENDIF (COMMAND CMAKE_TEST_COMMAND)
ELSE (COMPILE_OK)
2002-09-17 16:29:42 +04:00
MESSAGE("failed to compile CMAKE_LOADED_COMMANDS")
2002-09-17 00:27:00 +04:00
ENDIF (COMPILE_OK)
# TEST_DEF is set by the loaded command cmTestCommand.c
IF (TEST_DEF AND SOME_CACHE_VARIABLE AND TEST_EXEC)
2002-09-17 17:16:04 +04:00
ADD_DEFINITIONS(-DCMAKE_IS_FUN)
ENDIF (TEST_DEF AND SOME_CACHE_VARIABLE AND TEST_EXEC)
2002-09-17 00:27:00 +04:00