ENH: Add check for previous bootstrap in the source tree when doing out-of-source build
This commit is contained in:
parent
ace5f90d9c
commit
6b7257db61
41
bootstrap
41
bootstrap
@ -21,6 +21,17 @@ CMAKE_KNOWN_C_COMPILERS="cc gcc xlc icc tcc"
|
|||||||
CMAKE_KNOWN_CXX_COMPILERS="aCC xlC CC g++ c++ icc como "
|
CMAKE_KNOWN_CXX_COMPILERS="aCC xlC CC g++ c++ icc como "
|
||||||
CMAKE_KNOWN_MAKE_PROCESSORS="make gmake"
|
CMAKE_KNOWN_MAKE_PROCESSORS="make gmake"
|
||||||
|
|
||||||
|
CMAKE_PROBLEMATIC_FILES="\
|
||||||
|
CMakeCache.txt \
|
||||||
|
CMakeSystem.cmake \
|
||||||
|
CMakeCCompiler.cmake \
|
||||||
|
CMakeCXXCompiler.cmake \
|
||||||
|
Source/cmConfigure.h \
|
||||||
|
Source/CTest/Curl/config.h \
|
||||||
|
Utilities/cmexpat/expatConfig.h \
|
||||||
|
Utilities/cmexpat/expatDllConfig.h \
|
||||||
|
"
|
||||||
|
|
||||||
CMAKE_CXX_SOURCES="\
|
CMAKE_CXX_SOURCES="\
|
||||||
cmake \
|
cmake \
|
||||||
cmakewizard \
|
cmakewizard \
|
||||||
@ -332,6 +343,36 @@ echo "---------------------------------------------"
|
|||||||
# Get CMake version
|
# Get CMake version
|
||||||
echo "`cmake_version`"
|
echo "`cmake_version`"
|
||||||
|
|
||||||
|
# Check for in-source build
|
||||||
|
cmake_in_source_build=
|
||||||
|
if [ -f "${cmake_binary_dir}/Source/cmake.cxx" -a \
|
||||||
|
-f "${cmake_binary_dir}/Source/cmake.h" ]; then
|
||||||
|
if [ -n "${cmake_verbose}" ]; then
|
||||||
|
echo "Warning: This is an in-source build"
|
||||||
|
fi
|
||||||
|
cmake_in_source_build=TRUE
|
||||||
|
fi
|
||||||
|
|
||||||
|
# If this is not an in-source build, then Bootstrap stuff should not exist.
|
||||||
|
if [ -z "${cmake_in_source_build}" ]; then
|
||||||
|
# Did somebody bootstrap in the source tree?
|
||||||
|
if [ -e "${cmake_source_dir}/Bootstrap.cmk" ]; then
|
||||||
|
cmake_error 10 "Found directory \"${cmake_source_dir}/Bootstrap.cmk\".
|
||||||
|
Looks like somebody did bootstrap CMake in the source tree, but now you are
|
||||||
|
trying to do bootstrap in the binary tree. Please remove Bootstrap.cmk
|
||||||
|
directory from the source tree."
|
||||||
|
fi
|
||||||
|
# Is there a cache in the source tree?
|
||||||
|
for cmake_problematic_file in ${CMAKE_PROBLEMATIC_FILES}; do
|
||||||
|
if [ -e "${cmake_source_dir}/${cmake_problematic_file}" ]; then
|
||||||
|
cmake_error 10 "Found \"${cmake_source_dir}/${cmake_problematic_file}\".
|
||||||
|
Looks like somebody tried to build CMake in the source tree, but now you are
|
||||||
|
trying to do bootstrap in the binary tree. Please remove \"${cmake_problematic_file}\"
|
||||||
|
from the source tree."
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
# Make bootstrap directory
|
# Make bootstrap directory
|
||||||
[ -d "${cmake_bootstrap_dir}" ] || mkdir "${cmake_bootstrap_dir}"
|
[ -d "${cmake_bootstrap_dir}" ] || mkdir "${cmake_bootstrap_dir}"
|
||||||
if [ ! -d "${cmake_bootstrap_dir}" ]; then
|
if [ ! -d "${cmake_bootstrap_dir}" ]; then
|
||||||
|
Loading…
x
Reference in New Issue
Block a user