diff options
author | Oscar Fuentes <ofv@wanadoo.es> | 2009-07-13 21:58:44 +0000 |
---|---|---|
committer | Oscar Fuentes <ofv@wanadoo.es> | 2009-07-13 21:58:44 +0000 |
commit | 6761c5d609b45f246c3098034683e47113f9f635 (patch) | |
tree | 156000e579771e93b9cd495b99601f3417e16468 | |
parent | f666c094e99a3f5509ac8182622373ddde529ded (diff) |
CMake: Refuses to work for out-of-source builds when tablegenned files
are found mixed with the sources. Fixes PR 4522.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75522 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | CMakeLists.txt | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 48d0f76f04..31b1f3063b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,6 +28,24 @@ set(LLVM_TOOLS_BINARY_DIR ${LLVM_BINARY_DIR}/bin) set(LLVM_EXAMPLES_BINARY_DIR ${LLVM_BINARY_DIR}/examples) set(LLVM_LIBDIR_SUFFIX "" CACHE STRING "Define suffix of library directory name (32/64)" ) +if( NOT CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR ) + file(GLOB_RECURSE + tablegenned_files_on_include_dir + "${LLVM_MAIN_SRC_DIR}/include/llvm/*.gen") + file(GLOB_RECURSE + tablegenned_files_on_lib_dir + "${LLVM_MAIN_SRC_DIR}/lib/Target/*.inc") + if( tablegenned_files_on_include_dir OR tablegenned_files_on_lib_dir) + message(FATAL_ERROR "Apparently there is a previous in-source build, +probably as the result of running `configure' and `make' on +${LLVM_MAIN_SRC_DIR}. +This may cause problems. The suspicious files are: +${tablegenned_files_on_lib_dir} +${tablegenned_files_on_include_dir} +Please clean the source directory.") + endif() +endif() + set(LLVM_ALL_TARGETS Alpha ARM |