diff --git a/ports/tacopie/CONTROL b/ports/tacopie/CONTROL index c0464c02b..ae46741d5 100644 --- a/ports/tacopie/CONTROL +++ b/ports/tacopie/CONTROL @@ -1,3 +1,3 @@ Source: tacopie -Version: 2.4.1-2 +Version: 3.2.0 Description: Tacopie is a TCP Client & Server C++11 library diff --git a/ports/tacopie/fix-cmakelists.patch b/ports/tacopie/fix-cmakelists.patch new file mode 100644 index 000000000..48ba317bd --- /dev/null +++ b/ports/tacopie/fix-cmakelists.patch @@ -0,0 +1,27 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -26,6 +26,7 @@ + cmake_minimum_required(VERSION 2.8.7) + set(CMAKE_MACOSX_RPATH 1) + include(${CMAKE_ROOT}/Modules/ExternalProject.cmake) ++include(${CMAKE_ROOT}/Modules/GenerateExportHeader.cmake) + + + ### +@@ -153,6 +154,8 @@ IF (SELECT_TIMEOUT) + set_target_properties(${PROJECT} PROPERTIES COMPILE_DEFINITIONS "__TACOPIE_TIMEOUT=${SELECT_TIMEOUT}") + ENDIF(SELECT_TIMEOUT) + ++generate_export_header(${PROJECT} EXPORT_FILE_NAME ${CMAKE_BINARY_DIR}/tacopie/utils/${PROJECT}_export.hpp) ++target_include_directories(${PROJECT} PUBLIC ${CMAKE_BINARY_DIR}) + + ### + # install +@@ -164,6 +167,7 @@ install(DIRECTORY DESTINATION ${CMAKE_BINARY_DIR}/bin/) + install (DIRECTORY ${CMAKE_BINARY_DIR}/lib/ DESTINATION lib USE_SOURCE_PERMISSIONS) + install (DIRECTORY ${CMAKE_BINARY_DIR}/bin/ DESTINATION bin USE_SOURCE_PERMISSIONS) + install (DIRECTORY ${TACOPIE_INCLUDES}/ DESTINATION include USE_SOURCE_PERMISSIONS) ++install (FILES ${CMAKE_BINARY_DIR}/tacopie/utils/${PROJECT}_export.hpp DESTINATION include/tacopie/utils) + + + ### diff --git a/ports/tacopie/fix-export.patch b/ports/tacopie/fix-export.patch new file mode 100644 index 000000000..d971b8338 --- /dev/null +++ b/ports/tacopie/fix-export.patch @@ -0,0 +1,20 @@ +--- a/includes/tacopie/utils/logger.hpp ++++ b/includes/tacopie/utils/logger.hpp +@@ -26,6 +26,8 @@ + #include + #include + ++#include ++ + namespace tacopie { + + //! +@@ -161,7 +163,7 @@ private: + //! variable containing the current logger + //! by default, not set (no logs) + //! +-extern std::unique_ptr active_logger; ++extern TACOPIE_EXPORT std::unique_ptr active_logger; + + //! + //! debug logging diff --git a/ports/tacopie/portfile.cmake b/ports/tacopie/portfile.cmake index dac3cf858..d1e30e67e 100644 --- a/ports/tacopie/portfile.cmake +++ b/ports/tacopie/portfile.cmake @@ -1,17 +1,20 @@ include(vcpkg_common_functions) -if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - message(STATUS "cpp-redis only supports static library linkage.") -endif() - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Cylix/tacopie - REF 2.4.1 - SHA512 a1579080412114d3899492cd9559bb0eadd6048c1f84ac66ec8ca47bd6fbb35306f0d203d789bd1b7ed0a0a5ab27434dfe6583a1c67873c85bca4b6e2a186d77 + REF 3.2.0 + SHA512 079b294b537aaffe3bcf43a485c3be5b15f633c3f7c70140032d60cb010d35b76e76ef4ddd7596f6bfaf3f7edca7cb086c67552efffbf65846e725d7be54ce72 HEAD_REF master ) +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/fix-cmakelists.patch + ${CMAKE_CURRENT_LIST_DIR}/fix-export.patch +) + if(VCPKG_CRT_LINKAGE STREQUAL dynamic) set(MSVC_RUNTIME_LIBRARY_CONFIG "/MD") else() @@ -27,11 +30,16 @@ vcpkg_configure_cmake( PREFER_NINJA OPTIONS -DMSVC_RUNTIME_LIBRARY_CONFIG=${MSVC_RUNTIME_LIBRARY_CONFIG} + -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=TRUE ) vcpkg_install_cmake() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) +endif() file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/tacopie RENAME copyright)