ENH: merge CMake-CrossCompileBasic to HEAD
-add a RESULT_VARIABLE to INCLUDE()
-add CMAKE_TOOLCHAIN_FILE for specifiying your (potentially crosscompiling) toolchain
-have TRY_RUN() complain if you try to use it in crosscompiling mode (which were compiled but cannot run on this system)
-use CMAKE_EXECUTABLE_SUFFIX in TRY_RUN(), probably TRY_RUN won't be able to
run the executables if they have a different suffix because they are
probably crosscompiled, but nevertheless it should be able to find them
-make several cmake variables presettable by the user: CMAKE_C/CXX_COMPILER, CMAKE_C/CXX_OUTPUT_EXTENSION, CMAKE_SYSTEM_NAME, CMAKE_SYSTEM_INFO_FILE
-support prefix for GNU toolchains (arm-elf-gcc, arm-elf-ar, arm-elf-strip etc.)
-move ranlib on OSX from the file command to a command in executed in cmake_install.cmake
-add support for stripping during install in cmake_install.cmake
-split out cl.cmake from Windows-cl.cmake, first (very incomplete) step to support MS crosscompiling tools
-remove stdio.h from the simple C program which checks if the compiler works, since this may not exist for some embedded platforms
-create a new CMakeFindBinUtils.cmake which collects the search fro ar, ranlib, strip, ld, link, install_name_tool and other tools like these
-add support for CMAKE_FIND_ROOT_PATH for all FIND_XXX commands, which is a
list of directories which will be prepended to all search directories, right
now as a cmake variable, turning it into a global cmake property may need
some more work
-remove cmTestTestHandler::TryExecutable(), it's unused
-split cmFileCommand::HandleInstall() into slightly smaller functions
Alex
2007-05-17 21:20:44 +04:00
|
|
|
# this one must silently fail
|
|
|
|
include(I_am_not_here OPTIONAL)
|
|
|
|
|
|
|
|
# this one must be found and the result must be put into _includedFile
|
|
|
|
include(CMake RESULT_VARIABLE _includedFile)
|
2007-06-06 21:32:01 +04:00
|
|
|
|
|
|
|
set(fileOne "${_includedFile}")
|
|
|
|
set(fileTwo "${CMAKE_ROOT}/Modules/CMake.cmake")
|
|
|
|
if(WIN32)
|
|
|
|
string(TOLOWER "${fileOne}" fileOne)
|
2007-06-06 21:43:46 +04:00
|
|
|
string(TOLOWER "${fileTwo}" fileTwo)
|
2007-06-06 21:32:01 +04:00
|
|
|
endif(WIN32)
|
|
|
|
|
|
|
|
if(NOT "${fileOne}" STREQUAL "${fileTwo}")
|
2007-06-06 21:43:46 +04:00
|
|
|
message(FATAL_ERROR "Wrong CMake.cmake was included: \"${fileOne}\" expected \"${fileTwo}\"")
|
2007-06-06 21:32:01 +04:00
|
|
|
endif(NOT "${fileOne}" STREQUAL "${fileTwo}")
|
ENH: merge CMake-CrossCompileBasic to HEAD
-add a RESULT_VARIABLE to INCLUDE()
-add CMAKE_TOOLCHAIN_FILE for specifiying your (potentially crosscompiling) toolchain
-have TRY_RUN() complain if you try to use it in crosscompiling mode (which were compiled but cannot run on this system)
-use CMAKE_EXECUTABLE_SUFFIX in TRY_RUN(), probably TRY_RUN won't be able to
run the executables if they have a different suffix because they are
probably crosscompiled, but nevertheless it should be able to find them
-make several cmake variables presettable by the user: CMAKE_C/CXX_COMPILER, CMAKE_C/CXX_OUTPUT_EXTENSION, CMAKE_SYSTEM_NAME, CMAKE_SYSTEM_INFO_FILE
-support prefix for GNU toolchains (arm-elf-gcc, arm-elf-ar, arm-elf-strip etc.)
-move ranlib on OSX from the file command to a command in executed in cmake_install.cmake
-add support for stripping during install in cmake_install.cmake
-split out cl.cmake from Windows-cl.cmake, first (very incomplete) step to support MS crosscompiling tools
-remove stdio.h from the simple C program which checks if the compiler works, since this may not exist for some embedded platforms
-create a new CMakeFindBinUtils.cmake which collects the search fro ar, ranlib, strip, ld, link, install_name_tool and other tools like these
-add support for CMAKE_FIND_ROOT_PATH for all FIND_XXX commands, which is a
list of directories which will be prepended to all search directories, right
now as a cmake variable, turning it into a global cmake property may need
some more work
-remove cmTestTestHandler::TryExecutable(), it's unused
-split cmFileCommand::HandleInstall() into slightly smaller functions
Alex
2007-05-17 21:20:44 +04:00
|
|
|
|
|
|
|
# this one must return NOTFOUND in _includedFile
|
|
|
|
include(I_do_not_exist OPTIONAL RESULT_VARIABLE _includedFile)
|
|
|
|
|
|
|
|
if(_includedFile)
|
|
|
|
message(FATAL_ERROR "File \"I_do_not_exist\" was included, although it shouldn't exist,\nIncluded file is \"${_includedFile}\"")
|
|
|
|
endif(_includedFile)
|
|
|
|
|
|
|
|
# and this one must succeed too
|
|
|
|
include(CMake OPTIONAL RESULT_VARIABLE _includedFile)
|
2007-06-06 21:32:01 +04:00
|
|
|
set(fileOne "${_includedFile}")
|
|
|
|
set(fileTwo "${CMAKE_ROOT}/Modules/CMake.cmake")
|
|
|
|
if(WIN32)
|
|
|
|
string(TOLOWER "${fileOne}" fileOne)
|
2007-06-06 21:43:46 +04:00
|
|
|
string(TOLOWER "${fileTwo}" fileTwo)
|
2007-06-06 21:32:01 +04:00
|
|
|
endif(WIN32)
|
2007-06-06 21:43:46 +04:00
|
|
|
|
2007-06-06 21:32:01 +04:00
|
|
|
if(NOT "${fileOne}" STREQUAL "${fileTwo}")
|
2007-06-06 21:43:46 +04:00
|
|
|
message(FATAL_ERROR "Wrong CMake.cmake was included: \"${fileOne}\" expected \"${fileTwo}\"")
|
2007-06-06 21:32:01 +04:00
|
|
|
endif(NOT "${fileOne}" STREQUAL "${fileTwo}")
|
ENH: merge CMake-CrossCompileBasic to HEAD
-add a RESULT_VARIABLE to INCLUDE()
-add CMAKE_TOOLCHAIN_FILE for specifiying your (potentially crosscompiling) toolchain
-have TRY_RUN() complain if you try to use it in crosscompiling mode (which were compiled but cannot run on this system)
-use CMAKE_EXECUTABLE_SUFFIX in TRY_RUN(), probably TRY_RUN won't be able to
run the executables if they have a different suffix because they are
probably crosscompiled, but nevertheless it should be able to find them
-make several cmake variables presettable by the user: CMAKE_C/CXX_COMPILER, CMAKE_C/CXX_OUTPUT_EXTENSION, CMAKE_SYSTEM_NAME, CMAKE_SYSTEM_INFO_FILE
-support prefix for GNU toolchains (arm-elf-gcc, arm-elf-ar, arm-elf-strip etc.)
-move ranlib on OSX from the file command to a command in executed in cmake_install.cmake
-add support for stripping during install in cmake_install.cmake
-split out cl.cmake from Windows-cl.cmake, first (very incomplete) step to support MS crosscompiling tools
-remove stdio.h from the simple C program which checks if the compiler works, since this may not exist for some embedded platforms
-create a new CMakeFindBinUtils.cmake which collects the search fro ar, ranlib, strip, ld, link, install_name_tool and other tools like these
-add support for CMAKE_FIND_ROOT_PATH for all FIND_XXX commands, which is a
list of directories which will be prepended to all search directories, right
now as a cmake variable, turning it into a global cmake property may need
some more work
-remove cmTestTestHandler::TryExecutable(), it's unused
-split cmFileCommand::HandleInstall() into slightly smaller functions
Alex
2007-05-17 21:20:44 +04:00
|
|
|
|
2010-09-29 00:09:14 +04:00
|
|
|
# Check that CMAKE_CURRENT_LIST_DIR is working:
|
|
|
|
# Needs to be a file in the build tree, which is correct cmake script
|
|
|
|
# but doesn't do a lot, if possible only set() commands:
|
|
|
|
include(${CMAKE_CURRENT_LIST_DIR}/../../CTestCustom.cmake)
|