From 6c8dca24e48b0bbeb11e9611fe547246167030ab Mon Sep 17 00:00:00 2001 From: Luke Granger-Brown Date: Fri, 20 Dec 2024 18:03:16 +0000 Subject: [PATCH 1/3] Use system mbedtls, rather than downloading from a random Git branch... --- ajantv2/CMakeLists.txt | 50 +++--------------------------------------- 1 file changed, 3 insertions(+), 47 deletions(-) diff --git a/ajantv2/CMakeLists.txt b/ajantv2/CMakeLists.txt index 8037dd4b..aa6e6577 100644 --- a/ajantv2/CMakeLists.txt +++ b/ajantv2/CMakeLists.txt @@ -55,49 +55,13 @@ else() endif() message(STATUS "NTV2 SDK will load signed 3rd-party plugins") - set(MBEDTLS_INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/mbedtls-install) - set(MBEDTLS_INCLUDE_DIR ${MBEDTLS_INSTALL_DIR}/include) - set(MBEDTLS_LIBRARY_DIR ${MBEDTLS_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}) - - if(CMAKE_SYSTEM_NAME STREQUAL "Windows") - set(MBEDTLS_LIBRARY ${MBEDTLS_LIBRARY_DIR}/mbedtls.lib) - set(MBEDX509_LIBRARY ${MBEDTLS_LIBRARY_DIR}/mbedx509.lib) - set(MBEDCRYPTO_LIBRARY ${MBEDTLS_LIBRARY_DIR}/mbedcrypto.lib) - set(MBEDTLS_EXTRA_CONFIG_FLAGS - "-DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON" - "-DCMAKE_MSVC_RUNTIME_LIBRARY=${CMAKE_MSVC_RUNTIME_LIBRARY}") - elseif (CMAKE_SYSTEM_NAME MATCHES "^(Linux|Darwin)$") - set(MBEDTLS_LIBRARY ${MBEDTLS_LIBRARY_DIR}/libmbedtls.a) - set(MBEDX509_LIBRARY ${MBEDTLS_LIBRARY_DIR}/libmbedx509.a) - set(MBEDCRYPTO_LIBRARY ${MBEDTLS_LIBRARY_DIR}/libmbedcrypto.a) - set(MBEDTLS_C_FLAGS -fPIC) - endif() - - # BUILD_BYPRODUCTS informing CMake where the .a files are located is required to make Ninja build work - ExternalProject_Add( - mbedtls - GIT_REPOSITORY ${AJANTV2_MBEDTLS_URL} - GIT_TAG fix-win-dll-cmake - CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${MBEDTLS_INSTALL_DIR} - -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} - -DENABLE_TESTING=OFF - -DENABLE_PROGRAMS=OFF - -DCMAKE_C_FLAGS=${MBEDTLS_C_FLAGS} - -DCMAKE_OSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET} - -DUSE_STATIC_MBEDTLS_LIBRARY=ON - -DUSE_SHARED_MBEDTLS_LIBRARY=OFF - ${MBEDTLS_EXTRA_CONFIG_FLAGS} - CMAKE_CACHE_ARGS "-DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}" - BUILD_ALWAYS TRUE - BUILD_BYPRODUCTS ${MBEDTLS_LIBRARY} ${MBEDX509_LIBRARY} ${MBEDCRYPTO_LIBRARY} - ) + find_package(PkgConfig REQUIRED) + pkg_check_modules(MBEDTLS REQUIRED mbedtls mbedcrypto mbedx509) list(APPEND TARGET_INCLUDE_DIRS ${MBEDTLS_INCLUDE_DIR}) list(APPEND MBEDTLS_LINK_LIBS - ${MBEDTLS_LIBRARY} - ${MBEDCRYPTO_LIBRARY} - ${MBEDX509_LIBRARY}) + ${MBEDTLS_LIBRARIES}) endif() @@ -671,10 +635,6 @@ if (NOT TARGET ${PROJECT_NAME}) aja_ntv2_log_build_info() add_library(${PROJECT_NAME} SHARED ${TARGET_SOURCES}) - - if (NOT AJANTV2_DISABLE_PLUGIN_LOAD) - add_dependencies(${PROJECT_NAME} mbedtls) - endif() target_compile_definitions(${PROJECT_NAME} PUBLIC ${TARGET_COMPILE_DEFS_DYNAMIC} @@ -690,10 +650,6 @@ if (NOT TARGET ${PROJECT_NAME}) add_library(${PROJECT_NAME} STATIC ${TARGET_SOURCES}) - if (NOT AJANTV2_DISABLE_PLUGIN_LOAD) - add_dependencies(${PROJECT_NAME} mbedtls) - endif() - target_compile_definitions(${PROJECT_NAME} PUBLIC ${TARGET_COMPILE_DEFS_STATIC} ${AJANTV2_TARGET_COMPILE_DEFS}) -- 2.49.0