From f41375b55be89b3103b576e3f0d9446a9870e089 Mon Sep 17 00:00:00 2001 From: Marcus Holland-Moritz Date: Thu, 1 Aug 2024 23:39:15 +0200 Subject: [PATCH] build: allow building with shared libraries --- CMakeLists.txt | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 27b8e7f1..9e341f6f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -100,11 +100,17 @@ if(APPLE) set(TRY_RUN_INCLUDE_DIRECTORIES ${HOMEBREW_PREFIX_PATH}/include) endif() -if(BUILD_SHARED_LIBS) - message(WARNING "Building shared libraries is unsupported. Setting BUILD_SHARED_LIBS to OFF.") +if(BUILD_SHARED_LIBS AND STATIC_BUILD_DO_NOT_USE) + message(FATAL_ERROR "Seriously, don't try setting both BUILD_SHARED_LIBS and STATIC_BUILD_DO_NOT_USE") +endif() + +if(WIN32 OR STATIC_BUILD_DO_NOT_USE) + set(BUILD_SHARED_LIBS OFF) + set(CMAKE_POSITION_INDEPENDENT_CODE OFF) +else() + set(CMAKE_POSITION_INDEPENDENT_CODE ON) endif() -set(BUILD_SHARED_LIBS OFF) set(CMAKE_CXX_SCAN_FOR_MODULES OFF) if(NOT DISABLE_CCACHE)