From 2274a341d18d83ee3afd18bd16c6620720afe7b6 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 18:41:59 +1100 Subject: [PATCH 01/25] add port --- ports/yoctolib/001-cmake_config.patch | 97 +++++++++++++++++++ ...002-add_missing_win32_bcrypt_linkage.patch | 14 +++ .../yoctolib/003-fix_win32_shared_build.patch | 68 +++++++++++++ .../yoctolib/004-fix_cmake_proj_version.patch | 13 +++ ports/yoctolib/portfile.cmake | 35 +++++++ ports/yoctolib/vcpkg.json | 26 +++++ 6 files changed, 253 insertions(+) create mode 100644 ports/yoctolib/001-cmake_config.patch create mode 100644 ports/yoctolib/002-add_missing_win32_bcrypt_linkage.patch create mode 100644 ports/yoctolib/003-fix_win32_shared_build.patch create mode 100644 ports/yoctolib/004-fix_cmake_proj_version.patch create mode 100644 ports/yoctolib/portfile.cmake create mode 100644 ports/yoctolib/vcpkg.json diff --git a/ports/yoctolib/001-cmake_config.patch b/ports/yoctolib/001-cmake_config.patch new file mode 100644 index 00000000000000..f0925ab75c6b26 --- /dev/null +++ b/ports/yoctolib/001-cmake_config.patch @@ -0,0 +1,97 @@ +diff --git a/Sources/CMakeLists.txt b/Sources/CMakeLists.txt +index 678fff5..2684a6c 100644 +--- a/Sources/CMakeLists.txt ++++ b/Sources/CMakeLists.txt +@@ -181,10 +181,41 @@ add_library (YoctoLib ${YoctoLibCppSources} ${YoctoLibHSources}) + + # add yapi low level api + add_subdirectory(yapi) +-target_link_libraries(YoctoLib PRIVATE yapi) +-target_include_directories (YoctoLib PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) ++target_link_libraries(YoctoLib PUBLIC yapi) ++target_include_directories (YoctoLib ++ PUBLIC ++ $ ++ $ ++) + set_target_properties(YoctoLib PROPERTIES SOVERSION 1) + set_target_properties(YoctoLib PROPERTIES LIBRARY_OUTPUT_NAME yocto) +-install(TARGETS YoctoLib DESTINATION ${CMAKE_INSTALL_LIBDIR}) + install(FILES ${YoctoLibHSources} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + install(FILES yapi/yapi.h yapi/ydef.h yapi/yversion.h yapi/yjson.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/yapi) ++ ++include(CMakePackageConfigHelpers) ++write_basic_package_version_file( ++ "${CMAKE_CURRENT_BINARY_DIR}/YoctoLibConfigVersion.cmake" ++ VERSION ${PROJECT_VERSION} ++ COMPATIBILITY SameMajorVersion ++) ++configure_package_config_file( ++ "${CMAKE_CURRENT_SOURCE_DIR}/cmake/YoctoLibConfig.cmake.in" ++ "${CMAKE_CURRENT_BINARY_DIR}/YoctoLibConfig.cmake" ++ INSTALL_DESTINATION share/YoctoLib ++) ++install(TARGETS YoctoLib yapi ++ EXPORT YoctoLibTargets ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} ++) ++install(EXPORT YoctoLibTargets ++ FILE YoctoLibTargets.cmake ++ NAMESPACE YoctoLib:: ++ DESTINATION share/YoctoLib ++) ++install(FILES ++ "${CMAKE_CURRENT_BINARY_DIR}/YoctoLibConfig.cmake" ++ "${CMAKE_CURRENT_BINARY_DIR}/YoctoLibConfigVersion.cmake" ++ DESTINATION share/YoctoLib ++) +\ No newline at end of file +diff --git a/Sources/cmake/YoctoLibConfig.cmake.in b/Sources/cmake/YoctoLibConfig.cmake.in +new file mode 100644 +index 0000000..f7d558a +--- /dev/null ++++ b/Sources/cmake/YoctoLibConfig.cmake.in +@@ -0,0 +1,13 @@ ++@PACKAGE_INIT@ ++ ++include(CMakeFindDependencyMacro) ++ ++# Find platform-specific dependencies ++if(CMAKE_SYSTEM_NAME STREQUAL Linux) ++ find_dependency(Threads REQUIRED) ++ find_dependency(libusb REQUIRED) ++endif() ++ ++include(${CMAKE_CURRENT_LIST_DIR}/YoctoLibTargets.cmake) ++ ++check_required_components(YoctoLib) +\ No newline at end of file +diff --git a/Sources/yapi/CMakeLists.txt b/Sources/yapi/CMakeLists.txt +index f6b571f..da7102e 100644 +--- a/Sources/yapi/CMakeLists.txt ++++ b/Sources/yapi/CMakeLists.txt +@@ -139,7 +139,10 @@ if(USE_YSSL) + target_include_directories(yapi PRIVATE mbedtls/include) + endif() + +-target_include_directories (yapi PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) ++target_include_directories(yapi PUBLIC ++ $ ++ $ ++) + + # add pthread usb-1.0 library only on linux + if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") +@@ -158,8 +161,4 @@ if (APPLE) + target_link_libraries(yapi LINK_PUBLIC ${IOKIT_FRAMEWORK} ${CORE_FRAMEWORK}) + endif() + +-set_target_properties(yapi PROPERTIES SOVERSION 1) +-install(TARGETS yapi DESTINATION ${CMAKE_INSTALL_LIBDIR}) +-install(FILES yapi.h ydef.h yversion.h yjson.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/yapi) +- +- ++set_target_properties(yapi PROPERTIES SOVERSION 1) +\ No newline at end of file diff --git a/ports/yoctolib/002-add_missing_win32_bcrypt_linkage.patch b/ports/yoctolib/002-add_missing_win32_bcrypt_linkage.patch new file mode 100644 index 00000000000000..a11fde90ed688d --- /dev/null +++ b/ports/yoctolib/002-add_missing_win32_bcrypt_linkage.patch @@ -0,0 +1,14 @@ +diff --git a/Sources/yapi/CMakeLists.txt b/Sources/yapi/CMakeLists.txt +index da7102e..a06e04c 100644 +--- a/Sources/yapi/CMakeLists.txt ++++ b/Sources/yapi/CMakeLists.txt +@@ -161,4 +161,8 @@ if (APPLE) + target_link_libraries(yapi LINK_PUBLIC ${IOKIT_FRAMEWORK} ${CORE_FRAMEWORK}) + endif() + ++if (WIN32) ++ target_link_libraries(yapi PRIVATE Bcrypt.lib) ++endif() ++ + set_target_properties(yapi PROPERTIES SOVERSION 1) +\ No newline at end of file diff --git a/ports/yoctolib/003-fix_win32_shared_build.patch b/ports/yoctolib/003-fix_win32_shared_build.patch new file mode 100644 index 00000000000000..7d39e227e05082 --- /dev/null +++ b/ports/yoctolib/003-fix_win32_shared_build.patch @@ -0,0 +1,68 @@ +diff --git a/Sources/CMakeLists.txt b/Sources/CMakeLists.txt +index 2684a6c..96886bd 100644 +--- a/Sources/CMakeLists.txt ++++ b/Sources/CMakeLists.txt +@@ -181,12 +181,21 @@ add_library (YoctoLib ${YoctoLibCppSources} ${YoctoLibHSources}) + + # add yapi low level api + add_subdirectory(yapi) +-target_link_libraries(YoctoLib PUBLIC yapi) ++if(BUILD_SHARED_LIBS) ++ target_link_libraries(YoctoLib PRIVATE yapi) ++else() ++ target_link_libraries(YoctoLib PUBLIC yapi) ++endif() + target_include_directories (YoctoLib + PUBLIC + $ ++ $ + $ ++ $ + ) ++if(WIN32 AND BUILD_SHARED_LIBS) ++ target_compile_definitions(YoctoLib PRIVATE GENERATE_DLL) ++endif() + set_target_properties(YoctoLib PROPERTIES SOVERSION 1) + set_target_properties(YoctoLib PROPERTIES LIBRARY_OUTPUT_NAME yocto) + install(FILES ${YoctoLibHSources} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) +@@ -203,12 +212,21 @@ configure_package_config_file( + "${CMAKE_CURRENT_BINARY_DIR}/YoctoLibConfig.cmake" + INSTALL_DESTINATION share/YoctoLib + ) +-install(TARGETS YoctoLib yapi +- EXPORT YoctoLibTargets +- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} +- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} +- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} +-) ++if(BUILD_SHARED_LIBS) ++ install(TARGETS YoctoLib ++ EXPORT YoctoLibTargets ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ ) ++else() ++ install(TARGETS YoctoLib yapi ++ EXPORT YoctoLibTargets ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} ++ ) ++endif() + install(EXPORT YoctoLibTargets + FILE YoctoLibTargets.cmake + NAMESPACE YoctoLib:: +diff --git a/Sources/yapi/CMakeLists.txt b/Sources/yapi/CMakeLists.txt +index a06e04c..4ff6314 100644 +--- a/Sources/yapi/CMakeLists.txt ++++ b/Sources/yapi/CMakeLists.txt +@@ -134,7 +134,7 @@ set(YAPI_C_FILES + yssl.c + ) + +-add_library (yapi ${YAPI_C_FILES} ${MBEDTLS_C_FILES}) ++add_library (yapi STATIC ${YAPI_C_FILES} ${MBEDTLS_C_FILES}) + if(USE_YSSL) + target_include_directories(yapi PRIVATE mbedtls/include) + endif() diff --git a/ports/yoctolib/004-fix_cmake_proj_version.patch b/ports/yoctolib/004-fix_cmake_proj_version.patch new file mode 100644 index 00000000000000..bf73c1c5f6abc9 --- /dev/null +++ b/ports/yoctolib/004-fix_cmake_proj_version.patch @@ -0,0 +1,13 @@ +diff --git a/Sources/CMakeLists.txt b/Sources/CMakeLists.txt +index 96886bd..a004a21 100644 +--- a/Sources/CMakeLists.txt ++++ b/Sources/CMakeLists.txt +@@ -2,7 +2,7 @@ + cmake_minimum_required(VERSION 3.8) + + +-project(YoctoLib VERSION 1.0.1 DESCRIPTION "Yoctopuce C++ V2 library") ++project(YoctoLib VERSION 2.1.6320 DESCRIPTION "Yoctopuce C++ V2 library") + if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT AND ${CMAKE_SYSTEM_NAME} STREQUAL "Linux") + SET(CMAKE_INSTALL_PREFIX "/usr") + endif() diff --git a/ports/yoctolib/portfile.cmake b/ports/yoctolib/portfile.cmake new file mode 100644 index 00000000000000..3d44a693b27ed7 --- /dev/null +++ b/ports/yoctolib/portfile.cmake @@ -0,0 +1,35 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO yoctopuce/yoctolib_cpp + REF "v${VERSION}" + SHA512 c57baae00289dc2bbcabe278d9ff5667077bd3b93fadd20fd9de4428050af0bb6a659849b52e5c93b3e51c6d71764839c0d299e775d4133f85fa31990242077e + HEAD_REF master + PATCHES + 001-cmake_config.patch + 002-add_missing_win32_bcrypt_linkage.patch + 003-fix_win32_shared_build.patch + 004-fix_cmake_proj_version.patch +) + +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_SHARED) + +vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS + FEATURES + ssl USE_YSSL +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}/Sources" + OPTIONS + ${FEATURE_OPTIONS} + -DBUILD_SHARED_LIBS=${BUILD_SHARED} + -DCMAKE_INSTALL_INCLUDEDIR=include/yoctolib +) +vcpkg_cmake_install() + +vcpkg_cmake_config_fixup() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/README.md") diff --git a/ports/yoctolib/vcpkg.json b/ports/yoctolib/vcpkg.json new file mode 100644 index 00000000000000..979a0fd21aa6c5 --- /dev/null +++ b/ports/yoctolib/vcpkg.json @@ -0,0 +1,26 @@ +{ + "name": "yoctolib", + "version": "2.1.6320", + "description": "Official Yoctopuce Library for C++", + "homepage": "https://github.com/yoctopuce/yoctolib_cpp", + "license": null, + "dependencies": [ + { + "name": "libusb", + "platform": "linux" + }, + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ], + "features": { + "ssl": { + "description": "Enable SSL/TLS support" + } + } +} From 196bfdfc1de073474bc576a1543adbaf78083575 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 18:44:40 +1100 Subject: [PATCH 02/25] v db --- versions/baseline.json | 4 ++++ versions/y-/yoctolib.json | 9 +++++++++ 2 files changed, 13 insertions(+) create mode 100644 versions/y-/yoctolib.json diff --git a/versions/baseline.json b/versions/baseline.json index 4856d2c9b15003..9c24f3b5554119 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -10860,6 +10860,10 @@ "baseline": "2022-03-06", "port-version": 0 }, + "yoctolib": { + "baseline": "2.1.6320", + "port-version": 0 + }, "yoga": { "baseline": "3.2.1", "port-version": 0 diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json new file mode 100644 index 00000000000000..d33309bcf36ba2 --- /dev/null +++ b/versions/y-/yoctolib.json @@ -0,0 +1,9 @@ +{ + "versions": [ + { + "git-tree": "b111fc5b23b96528aa5d0e474a960263fda218f4", + "version": "2.1.6320", + "port-version": 0 + } + ] +} From 20ce2423adffc5f5f4cd0a6c83236b9d0eaa0aaf Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 19:05:42 +1100 Subject: [PATCH 03/25] add patch --- ports/yoctolib/005-find_linux_depends.patch | 15 +++++++++++++++ ports/yoctolib/portfile.cmake | 1 + 2 files changed, 16 insertions(+) create mode 100644 ports/yoctolib/005-find_linux_depends.patch diff --git a/ports/yoctolib/005-find_linux_depends.patch b/ports/yoctolib/005-find_linux_depends.patch new file mode 100644 index 00000000000000..6c752795790789 --- /dev/null +++ b/ports/yoctolib/005-find_linux_depends.patch @@ -0,0 +1,15 @@ +diff --git a/Sources/yapi/CMakeLists.txt b/Sources/yapi/CMakeLists.txt +index 4ff6314..721379a 100644 +--- a/Sources/yapi/CMakeLists.txt ++++ b/Sources/yapi/CMakeLists.txt +@@ -146,7 +146,9 @@ target_include_directories(yapi PUBLIC + + # add pthread usb-1.0 library only on linux + if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") +-target_link_libraries (yapi LINK_PUBLIC pthread usb-1.0) ++ find_package(Threads REQUIRED) ++ find_package(libusb REQUIRED) ++ target_link_libraries(yapi LINK_PUBLIC pthread usb-1.0) + endif() + + if (APPLE) diff --git a/ports/yoctolib/portfile.cmake b/ports/yoctolib/portfile.cmake index 3d44a693b27ed7..ec2d8b44ecc225 100644 --- a/ports/yoctolib/portfile.cmake +++ b/ports/yoctolib/portfile.cmake @@ -9,6 +9,7 @@ vcpkg_from_github( 002-add_missing_win32_bcrypt_linkage.patch 003-fix_win32_shared_build.patch 004-fix_cmake_proj_version.patch + 005-find_linux_depends.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_SHARED) From a7e5b0f8a6843be87429fb6f14049aff29996768 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 19:06:01 +1100 Subject: [PATCH 04/25] v db --- versions/y-/yoctolib.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json index d33309bcf36ba2..49b7645f7c5be3 100644 --- a/versions/y-/yoctolib.json +++ b/versions/y-/yoctolib.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "b111fc5b23b96528aa5d0e474a960263fda218f4", + "git-tree": "53b733715dbd615a6df189b4e7c78e1e751848b3", "version": "2.1.6320", "port-version": 0 } From 04d2e01cf0c808ffe85395c0af95253e9d6a2dfc Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 19:39:07 +1100 Subject: [PATCH 05/25] adjust patch --- ports/yoctolib/005-find_linux_depends.patch | 8 +++++--- ports/yoctolib/portfile.cmake | 2 ++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/ports/yoctolib/005-find_linux_depends.patch b/ports/yoctolib/005-find_linux_depends.patch index 6c752795790789..6fa454d3aa7fb1 100644 --- a/ports/yoctolib/005-find_linux_depends.patch +++ b/ports/yoctolib/005-find_linux_depends.patch @@ -2,14 +2,16 @@ diff --git a/Sources/yapi/CMakeLists.txt b/Sources/yapi/CMakeLists.txt index 4ff6314..721379a 100644 --- a/Sources/yapi/CMakeLists.txt +++ b/Sources/yapi/CMakeLists.txt -@@ -146,7 +146,9 @@ target_include_directories(yapi PUBLIC +@@ -146,7 +146,11 @@ target_include_directories(yapi PUBLIC # add pthread usb-1.0 library only on linux if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") -target_link_libraries (yapi LINK_PUBLIC pthread usb-1.0) ++ set(THREADS_PREFER_PTHREAD_FLAG TRUE) + find_package(Threads REQUIRED) -+ find_package(libusb REQUIRED) -+ target_link_libraries(yapi LINK_PUBLIC pthread usb-1.0) ++ find_package(PkgConfig REQUIRED) ++ pkg_check_modules(libusb REQUIRED IMPORTED_TARGET libusb-1.0) ++ target_link_libraries(yapi LINK_PUBLIC Threads::Threads PkgConfig::libusb) endif() if (APPLE) diff --git a/ports/yoctolib/portfile.cmake b/ports/yoctolib/portfile.cmake index ec2d8b44ecc225..0f202b59ea70e0 100644 --- a/ports/yoctolib/portfile.cmake +++ b/ports/yoctolib/portfile.cmake @@ -19,12 +19,14 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS ssl USE_YSSL ) +vcpkg_find_acquire_program(PKGCONFIG) vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}/Sources" OPTIONS ${FEATURE_OPTIONS} -DBUILD_SHARED_LIBS=${BUILD_SHARED} -DCMAKE_INSTALL_INCLUDEDIR=include/yoctolib + "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}" ) vcpkg_cmake_install() From f4aff5656134fc8d9bc346d162ee2748ef5f94e2 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 19:39:16 +1100 Subject: [PATCH 06/25] v db --- versions/y-/yoctolib.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json index 49b7645f7c5be3..fdfc1426b2edb9 100644 --- a/versions/y-/yoctolib.json +++ b/versions/y-/yoctolib.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "53b733715dbd615a6df189b4e7c78e1e751848b3", + "git-tree": "c0dcf7e1757311817997315ce1ccceae83dba901", "version": "2.1.6320", "port-version": 0 } From b5d121a8fab4d53723a9d81439c47f65c31d8c30 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 19:57:53 +1100 Subject: [PATCH 07/25] adjust patch to fix include --- ports/yoctolib/005-find_linux_depends.patch | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/ports/yoctolib/005-find_linux_depends.patch b/ports/yoctolib/005-find_linux_depends.patch index 6fa454d3aa7fb1..c0069022b09ccf 100644 --- a/ports/yoctolib/005-find_linux_depends.patch +++ b/ports/yoctolib/005-find_linux_depends.patch @@ -1,5 +1,5 @@ diff --git a/Sources/yapi/CMakeLists.txt b/Sources/yapi/CMakeLists.txt -index 4ff6314..721379a 100644 +index 4ff6314..bfbb80f 100644 --- a/Sources/yapi/CMakeLists.txt +++ b/Sources/yapi/CMakeLists.txt @@ -146,7 +146,11 @@ target_include_directories(yapi PUBLIC @@ -15,3 +15,16 @@ index 4ff6314..721379a 100644 endif() if (APPLE) +diff --git a/Sources/yapi/yproto.h b/Sources/yapi/yproto.h +index 5fbadb3..ab0a801 100644 +--- a/Sources/yapi/yproto.h ++++ b/Sources/yapi/yproto.h +@@ -163,7 +163,7 @@ typedef struct { + /***************************************************************************** + LINUX SPECIFIC HEADER + ****************************************************************************/ +-#include ++#include + #endif + + /***************************************************************************** From 8578b801483cc632dfac649acb77ca38b7ef93c4 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 19:58:03 +1100 Subject: [PATCH 08/25] v db --- versions/y-/yoctolib.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json index fdfc1426b2edb9..ff9668a34dabc8 100644 --- a/versions/y-/yoctolib.json +++ b/versions/y-/yoctolib.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "c0dcf7e1757311817997315ce1ccceae83dba901", + "git-tree": "e2727dbaa468eb7d1f4ba23b7b366a3fdaf0f5ec", "version": "2.1.6320", "port-version": 0 } From ddbcc871f2bbea3fa29c5d43d08fe04be79781e0 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 21:19:40 +1100 Subject: [PATCH 09/25] static only test --- ports/yoctolib/001-cmake_config.patch | 77 ++++++++++++------- ...002-add_missing_win32_bcrypt_linkage.patch | 2 +- .../yoctolib/003-fix_win32_shared_build.patch | 68 ---------------- .../yoctolib/004-fix_cmake_proj_version.patch | 13 ---- ports/yoctolib/005-find_linux_depends.patch | 30 -------- ports/yoctolib/portfile.cmake | 9 +-- ports/yoctolib/vcpkg.json | 1 + 7 files changed, 52 insertions(+), 148 deletions(-) delete mode 100644 ports/yoctolib/003-fix_win32_shared_build.patch delete mode 100644 ports/yoctolib/004-fix_cmake_proj_version.patch delete mode 100644 ports/yoctolib/005-find_linux_depends.patch diff --git a/ports/yoctolib/001-cmake_config.patch b/ports/yoctolib/001-cmake_config.patch index f0925ab75c6b26..87776490be6026 100644 --- a/ports/yoctolib/001-cmake_config.patch +++ b/ports/yoctolib/001-cmake_config.patch @@ -1,5 +1,5 @@ diff --git a/Sources/CMakeLists.txt b/Sources/CMakeLists.txt -index 678fff5..2684a6c 100644 +index 678fff5..f60b212 100644 --- a/Sources/CMakeLists.txt +++ b/Sources/CMakeLists.txt @@ -181,10 +181,41 @@ add_library (YoctoLib ${YoctoLibCppSources} ${YoctoLibHSources}) @@ -22,14 +22,14 @@ index 678fff5..2684a6c 100644 + +include(CMakePackageConfigHelpers) +write_basic_package_version_file( -+ "${CMAKE_CURRENT_BINARY_DIR}/YoctoLibConfigVersion.cmake" -+ VERSION ${PROJECT_VERSION} ++ "${CMAKE_CURRENT_BINARY_DIR}/unofficial-yoctolib-version.cmake" ++ VERSION ${VERSION} + COMPATIBILITY SameMajorVersion +) +configure_package_config_file( -+ "${CMAKE_CURRENT_SOURCE_DIR}/cmake/YoctoLibConfig.cmake.in" -+ "${CMAKE_CURRENT_BINARY_DIR}/YoctoLibConfig.cmake" -+ INSTALL_DESTINATION share/YoctoLib ++ "${CMAKE_CURRENT_SOURCE_DIR}/cmake/unofficial-yoctolib-config.cmake.in" ++ "${CMAKE_CURRENT_BINARY_DIR}/unofficial-yoctolib-config.cmake" ++ INSTALL_DESTINATION share/unofficial-yoctolib +) +install(TARGETS YoctoLib yapi + EXPORT YoctoLibTargets @@ -38,41 +38,41 @@ index 678fff5..2684a6c 100644 + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} +) +install(EXPORT YoctoLibTargets -+ FILE YoctoLibTargets.cmake -+ NAMESPACE YoctoLib:: -+ DESTINATION share/YoctoLib ++ FILE unofficial-yoctolib-targets.cmake ++ NAMESPACE unofficial::yoctolib:: ++ DESTINATION share/unofficial-yoctolib +) +install(FILES -+ "${CMAKE_CURRENT_BINARY_DIR}/YoctoLibConfig.cmake" -+ "${CMAKE_CURRENT_BINARY_DIR}/YoctoLibConfigVersion.cmake" -+ DESTINATION share/YoctoLib ++ "${CMAKE_CURRENT_BINARY_DIR}/unofficial-yoctolib-config.cmake" ++ "${CMAKE_CURRENT_BINARY_DIR}/unofficial-yoctolib-version.cmake" ++ DESTINATION share/unofficial-yoctolib +) -\ No newline at end of file -diff --git a/Sources/cmake/YoctoLibConfig.cmake.in b/Sources/cmake/YoctoLibConfig.cmake.in +diff --git a/Sources/cmake/unofficial-yoctolib-config.cmake.in b/Sources/cmake/unofficial-yoctolib-config.cmake.in new file mode 100644 -index 0000000..f7d558a +index 0000000..6f442b2 --- /dev/null -+++ b/Sources/cmake/YoctoLibConfig.cmake.in -@@ -0,0 +1,13 @@ ++++ b/Sources/cmake/unofficial-yoctolib-config.cmake.in +@@ -0,0 +1,14 @@ +@PACKAGE_INIT@ + +include(CMakeFindDependencyMacro) + -+# Find platform-specific dependencies -+if(CMAKE_SYSTEM_NAME STREQUAL Linux) ++if(CMAKE_SYSTEM_NAME STREQUAL "Linux") ++ set(THREADS_PREFER_PTHREAD_FLAG TRUE) + find_dependency(Threads REQUIRED) -+ find_dependency(libusb REQUIRED) ++ find_dependency(PkgConfig REQUIRED) ++ pkg_check_modules(libusb REQUIRED IMPORTED_TARGET libusb-1.0) +endif() + -+include(${CMAKE_CURRENT_LIST_DIR}/YoctoLibTargets.cmake) ++include(${CMAKE_CURRENT_LIST_DIR}/unofficial-yoctolib-targets.cmake) + -+check_required_components(YoctoLib) ++check_required_components(unofficial-yoctolib) \ No newline at end of file diff --git a/Sources/yapi/CMakeLists.txt b/Sources/yapi/CMakeLists.txt -index f6b571f..da7102e 100644 +index f6b571f..ca02890 100644 --- a/Sources/yapi/CMakeLists.txt +++ b/Sources/yapi/CMakeLists.txt -@@ -139,7 +139,10 @@ if(USE_YSSL) +@@ -139,11 +139,18 @@ if(USE_YSSL) target_include_directories(yapi PRIVATE mbedtls/include) endif() @@ -84,14 +84,33 @@ index f6b571f..da7102e 100644 # add pthread usb-1.0 library only on linux if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") -@@ -158,8 +161,4 @@ if (APPLE) - target_link_libraries(yapi LINK_PUBLIC ${IOKIT_FRAMEWORK} ${CORE_FRAMEWORK}) +-target_link_libraries (yapi LINK_PUBLIC pthread usb-1.0) ++ set(THREADS_PREFER_PTHREAD_FLAG TRUE) ++ find_package(Threads REQUIRED) ++ find_package(PkgConfig REQUIRED) ++ pkg_check_modules(libusb REQUIRED IMPORTED_TARGET libusb-1.0) ++ target_link_libraries(yapi LINK_PUBLIC Threads::Threads PkgConfig::libusb) + endif() + + if (APPLE) +@@ -159,7 +166,3 @@ if (APPLE) endif() --set_target_properties(yapi PROPERTIES SOVERSION 1) + set_target_properties(yapi PROPERTIES SOVERSION 1) -install(TARGETS yapi DESTINATION ${CMAKE_INSTALL_LIBDIR}) -install(FILES yapi.h ydef.h yversion.h yjson.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/yapi) - - -+set_target_properties(yapi PROPERTIES SOVERSION 1) -\ No newline at end of file +diff --git a/Sources/yapi/yproto.h b/Sources/yapi/yproto.h +index 5fbadb3..ab0a801 100644 +--- a/Sources/yapi/yproto.h ++++ b/Sources/yapi/yproto.h +@@ -163,7 +163,7 @@ typedef struct { + /***************************************************************************** + LINUX SPECIFIC HEADER + ****************************************************************************/ +-#include ++#include + #endif + + /***************************************************************************** diff --git a/ports/yoctolib/002-add_missing_win32_bcrypt_linkage.patch b/ports/yoctolib/002-add_missing_win32_bcrypt_linkage.patch index a11fde90ed688d..f6de8631e12da7 100644 --- a/ports/yoctolib/002-add_missing_win32_bcrypt_linkage.patch +++ b/ports/yoctolib/002-add_missing_win32_bcrypt_linkage.patch @@ -7,7 +7,7 @@ index da7102e..a06e04c 100644 endif() +if (WIN32) -+ target_link_libraries(yapi PRIVATE Bcrypt.lib) ++ target_link_libraries(yapi PRIVATE bcrypt) +endif() + set_target_properties(yapi PROPERTIES SOVERSION 1) diff --git a/ports/yoctolib/003-fix_win32_shared_build.patch b/ports/yoctolib/003-fix_win32_shared_build.patch deleted file mode 100644 index 7d39e227e05082..00000000000000 --- a/ports/yoctolib/003-fix_win32_shared_build.patch +++ /dev/null @@ -1,68 +0,0 @@ -diff --git a/Sources/CMakeLists.txt b/Sources/CMakeLists.txt -index 2684a6c..96886bd 100644 ---- a/Sources/CMakeLists.txt -+++ b/Sources/CMakeLists.txt -@@ -181,12 +181,21 @@ add_library (YoctoLib ${YoctoLibCppSources} ${YoctoLibHSources}) - - # add yapi low level api - add_subdirectory(yapi) --target_link_libraries(YoctoLib PUBLIC yapi) -+if(BUILD_SHARED_LIBS) -+ target_link_libraries(YoctoLib PRIVATE yapi) -+else() -+ target_link_libraries(YoctoLib PUBLIC yapi) -+endif() - target_include_directories (YoctoLib - PUBLIC - $ -+ $ - $ -+ $ - ) -+if(WIN32 AND BUILD_SHARED_LIBS) -+ target_compile_definitions(YoctoLib PRIVATE GENERATE_DLL) -+endif() - set_target_properties(YoctoLib PROPERTIES SOVERSION 1) - set_target_properties(YoctoLib PROPERTIES LIBRARY_OUTPUT_NAME yocto) - install(FILES ${YoctoLibHSources} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) -@@ -203,12 +212,21 @@ configure_package_config_file( - "${CMAKE_CURRENT_BINARY_DIR}/YoctoLibConfig.cmake" - INSTALL_DESTINATION share/YoctoLib - ) --install(TARGETS YoctoLib yapi -- EXPORT YoctoLibTargets -- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} -- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} --) -+if(BUILD_SHARED_LIBS) -+ install(TARGETS YoctoLib -+ EXPORT YoctoLibTargets -+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} -+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ) -+else() -+ install(TARGETS YoctoLib yapi -+ EXPORT YoctoLibTargets -+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} -+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} -+ ) -+endif() - install(EXPORT YoctoLibTargets - FILE YoctoLibTargets.cmake - NAMESPACE YoctoLib:: -diff --git a/Sources/yapi/CMakeLists.txt b/Sources/yapi/CMakeLists.txt -index a06e04c..4ff6314 100644 ---- a/Sources/yapi/CMakeLists.txt -+++ b/Sources/yapi/CMakeLists.txt -@@ -134,7 +134,7 @@ set(YAPI_C_FILES - yssl.c - ) - --add_library (yapi ${YAPI_C_FILES} ${MBEDTLS_C_FILES}) -+add_library (yapi STATIC ${YAPI_C_FILES} ${MBEDTLS_C_FILES}) - if(USE_YSSL) - target_include_directories(yapi PRIVATE mbedtls/include) - endif() diff --git a/ports/yoctolib/004-fix_cmake_proj_version.patch b/ports/yoctolib/004-fix_cmake_proj_version.patch deleted file mode 100644 index bf73c1c5f6abc9..00000000000000 --- a/ports/yoctolib/004-fix_cmake_proj_version.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/Sources/CMakeLists.txt b/Sources/CMakeLists.txt -index 96886bd..a004a21 100644 ---- a/Sources/CMakeLists.txt -+++ b/Sources/CMakeLists.txt -@@ -2,7 +2,7 @@ - cmake_minimum_required(VERSION 3.8) - - --project(YoctoLib VERSION 1.0.1 DESCRIPTION "Yoctopuce C++ V2 library") -+project(YoctoLib VERSION 2.1.6320 DESCRIPTION "Yoctopuce C++ V2 library") - if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT AND ${CMAKE_SYSTEM_NAME} STREQUAL "Linux") - SET(CMAKE_INSTALL_PREFIX "/usr") - endif() diff --git a/ports/yoctolib/005-find_linux_depends.patch b/ports/yoctolib/005-find_linux_depends.patch deleted file mode 100644 index c0069022b09ccf..00000000000000 --- a/ports/yoctolib/005-find_linux_depends.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff --git a/Sources/yapi/CMakeLists.txt b/Sources/yapi/CMakeLists.txt -index 4ff6314..bfbb80f 100644 ---- a/Sources/yapi/CMakeLists.txt -+++ b/Sources/yapi/CMakeLists.txt -@@ -146,7 +146,11 @@ target_include_directories(yapi PUBLIC - - # add pthread usb-1.0 library only on linux - if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") --target_link_libraries (yapi LINK_PUBLIC pthread usb-1.0) -+ set(THREADS_PREFER_PTHREAD_FLAG TRUE) -+ find_package(Threads REQUIRED) -+ find_package(PkgConfig REQUIRED) -+ pkg_check_modules(libusb REQUIRED IMPORTED_TARGET libusb-1.0) -+ target_link_libraries(yapi LINK_PUBLIC Threads::Threads PkgConfig::libusb) - endif() - - if (APPLE) -diff --git a/Sources/yapi/yproto.h b/Sources/yapi/yproto.h -index 5fbadb3..ab0a801 100644 ---- a/Sources/yapi/yproto.h -+++ b/Sources/yapi/yproto.h -@@ -163,7 +163,7 @@ typedef struct { - /***************************************************************************** - LINUX SPECIFIC HEADER - ****************************************************************************/ --#include -+#include - #endif - - /***************************************************************************** diff --git a/ports/yoctolib/portfile.cmake b/ports/yoctolib/portfile.cmake index 0f202b59ea70e0..0272cec0a62d13 100644 --- a/ports/yoctolib/portfile.cmake +++ b/ports/yoctolib/portfile.cmake @@ -7,13 +7,8 @@ vcpkg_from_github( PATCHES 001-cmake_config.patch 002-add_missing_win32_bcrypt_linkage.patch - 003-fix_win32_shared_build.patch - 004-fix_cmake_proj_version.patch - 005-find_linux_depends.patch ) -string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_SHARED) - vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES ssl USE_YSSL @@ -24,13 +19,13 @@ vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}/Sources" OPTIONS ${FEATURE_OPTIONS} - -DBUILD_SHARED_LIBS=${BUILD_SHARED} + -DVERSION=${VERSION} -DCMAKE_INSTALL_INCLUDEDIR=include/yoctolib "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}" ) vcpkg_cmake_install() -vcpkg_cmake_config_fixup() +vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-yoctolib) file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") diff --git a/ports/yoctolib/vcpkg.json b/ports/yoctolib/vcpkg.json index 979a0fd21aa6c5..997c469a0e5c59 100644 --- a/ports/yoctolib/vcpkg.json +++ b/ports/yoctolib/vcpkg.json @@ -4,6 +4,7 @@ "description": "Official Yoctopuce Library for C++", "homepage": "https://github.com/yoctopuce/yoctolib_cpp", "license": null, + "supports": "static", "dependencies": [ { "name": "libusb", From 22ee1274d9e2c6132189f0dacd183887cddfc2a8 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 21:19:55 +1100 Subject: [PATCH 10/25] v db --- versions/y-/yoctolib.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json index ff9668a34dabc8..d5b48ac658b5a0 100644 --- a/versions/y-/yoctolib.json +++ b/versions/y-/yoctolib.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "e2727dbaa468eb7d1f4ba23b7b366a3fdaf0f5ec", + "git-tree": "97c3a43708a6e9971625df4388960f61526ed6d9", "version": "2.1.6320", "port-version": 0 } From b50b39cde9dd13742f9700abaa79d972dbcd10c0 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 21:34:15 +1100 Subject: [PATCH 11/25] adjust supports --- ports/yoctolib/vcpkg.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/yoctolib/vcpkg.json b/ports/yoctolib/vcpkg.json index 997c469a0e5c59..39bb5a88ee30f6 100644 --- a/ports/yoctolib/vcpkg.json +++ b/ports/yoctolib/vcpkg.json @@ -4,11 +4,11 @@ "description": "Official Yoctopuce Library for C++", "homepage": "https://github.com/yoctopuce/yoctolib_cpp", "license": null, - "supports": "static", + "supports": "!uwp & static", "dependencies": [ { "name": "libusb", - "platform": "linux" + "platform": "!(windows | osx)" }, { "name": "vcpkg-cmake", From 4a5de26fd58ee09c4c9776ada6498a38b96dfd95 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 21:35:52 +1100 Subject: [PATCH 12/25] v db --- versions/y-/yoctolib.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json index d5b48ac658b5a0..537bfed8cd7cda 100644 --- a/versions/y-/yoctolib.json +++ b/versions/y-/yoctolib.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "97c3a43708a6e9971625df4388960f61526ed6d9", + "git-tree": "72ceefc4bd9b7714f471970be413539b49b4f3f0", "version": "2.1.6320", "port-version": 0 } From 496d9b7099f9b23ef399fe56510238ab9cd6e97e Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 21:45:50 +1100 Subject: [PATCH 13/25] don't support android --- ports/yoctolib/vcpkg.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/yoctolib/vcpkg.json b/ports/yoctolib/vcpkg.json index 39bb5a88ee30f6..097fa8839dc8da 100644 --- a/ports/yoctolib/vcpkg.json +++ b/ports/yoctolib/vcpkg.json @@ -4,7 +4,7 @@ "description": "Official Yoctopuce Library for C++", "homepage": "https://github.com/yoctopuce/yoctolib_cpp", "license": null, - "supports": "!uwp & static", + "supports": "!(uwp | android) & static", "dependencies": [ { "name": "libusb", From 80e1417678a2806d19a2441a83e8fcc70d1312cd Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 21:45:58 +1100 Subject: [PATCH 14/25] v db --- versions/y-/yoctolib.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json index 537bfed8cd7cda..f25e94802df798 100644 --- a/versions/y-/yoctolib.json +++ b/versions/y-/yoctolib.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "72ceefc4bd9b7714f471970be413539b49b4f3f0", + "git-tree": "fe5cd0d054ed6686ef7a5343d00dc5deabb91137", "version": "2.1.6320", "port-version": 0 } From 7ea59118d4d70edf2eb3ab95212b2b09b3f929af Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 22:53:40 +1100 Subject: [PATCH 15/25] try shared build --- .../yoctolib/003-fix_win32_shared_build.patch | 39 +++++++++++++++++++ ports/yoctolib/portfile.cmake | 1 + ports/yoctolib/vcpkg.json | 2 +- 3 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 ports/yoctolib/003-fix_win32_shared_build.patch diff --git a/ports/yoctolib/003-fix_win32_shared_build.patch b/ports/yoctolib/003-fix_win32_shared_build.patch new file mode 100644 index 00000000000000..ee416833b68662 --- /dev/null +++ b/ports/yoctolib/003-fix_win32_shared_build.patch @@ -0,0 +1,39 @@ +diff --git a/Sources/CMakeLists.txt b/Sources/CMakeLists.txt +index 33af30d..2c0d1c5 100644 +--- a/Sources/CMakeLists.txt ++++ b/Sources/CMakeLists.txt +@@ -178,14 +178,19 @@ set(YoctoLibCppSources + ) + + add_library (YoctoLib ${YoctoLibCppSources} ${YoctoLibHSources}) ++if(WIN32 AND BUILD_SHARED_LIBS) ++ target_compile_definitions(YoctoLib PRIVATE GENERATE_DLL) ++endif() + + # add yapi low level api + add_subdirectory(yapi) +-target_link_libraries(YoctoLib PUBLIC yapi) +-target_include_directories (YoctoLib ++target_link_libraries(YoctoLib PRIVATE yapi) ++target_include_directories(YoctoLib + PUBLIC + $ ++ $ + $ ++ $ + ) + set_target_properties(YoctoLib PROPERTIES SOVERSION 1) + set_target_properties(YoctoLib PROPERTIES LIBRARY_OUTPUT_NAME yocto) +diff --git a/Sources/yapi/CMakeLists.txt b/Sources/yapi/CMakeLists.txt +index f825a5c..28a7669 100644 +--- a/Sources/yapi/CMakeLists.txt ++++ b/Sources/yapi/CMakeLists.txt +@@ -134,7 +134,7 @@ set(YAPI_C_FILES + yssl.c + ) + +-add_library (yapi ${YAPI_C_FILES} ${MBEDTLS_C_FILES}) ++add_library (yapi STATIC ${YAPI_C_FILES} ${MBEDTLS_C_FILES}) + if(USE_YSSL) + target_include_directories(yapi PRIVATE mbedtls/include) + endif() diff --git a/ports/yoctolib/portfile.cmake b/ports/yoctolib/portfile.cmake index 0272cec0a62d13..1a7244fedfec1a 100644 --- a/ports/yoctolib/portfile.cmake +++ b/ports/yoctolib/portfile.cmake @@ -7,6 +7,7 @@ vcpkg_from_github( PATCHES 001-cmake_config.patch 002-add_missing_win32_bcrypt_linkage.patch + 003-fix_win32_shared_build.patch ) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS diff --git a/ports/yoctolib/vcpkg.json b/ports/yoctolib/vcpkg.json index 097fa8839dc8da..ae5d9578832c0b 100644 --- a/ports/yoctolib/vcpkg.json +++ b/ports/yoctolib/vcpkg.json @@ -4,7 +4,7 @@ "description": "Official Yoctopuce Library for C++", "homepage": "https://github.com/yoctopuce/yoctolib_cpp", "license": null, - "supports": "!(uwp | android) & static", + "supports": "!(uwp | android)", "dependencies": [ { "name": "libusb", From b18654896cf7ee50d47188b979eba207f2524403 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Sun, 14 Dec 2025 22:54:02 +1100 Subject: [PATCH 16/25] v db --- versions/y-/yoctolib.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json index f25e94802df798..d25b8351d0b055 100644 --- a/versions/y-/yoctolib.json +++ b/versions/y-/yoctolib.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "fe5cd0d054ed6686ef7a5343d00dc5deabb91137", + "git-tree": "b44d728527e7040e9fcbba8b5aabde54906371f4", "version": "2.1.6320", "port-version": 0 } From 3adfcfaddc50d4a20c9156dd7d3f758d9fce81c0 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Mon, 15 Dec 2025 01:17:24 +1100 Subject: [PATCH 17/25] better pkgconfig handling --- ports/yoctolib/portfile.cmake | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ports/yoctolib/portfile.cmake b/ports/yoctolib/portfile.cmake index 1a7244fedfec1a..670ed1c4e541a6 100644 --- a/ports/yoctolib/portfile.cmake +++ b/ports/yoctolib/portfile.cmake @@ -15,14 +15,17 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS ssl USE_YSSL ) -vcpkg_find_acquire_program(PKGCONFIG) +if(VCPKG_TARGET_IS_LINUX) + vcpkg_find_acquire_program(PKGCONFIG) + list(APPEND FEATURE_OPTIONS "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}") +endif() + vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}/Sources" OPTIONS ${FEATURE_OPTIONS} -DVERSION=${VERSION} -DCMAKE_INSTALL_INCLUDEDIR=include/yoctolib - "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}" ) vcpkg_cmake_install() From ca09622f392534e7e2ef99a33c117dcef55913b9 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Mon, 15 Dec 2025 01:17:44 +1100 Subject: [PATCH 18/25] unix line endings --- ports/yoctolib/portfile.cmake | 74 +++++++++++++++++------------------ 1 file changed, 37 insertions(+), 37 deletions(-) diff --git a/ports/yoctolib/portfile.cmake b/ports/yoctolib/portfile.cmake index 670ed1c4e541a6..acc23357221a00 100644 --- a/ports/yoctolib/portfile.cmake +++ b/ports/yoctolib/portfile.cmake @@ -1,37 +1,37 @@ -vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO yoctopuce/yoctolib_cpp - REF "v${VERSION}" - SHA512 c57baae00289dc2bbcabe278d9ff5667077bd3b93fadd20fd9de4428050af0bb6a659849b52e5c93b3e51c6d71764839c0d299e775d4133f85fa31990242077e - HEAD_REF master - PATCHES - 001-cmake_config.patch - 002-add_missing_win32_bcrypt_linkage.patch - 003-fix_win32_shared_build.patch -) - -vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS - FEATURES - ssl USE_YSSL -) - -if(VCPKG_TARGET_IS_LINUX) - vcpkg_find_acquire_program(PKGCONFIG) - list(APPEND FEATURE_OPTIONS "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}") -endif() - -vcpkg_cmake_configure( - SOURCE_PATH "${SOURCE_PATH}/Sources" - OPTIONS - ${FEATURE_OPTIONS} - -DVERSION=${VERSION} - -DCMAKE_INSTALL_INCLUDEDIR=include/yoctolib -) -vcpkg_cmake_install() - -vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-yoctolib) - -file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") - -vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/README.md") +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO yoctopuce/yoctolib_cpp + REF "v${VERSION}" + SHA512 c57baae00289dc2bbcabe278d9ff5667077bd3b93fadd20fd9de4428050af0bb6a659849b52e5c93b3e51c6d71764839c0d299e775d4133f85fa31990242077e + HEAD_REF master + PATCHES + 001-cmake_config.patch + 002-add_missing_win32_bcrypt_linkage.patch + 003-fix_win32_shared_build.patch +) + +vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS + FEATURES + ssl USE_YSSL +) + +if(VCPKG_TARGET_IS_LINUX) + vcpkg_find_acquire_program(PKGCONFIG) + list(APPEND FEATURE_OPTIONS "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}") +endif() + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}/Sources" + OPTIONS + ${FEATURE_OPTIONS} + -DVERSION=${VERSION} + -DCMAKE_INSTALL_INCLUDEDIR=include/yoctolib +) +vcpkg_cmake_install() + +vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-yoctolib) + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/README.md") From 211c1106008101329d5387d0bc996038ba0034b7 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Mon, 15 Dec 2025 01:17:56 +1100 Subject: [PATCH 19/25] v db --- versions/y-/yoctolib.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json index d25b8351d0b055..f229501c6ee3be 100644 --- a/versions/y-/yoctolib.json +++ b/versions/y-/yoctolib.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "b44d728527e7040e9fcbba8b5aabde54906371f4", + "git-tree": "bbd0bb8f82ae39f4b1f32d0a15b193941a1228cb", "version": "2.1.6320", "port-version": 0 } From 7f2c844949d495004e91668ae0331488adaae2ba Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Mon, 15 Dec 2025 16:36:25 +1100 Subject: [PATCH 20/25] remove ssl feature --- ports/yoctolib/portfile.cmake | 10 +++------- ports/yoctolib/vcpkg.json | 7 +------ 2 files changed, 4 insertions(+), 13 deletions(-) diff --git a/ports/yoctolib/portfile.cmake b/ports/yoctolib/portfile.cmake index acc23357221a00..68cff70e51d3a8 100644 --- a/ports/yoctolib/portfile.cmake +++ b/ports/yoctolib/portfile.cmake @@ -10,20 +10,16 @@ vcpkg_from_github( 003-fix_win32_shared_build.patch ) -vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS - FEATURES - ssl USE_YSSL -) - +set(OPTIONS "-DUSE_YSSL=OFF") if(VCPKG_TARGET_IS_LINUX) vcpkg_find_acquire_program(PKGCONFIG) - list(APPEND FEATURE_OPTIONS "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}") + list(APPEND OPTIONS "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}") endif() vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}/Sources" OPTIONS - ${FEATURE_OPTIONS} + ${OPTIONS} -DVERSION=${VERSION} -DCMAKE_INSTALL_INCLUDEDIR=include/yoctolib ) diff --git a/ports/yoctolib/vcpkg.json b/ports/yoctolib/vcpkg.json index ae5d9578832c0b..763f9c45f9fa30 100644 --- a/ports/yoctolib/vcpkg.json +++ b/ports/yoctolib/vcpkg.json @@ -18,10 +18,5 @@ "name": "vcpkg-cmake-config", "host": true } - ], - "features": { - "ssl": { - "description": "Enable SSL/TLS support" - } - } + ] } From d4ef34bc1a8f7df28aa7190ea92fee31f47f89d4 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Mon, 15 Dec 2025 16:36:41 +1100 Subject: [PATCH 21/25] v db --- versions/y-/yoctolib.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json index f229501c6ee3be..006d761b9d9ce6 100644 --- a/versions/y-/yoctolib.json +++ b/versions/y-/yoctolib.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "bbd0bb8f82ae39f4b1f32d0a15b193941a1228cb", + "git-tree": "49e3ff2a3335cdc9d5cef29292b342a2bbfb287f", "version": "2.1.6320", "port-version": 0 } From 58d522996463f1e0329f69fd51253c1c3dd2fe52 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Mon, 15 Dec 2025 16:41:17 +1100 Subject: [PATCH 22/25] copy pdbs --- ports/yoctolib/portfile.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/ports/yoctolib/portfile.cmake b/ports/yoctolib/portfile.cmake index 68cff70e51d3a8..b8533e92aeb3a2 100644 --- a/ports/yoctolib/portfile.cmake +++ b/ports/yoctolib/portfile.cmake @@ -26,6 +26,7 @@ vcpkg_cmake_configure( vcpkg_cmake_install() vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-yoctolib) +vcpkg_copy_pdbs() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") From ec076e89b84c6a696d31649cfc6ef94be67af7ee Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Mon, 15 Dec 2025 16:41:27 +1100 Subject: [PATCH 23/25] v db --- versions/y-/yoctolib.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json index 006d761b9d9ce6..7fc3ec3ac16181 100644 --- a/versions/y-/yoctolib.json +++ b/versions/y-/yoctolib.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "49e3ff2a3335cdc9d5cef29292b342a2bbfb287f", + "git-tree": "24f87421375e49d3e4ec758ca771a7a6aec75f26", "version": "2.1.6320", "port-version": 0 } From e915087139e0b97e82a562ed4ad8e8480c31c6cb Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Mon, 15 Dec 2025 17:41:21 +1100 Subject: [PATCH 24/25] apply suggestions --- ports/yoctolib/001-cmake_config.patch | 4 ++-- ports/yoctolib/portfile.cmake | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/ports/yoctolib/001-cmake_config.patch b/ports/yoctolib/001-cmake_config.patch index 87776490be6026..478cb82f2c939b 100644 --- a/ports/yoctolib/001-cmake_config.patch +++ b/ports/yoctolib/001-cmake_config.patch @@ -59,8 +59,8 @@ index 0000000..6f442b2 + +if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + set(THREADS_PREFER_PTHREAD_FLAG TRUE) -+ find_dependency(Threads REQUIRED) -+ find_dependency(PkgConfig REQUIRED) ++ find_dependency(Threads) ++ find_dependency(PkgConfig) + pkg_check_modules(libusb REQUIRED IMPORTED_TARGET libusb-1.0) +endif() + diff --git a/ports/yoctolib/portfile.cmake b/ports/yoctolib/portfile.cmake index b8533e92aeb3a2..87fbb4f4ad8229 100644 --- a/ports/yoctolib/portfile.cmake +++ b/ports/yoctolib/portfile.cmake @@ -10,18 +10,17 @@ vcpkg_from_github( 003-fix_win32_shared_build.patch ) -set(OPTIONS "-DUSE_YSSL=OFF") if(VCPKG_TARGET_IS_LINUX) vcpkg_find_acquire_program(PKGCONFIG) - list(APPEND OPTIONS "-DPKG_CONFIG_EXECUTABLE=${PKGCONFIG}") + set(ENV{PKG_CONFIG} "${PKGCONFIG}") endif() vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}/Sources" OPTIONS - ${OPTIONS} -DVERSION=${VERSION} -DCMAKE_INSTALL_INCLUDEDIR=include/yoctolib + -DUSE_YSSL=OFF ) vcpkg_cmake_install() From 1b7ad6ebd940569bddd23f3dfaf7b4714d2303f2 Mon Sep 17 00:00:00 2001 From: Nick D'Ademo Date: Mon, 15 Dec 2025 17:41:40 +1100 Subject: [PATCH 25/25] v db --- versions/y-/yoctolib.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/y-/yoctolib.json b/versions/y-/yoctolib.json index 7fc3ec3ac16181..95a5477c3c4db6 100644 --- a/versions/y-/yoctolib.json +++ b/versions/y-/yoctolib.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "24f87421375e49d3e4ec758ca771a7a6aec75f26", + "git-tree": "a068fe63550863e24dc9cfd6e55ebd8e8fd7c742", "version": "2.1.6320", "port-version": 0 }