It's a reoccurring issue that users try to build individual components by pointing cmake at a specific subdirectory, e.g. 'cmake vncviewer'. CMake, unfortunately, has insufficient protection against this so we'll need to add a manual check. This commit only adds it to the most likely places for misuse so we don't have to pollute every CMakeLists.txt.pull/1714/head
@@ -1,3 +1,7 @@ | |||
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR) | |||
message(FATAL_ERROR "cmake must be invoked with the top level directory") | |||
endif() | |||
# Benchmarking tools | |||
add_subdirectory(perf) | |||
@@ -1,3 +1,7 @@ | |||
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR) | |||
message(FATAL_ERROR "cmake must be invoked with the top level directory") | |||
endif() | |||
add_subdirectory(tx) | |||
add_subdirectory(common) | |||
add_subdirectory(vncconfig) |
@@ -1,3 +1,7 @@ | |||
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR) | |||
message(FATAL_ERROR "cmake must be invoked with the top level directory") | |||
endif() | |||
add_executable(vncviewer | |||
fltk/Fl_Monitor_Arrangement.cxx | |||
fltk/Fl_Navigation.cxx |
@@ -1,3 +1,7 @@ | |||
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR) | |||
message(FATAL_ERROR "cmake must be invoked with the top level directory") | |||
endif() | |||
include_directories(${CMAKE_SOURCE_DIR}/common ${CMAKE_SOURCE_DIR}/win) | |||
configure_file(resdefs.h.in ${CMAKE_CURRENT_BINARY_DIR}/resdefs.h) |