diff --git a/CMakeLists.txt b/CMakeLists.txt index 4521f6959..32aef5b7a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -497,12 +497,16 @@ tr_add_external_auto_library(PSL libpsl psl if(ENABLE_UTP) tr_add_external_auto_library(UTP libutp utp SUBPROJECT - TARGET libutp::libutp) + TARGET libutp::libutp + CMAKE_ARGS + -DLIBUTP_SHARED:BOOL=OFF) endif() tr_add_external_auto_library(B64 libb64 b64 SUBPROJECT - TARGET libb64::libb64) + TARGET libb64::libb64 + CMAKE_ARGS + -DLIBB64_SHARED:BOOL=OFF) if(NOT ${REBUILD_WEB} STREQUAL "OFF") find_program(NPM npm) diff --git a/cmake/TrMacros.cmake b/cmake/TrMacros.cmake index 4b84c0af9..997a60620 100644 --- a/cmake/TrMacros.cmake +++ b/cmake/TrMacros.cmake @@ -140,6 +140,11 @@ macro(tr_add_external_auto_library ID DIRNAME LIBNAME) if(USE_SYSTEM_${ID}) unset(${ID}_UPSTREAM_TARGET) elseif(_TAEAL_ARG_SUBPROJECT) + foreach(ARG IN LISTS _TAEAL_ARG_CMAKE_ARGS) + if(ARG MATCHES "^-D([^=: ]+)(:[^= ]+)?=(.*)$") + set(${CMAKE_MATCH_1} ${CMAKE_MATCH_3} CACHE INTERNAL "") + endif() + endforeach() add_subdirectory("${CMAKE_SOURCE_DIR}/third-party/${DIRNAME}" "${CMAKE_BINARY_DIR}/third-party/${DIRNAME}") else() set(${ID}_UPSTREAM_TARGET ${LIBNAME}) diff --git a/third-party/libb64 b/third-party/libb64 index 91a38519c..64ab5ed76 160000 --- a/third-party/libb64 +++ b/third-party/libb64 @@ -1 +1 @@ -Subproject commit 91a38519cb18d3869b4f1c99b0a80726547054af +Subproject commit 64ab5ed7693d7a063c43f9da64c7d8e4e9519ef4 diff --git a/third-party/libutp b/third-party/libutp index bf695bdfb..420e697ac 160000 --- a/third-party/libutp +++ b/third-party/libutp @@ -1 +1 @@ -Subproject commit bf695bdfb047cdca9710ea9cffc4018669cf9548 +Subproject commit 420e697ac4f3d70005a85e3cfd8b022e2bd5b060