From 36d0fb20042dd9120e00671bd5a54a24bde6e0df Mon Sep 17 00:00:00 2001 From: Philemon Benner Date: Thu, 3 Jul 2025 00:31:01 +0200 Subject: [PATCH 1/2] added REFLECTCPP_INSTALL to allow user to control if required --- CMakeLists.txt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c9c571e8..ee7b7dc1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,9 @@ cmake_minimum_required(VERSION 3.23) +project(reflectcpp VERSION 0.19.0 LANGUAGES CXX) + option(REFLECTCPP_BUILD_SHARED "Build shared library" ${BUILD_SHARED_LIBS}) +option(REFLECTCPP_INSTALL "Install reflect cpp" ${PROJECT_IS_TOP_LEVEL}) option(REFLECTCPP_JSON "Enable JSON support" ON) # enabled by default option(REFLECTCPP_AVRO "Enable AVRO support" OFF) @@ -120,8 +123,6 @@ if (REFLECTCPP_USE_VCPKG) set(CMAKE_TOOLCHAIN_FILE ${CMAKE_CURRENT_SOURCE_DIR}/vcpkg/scripts/buildsystems/vcpkg.cmake CACHE STRING "Vcpkg toolchain file") endif () -project(reflectcpp VERSION 0.19.0 LANGUAGES CXX) - if (REFLECTCPP_BUILD_SHARED) add_library(reflectcpp SHARED) set_target_properties(reflectcpp PROPERTIES SOVERSION ${PROJECT_VERSION}) @@ -308,7 +309,7 @@ if (REFLECTCPP_BUILD_BENCHMARKS) add_subdirectory(benchmarks) endif () -if (PROJECT_IS_TOP_LEVEL) +if (REFLECTCPP_INSTALL) include(GNUInstallDirs) include(CMakePackageConfigHelpers) From 31c5beaea30ce13b7fbb01140a87712d94eb1fa5 Mon Sep 17 00:00:00 2001 From: Philemon Benner Date: Fri, 4 Jul 2025 00:33:35 +0200 Subject: [PATCH 2/2] reverted project decl move changed install to default to off and enable if project is top level --- CMakeLists.txt | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ee7b7dc1..d9f92f0a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,9 +1,7 @@ cmake_minimum_required(VERSION 3.23) -project(reflectcpp VERSION 0.19.0 LANGUAGES CXX) - option(REFLECTCPP_BUILD_SHARED "Build shared library" ${BUILD_SHARED_LIBS}) -option(REFLECTCPP_INSTALL "Install reflect cpp" ${PROJECT_IS_TOP_LEVEL}) +option(REFLECTCPP_INSTALL "Install reflect cpp" OFF) option(REFLECTCPP_JSON "Enable JSON support" ON) # enabled by default option(REFLECTCPP_AVRO "Enable AVRO support" OFF) @@ -123,6 +121,12 @@ if (REFLECTCPP_USE_VCPKG) set(CMAKE_TOOLCHAIN_FILE ${CMAKE_CURRENT_SOURCE_DIR}/vcpkg/scripts/buildsystems/vcpkg.cmake CACHE STRING "Vcpkg toolchain file") endif () +project(reflectcpp VERSION 0.19.0 LANGUAGES CXX) + +if (PROJECT_IS_TOP_LEVEL) + set(REFLECTCPP_INSTALL ON) +endif() + if (REFLECTCPP_BUILD_SHARED) add_library(reflectcpp SHARED) set_target_properties(reflectcpp PROPERTIES SOVERSION ${PROJECT_VERSION})