cmlib/CMLibDisableInSourceBuild.cmake

15 lines
1007 B
CMake
Raw Normal View History

2019-02-12 16:31:17 +00:00
# Запись результатов сборки проекта внутрь иерархии каталогов
# с исходными текстами приводит к засорению файлами формируемыми
# на этапе сборки, которые затрудняют разработку, поиск в оригинальных
# файлах и мешают ориентироваться в проекте. При работе с несколькими
# типами сборки, например, отладка и выпуск, появляется необходимость
# корректного полного удаления результатов предыдущего варианта.
get_filename_component(_source_realpath "${CMAKE_SOURCE_DIR}" REALPATH)
get_filename_component(_binary_realpath "${CMAKE_BINARY_DIR}" REALPATH)
if(${_source_realpath} STREQUAL ${_binary_realpath})
message(FATAL_ERROR "In-source builds are not allowed.")
endif()