From 1765223755ebb54891fab644ed622bb6e2adeffc Mon Sep 17 00:00:00 2001 From: Eyal Niv Date: Tue, 26 Nov 2024 07:53:09 -0700 Subject: [PATCH] Fix CMAKE issues mentioned in #2144 and a linking problem which manifest with gcc12.3 when building with shared libs (#2208) (#2213) * Respect find_package QUIET * Add policy_max to cmake_minimum_required Avoid deprecation warning introduced by cmake 3.31 * Add missing DROGON_EXPORT --- CMakeLists.txt | 2 +- cmake/ParseAndAddDrogonTests.cmake | 2 +- cmake_modules/FindJsoncpp.cmake | 4 +++- lib/inc/drogon/RequestStream.h | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a46d3af1b6..2dd4abb8ed 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.5) +cmake_minimum_required(VERSION 3.5...3.31) project(drogon) diff --git a/cmake/ParseAndAddDrogonTests.cmake b/cmake/ParseAndAddDrogonTests.cmake index 34d9129708..83e0bf47dc 100644 --- a/cmake/ParseAndAddDrogonTests.cmake +++ b/cmake/ParseAndAddDrogonTests.cmake @@ -17,7 +17,7 @@ # ParseAndAddDrogonTests(${PROJECT_NAME}) # #==================================================================================================# -cmake_minimum_required(VERSION 3.5) +cmake_minimum_required(VERSION 3.5...3.31) # This removes the contents between # - block comments (i.e. /* ... */) diff --git a/cmake_modules/FindJsoncpp.cmake b/cmake_modules/FindJsoncpp.cmake index 1c60a76e49..a0813b0297 100755 --- a/cmake_modules/FindJsoncpp.cmake +++ b/cmake_modules/FindJsoncpp.cmake @@ -51,7 +51,9 @@ if(Jsoncpp_FOUND) COMMAND awk "{ printf \$3 }" COMMAND sed -e "s/\"//g" OUTPUT_VARIABLE jsoncpp_ver) - message(STATUS "jsoncpp version:" ${jsoncpp_ver}) + if(NOT Jsoncpp_FIND_QUIETLY) + message(STATUS "jsoncpp version:" ${jsoncpp_ver}) + endif() if(jsoncpp_ver LESS 1.7) message( FATAL_ERROR diff --git a/lib/inc/drogon/RequestStream.h b/lib/inc/drogon/RequestStream.h index b977ffb4bc..8c00fe8668 100644 --- a/lib/inc/drogon/RequestStream.h +++ b/lib/inc/drogon/RequestStream.h @@ -88,7 +88,7 @@ class StreamError final : public std::exception * An interface for stream request reading. * User should create an implementation class, or use built-in handlers */ -class RequestStreamReader +class DROGON_EXPORT RequestStreamReader { public: virtual ~RequestStreamReader() = default;