From 4cb5e6f57f9ff13a5fdffb224d16a3af36b38828 Mon Sep 17 00:00:00 2001 From: tamasmeszaros Date: Tue, 15 Aug 2023 11:57:24 +0200 Subject: [PATCH] Add possibility to build shared libs --- cmake/modules/AddCMakeProject.cmake | 12 +++++++----- deps/+TBB/TBB.cmake | 2 +- deps/CMakeLists.txt | 3 +++ 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/cmake/modules/AddCMakeProject.cmake b/cmake/modules/AddCMakeProject.cmake index cc5399ae44..4a84da1111 100644 --- a/cmake/modules/AddCMakeProject.cmake +++ b/cmake/modules/AddCMakeProject.cmake @@ -43,10 +43,12 @@ function(add_cmake_project projectname) endif () set(_verbose_switch "") - if (CMAKE_GENERATOR MATCHES "Ninja") - set(_verbose_switch "--verbose") - elseif (CMAKE_GENERATOR MATCHES "Visual Studio") - set(_verbose_switch "-v:d") + if (${PROJECT_NAME}_DEP_BUILD_VERBOSE) + if (CMAKE_GENERATOR MATCHES "Ninja") + set(_verbose_switch "--verbose") + elseif (CMAKE_GENERATOR MATCHES "Visual Studio") + set(_verbose_switch "-v:d") + endif () endif () ExternalProject_Add( @@ -64,7 +66,7 @@ function(add_cmake_project projectname) -DCMAKE_CXX_FLAGS_${_build_type_upper}:STRING=${CMAKE_CXX_FLAGS_${_build_type_upper}} -DCMAKE_C_FLAGS_${_build_type_upper}:STRING=${CMAKE_C_FLAGS_${_build_type_upper}} -DCMAKE_TOOLCHAIN_FILE:STRING=${CMAKE_TOOLCHAIN_FILE} - -DBUILD_SHARED_LIBS:BOOL=OFF + -DBUILD_SHARED_LIBS:BOOL=${BUILD_SHARED_LIBS} "${_configs_line}" ${DEP_CMAKE_OPTS} ${P_ARGS_CMAKE_ARGS} diff --git a/deps/+TBB/TBB.cmake b/deps/+TBB/TBB.cmake index d7ed02d5e1..95ac76b69c 100644 --- a/deps/+TBB/TBB.cmake +++ b/deps/+TBB/TBB.cmake @@ -3,7 +3,7 @@ add_cmake_project( URL "https://github.com/oneapi-src/oneTBB/archive/refs/tags/v2021.5.0.zip" URL_HASH SHA256=83ea786c964a384dd72534f9854b419716f412f9d43c0be88d41874763e7bb47 CMAKE_ARGS - -DTBB_BUILD_SHARED=OFF + -DTBB_BUILD_SHARED=${BUILD_SHARED_LIBS} -DTBB_TEST=OFF -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_DEBUG_POSTFIX=_debug diff --git a/deps/CMakeLists.txt b/deps/CMakeLists.txt index ce49cbfc42..d1ea15876b 100644 --- a/deps/CMakeLists.txt +++ b/deps/CMakeLists.txt @@ -26,6 +26,9 @@ cmake_minimum_required(VERSION 3.12) project(PrusaSlicer_deps) +# Redefine BUILD_SHARED_LIBS with default being OFF +option(BUILD_SHARED_LIBS "Build shared libraries instead of static (experimental)" OFF) + set(${PROJECT_NAME}_PACKAGE_EXCLUDES "" CACHE STRING "Exclude packages matching this regex pattern") # Support legacy parameter DESTDIR