function(prevent_in_source_build) get_filename_component(REAL_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}" REALPATH) get_filename_component(REAL_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}" REALPATH) if (REAL_BINARY_DIR STREQUAL REAL_SOURCE_DIR) message(" Out-of-source build must be used. Remove the files already") message(" created by CMake and rerun CMake from a new directory:") message(" rm -rf CMakeFiles CMakeCache.txt") message(" mkdir build") message(" cd build") message(" cmake ..") message(FATAL_ERROR "In-source build failed.") endif() endfunction()