1
# MACRO_ENSURE_OUT_OF_SOURCE_BUILD(<errorMessage>)
2
# Call this macro in your project if you want to enforce out-of-source builds.
3
# If an in-source build is detected, it will abort with the given error message.
4
# This macro works in any of the CMakeLists.txt of your project, but the recommended
5
# location to call this is close to the beginning of the top level CMakeLists.txt
7
# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
9
# Redistribution and use is allowed according to the terms of the BSD license.
10
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
12
MACRO (MACRO_ENSURE_OUT_OF_SOURCE_BUILD _errorMessage)
14
STRING(COMPARE EQUAL "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" insource)
16
MESSAGE(FATAL_ERROR "${_errorMessage}")
19
ENDMACRO (MACRO_ENSURE_OUT_OF_SOURCE_BUILD)