aboutsummaryrefslogtreecommitdiff
path: root/cmake/PreventInTreeBuilds.cmake
diff options
context:
space:
mode:
authorJohn Szakmeister <john@szakmeister.net>2016-10-11 18:35:02 -0400
committerJohn Szakmeister <john@szakmeister.net>2016-10-11 20:20:31 -0400
commit53eddb881cd3252035b87540d562775dfb93f207 (patch)
tree28fcdc9875f71b77b1685f1f53cc6e8d06b6f605 /cmake/PreventInTreeBuilds.cmake
parent1dde512498d2fa9f3427861b5d4f894c778f992b (diff)
downloadrneovim-53eddb881cd3252035b87540d562775dfb93f207.tar.gz
rneovim-53eddb881cd3252035b87540d562775dfb93f207.tar.bz2
rneovim-53eddb881cd3252035b87540d562775dfb93f207.zip
build: prevent in-tree builds for the time being, as it's not supported
Diffstat (limited to 'cmake/PreventInTreeBuilds.cmake')
-rw-r--r--cmake/PreventInTreeBuilds.cmake23
1 files changed, 23 insertions, 0 deletions
diff --git a/cmake/PreventInTreeBuilds.cmake b/cmake/PreventInTreeBuilds.cmake
new file mode 100644
index 0000000000..9c0ce1c0a2
--- /dev/null
+++ b/cmake/PreventInTreeBuilds.cmake
@@ -0,0 +1,23 @@
+function(PreventInTreeBuilds)
+ get_filename_component(srcdir "${CMAKE_SOURCE_DIR}" REALPATH)
+ get_filename_component(bindir "${CMAKE_BINARY_DIR}" REALPATH)
+
+ if("${srcdir}" STREQUAL "${bindir}")
+ message("")
+ message("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
+ message("Neovim doesn't support in-tree builds. It's recommended that you")
+ message("use a build/ subdirectory:")
+ message(" mkdir build")
+ message(" cd build")
+ message(" cmake <OPTIONS> ..")
+ message("")
+ message("Make sure to cleanup some CMake artifacts from this failed build")
+ message("with:")
+ message(" rm -rf CMakeFiles CMakeCache.txt")
+ message("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
+ message("")
+ message(FATAL_ERROR "Stopping build.")
+ endif()
+endfunction()
+
+PreventInTreeBuilds()