From: Azat Khuzhin Date: Sat, 30 Nov 2019 12:48:36 +0000 (+0300) Subject: cmake: set CMAKE_{RUNTIME,LIBRARY,ARCHIVE}_OUTPUT_DIRECTORY they are not defined X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8f13c170cf6e9a02dec410b967884ec5e08947ab;p=libevent cmake: set CMAKE_{RUNTIME,LIBRARY,ARCHIVE}_OUTPUT_DIRECTORY they are not defined This will allow overriding them in parent cmake rules, i.e. if libevent is used via add_subdirectory(). Closes: #931 --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 5b2537d5..1efda0e9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -159,9 +159,18 @@ option(EVENT__COVERAGE # Put the libaries and binaries that get built into directories at the # top of the build tree rather than in hard-to-find leaf directories. -set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) -set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib) -set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib) +# +# But only if this variables are not defined yet +# (i.e. libevent is used via add_subdirectory()) +if (NOT DEFINED CMAKE_RUNTIME_OUTPUT_DIRECTORY) + set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) +endif() +if (NOT DEFINED CMAKE_LIBRARY_OUTPUT_DIRECTORY) + set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib) +endif() +if (NOT DEFINED CMAKE_ARCHIVE_OUTPUT_DIRECTORY) + set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib) +endif() if (EVENT__ENABLE_VERBOSE_DEBUG) add_definitions(-DUSE_DEBUG=1)