[lib3mf] update to 2.5.0 (#50158)

Co-authored-by: Kai Pastor <dg0yt@darc.de>
This commit is contained in:
Vijai Kumar S 2026-02-25 23:09:34 +01:00 committed by GitHub
parent 523e6cb62a
commit e1decf72bc
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 71 additions and 124 deletions

View File

@ -0,0 +1,40 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -267,16 +267,8 @@
set(_lib3mf_external_link_visibility PUBLIC)
endif()
- find_package(libzip CONFIG QUIET)
- if (TARGET libzip::zip)
- target_link_libraries(${PROJECT_NAME} ${_lib3mf_external_link_visibility} libzip::zip)
- else()
- find_package(PkgConfig REQUIRED)
- pkg_check_modules(LIBZIP REQUIRED libzip)
- target_include_directories(${PROJECT_NAME} PRIVATE ${LIBZIP_INCLUDE_DIRS})
- target_link_directories(${PROJECT_NAME} PRIVATE ${LIBZIP_LIBRARY_DIRS})
- target_link_libraries(${PROJECT_NAME} ${_lib3mf_external_link_visibility} ${LIBZIP_LIBRARIES})
- endif()
+ find_package(libzip CONFIG REQUIRED)
+ target_link_libraries(${PROJECT_NAME} ${_lib3mf_external_link_visibility} libzip::zip)
unset(_lib3mf_external_link_visibility)
endif()
@@ -296,16 +288,8 @@
set(_lib3mf_external_link_visibility PUBLIC)
endif()
- find_package(ZLIB QUIET)
- if (TARGET ZLIB::ZLIB)
- target_link_libraries(${PROJECT_NAME} ${_lib3mf_external_link_visibility} ZLIB::ZLIB)
- else()
- find_package(PkgConfig REQUIRED)
- pkg_check_modules(ZLIB REQUIRED zlib)
- target_include_directories(${PROJECT_NAME} PRIVATE ${ZLIB_INCLUDE_DIRS})
- target_link_directories(${PROJECT_NAME} PRIVATE ${ZLIB_LIBRARY_DIRS})
- target_link_libraries(${PROJECT_NAME} ${_lib3mf_external_link_visibility} ${ZLIB_LIBRARIES})
- endif()
+ find_package(ZLIB REQUIRED)
+ target_link_libraries(${PROJECT_NAME} ${_lib3mf_external_link_visibility} ZLIB::ZLIB)
unset(_lib3mf_external_link_visibility)
endif()

View File

@ -0,0 +1,14 @@
diff --git a/cmake/lib3mfConfig.cmake.in b/cmake/lib3mfConfig.cmake.in
index 589422b3..2dbcbf95 100644
--- a/cmake/lib3mfConfig.cmake.in
+++ b/cmake/lib3mfConfig.cmake.in
@@ -23,8 +23,8 @@ if(NOT TARGET lib3mf::lib3mf)
return()
endif()
get_filename_component(_lib3mf_package_dir "${CMAKE_CURRENT_LIST_DIR}" ABSOLUTE)
-get_filename_component(LIB3MF_ROOT_DIR "${_lib3mf_package_dir}/../../.." ABSOLUTE)
+get_filename_component(LIB3MF_ROOT_DIR "${_lib3mf_package_dir}/../.." ABSOLUTE)
set(LIB3MF_CDYNAMIC_ADDITIONAL_SOURCE "${LIB3MF_ROOT_DIR}/include/Bindings/CDynamic/lib3mf_dynamic.cc")
set(_lib3mf_library_location_definition "LIB3MF_LIBRARY_LOCATION=\"$<TARGET_FILE:lib3mf::lib3mf>\"")

View File

@ -1,116 +0,0 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c6a31790..fff0e5c7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 3.0)
+cmake_minimum_required (VERSION 3.5)
cmake_policy(SET CMP0054 NEW)
cmake_policy(SET CMP0048 NEW)
@@ -145,13 +145,13 @@ endif()
SOURCE_GROUP("Source Files\\Autogenerated" FILES ${ACT_GENERATED_SOURCE})
-file(GLOB
- LIBS_INCLUDE
- LIST_DIRECTORIES true
- ${CMAKE_CURRENT_SOURCE_DIR}/Libraries/*/Include
-)
-list(FILTER LIBS_INCLUDE EXCLUDE REGEX "zlib|libzip|libressl")
-target_include_directories(${PROJECT_NAME} PRIVATE ${LIBS_INCLUDE})
+#file(GLOB
+# LIBS_INCLUDE
+# LIST_DIRECTORIES true
+# ${CMAKE_CURRENT_SOURCE_DIR}/Libraries/*/Include
+#)
+#list(FILTER LIBS_INCLUDE EXCLUDE REGEX "zlib|libzip|libressl")
+#target_include_directories(${PROJECT_NAME} PRIVATE ${LIBS_INCLUDE})
# allow FASTFLOAT_ALLOWS_LEADING_PLUS
add_definitions(-DFASTFLOAT_ALLOWS_LEADING_PLUS=1)
@@ -199,22 +199,39 @@ if (USE_INCLUDED_LIBZIP)
endif()
else()
- find_package(PkgConfig REQUIRED)
- pkg_check_modules(LIBZIP REQUIRED libzip)
- target_link_libraries(${PROJECT_NAME} ${LIBZIP_LIBRARIES})
+# find_package(PkgConfig REQUIRED)
+# pkg_check_modules(LIBZIP REQUIRED libzip)
+# target_link_libraries(${PROJECT_NAME} ${LIBZIP_LIBRARIES})
+ find_package(LIBZIP REQUIRED)
+ target_link_libraries(${PROJECT_NAME} PRIVATE libzip::zip)
endif()
if (USE_INCLUDED_ZLIB)
target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/Libraries/zlib/Include)
else()
- find_package(PkgConfig REQUIRED)
- pkg_check_modules(ZLIB REQUIRED zlib)
- target_link_libraries(${PROJECT_NAME} ${ZLIB_LIBRARIES})
+# find_package(PkgConfig REQUIRED)
+# pkg_check_modules(ZLIB REQUIRED zlib)
+# target_link_libraries(${PROJECT_NAME} ${ZLIB_LIBRARIES})
+ find_package(ZLIB REQUIRED)
+ target_link_libraries(${PROJECT_NAME} PRIVATE ZLIB::ZLIB)
endif()
-target_include_directories(${PROJECT_NAME} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/submodules/fast_float/include)
+#devendor base64
+# Include the directory for header files
+find_path(CPP_BASE64_INCLUDE_DIRS "cpp-base64/base64.cpp")
+include_directories("${CPP_BASE64_INCLUDE_DIRS}/cpp-base64")
+set(BASE64_SRC
+ ${CPP_BASE64_INCLUDE_DIRS}/cpp-base64/base64.h
+ ${CPP_BASE64_INCLUDE_DIRS}/cpp-base64/base64.cpp)
+message("BASE64_SRC" ${BASE64_SRC})
+# Append BASE64_SRC to the target
+target_sources(${PROJECT_NAME} PRIVATE ${BASE64_SRC})
+
+#devendor FastFloat
+find_package(FastFloat CONFIG REQUIRED)
+target_link_libraries(${PROJECT_NAME} PRIVATE FastFloat::fast_float)
set_target_properties(${PROJECT_NAME} PROPERTIES PREFIX "" IMPORT_PREFIX "" )
diff --git a/Include/Common/NMR_StringUtils.h b/Include/Common/NMR_StringUtils.h
index 4cafe3a7..b32bc76a 100644
--- a/Include/Common/NMR_StringUtils.h
+++ b/Include/Common/NMR_StringUtils.h
@@ -37,7 +37,7 @@ and Exception-safe
#include "Common/NMR_Types.h"
#include "Common/NMR_Local.h"
-#include <fast_float.h>
+#include <fast_float/fast_float.h>
#include <string>
#include <string.h>
diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt
index 27973c84..bc93c89d 100644
--- a/Source/CMakeLists.txt
+++ b/Source/CMakeLists.txt
@@ -12,7 +12,7 @@ if (USE_INCLUDED_ZLIB)
file(GLOB ZLIB_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "Libraries/zlib/Source/*.c")
endif()
-file (GLOB CPPBASE64_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "Libraries/cpp-base64/Source/*.cpp")
+#file (GLOB CPPBASE64_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "Libraries/cpp-base64/Source/*.cpp")
# sources
set(SRCS_PLATFORM
diff --git a/cmake/lib3mfConfig.cmake b/cmake/lib3mfConfig.cmake
index f1305b8f..b7755c3e 100644
--- a/cmake/lib3mfConfig.cmake
+++ b/cmake/lib3mfConfig.cmake
@@ -1,4 +1,7 @@
# lib3mfConfig.cmake
+include(CMakeFindDependencyMacro)
+find_dependency(libzip)
+find_dependency(ZLIB)
if(VCPKG_TOOLCHAIN)
message("Lib3MF - VCPKG Tool Chain")

View File

@ -1,20 +1,24 @@
vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO 3MFConsortium/lib3mf
REF "v${VERSION}"
SHA512 91d3928315bd5d1a8553284505d28c7d839a3cbd8b07a87bca5a21087fffa8ba7a1738ed14313212815a09e33f7a82318f7b069f1bbe40456b57ec528379ab4b
SHA512 acfd0e4862248c475c674f7ee7855f809965a854e62ea0cd847008be7a9ca3c5a03ac87cac889f036555229762405094ca9811817dd45dbdaae941b5b41ae356
PATCHES
lib3mf_vcpkg.patch
fix-lib3mf-config-root.patch
fix-dependency-resolution-required.patch
)
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" _lib3mf_build_shared)
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
OPTIONS
-DLIB3MF_BUILD_SHARED=${_lib3mf_build_shared}
-DUSE_INCLUDED_ZLIB=OFF
-DUSE_INCLUDED_LIBZIP=OFF
-DUSE_INCLUDED_SSL=OFF
-DUSE_INCLUDED_CPPBASE64=OFF
-DUSE_INCLUDED_FASTFLOAT=OFF
-DBUILD_FOR_CODECOVERAGE=OFF
-DLIB3MF_TESTS=OFF
)

View File

@ -1,10 +1,10 @@
{
"name": "lib3mf",
"version": "2.4.1",
"version": "2.5.0",
"description": "lib3mf is an implementation of the 3D Manufacturing Format file standard",
"homepage": "https://github.com/3MFConsortium/lib3mf",
"license": "BSD-2-Clause",
"supports": "(windows & (x86 | x64) & !static & !staticcrt) | (linux & x64) | (osx & (x64 | arm64))",
"supports": "(windows & (x86 | x64)) | (linux & x64) | (osx & (x64 | arm64))",
"dependencies": [
"cpp-base64",
"fast-float",

View File

@ -4573,7 +4573,7 @@
"port-version": 0
},
"lib3mf": {
"baseline": "2.4.1",
"baseline": "2.5.0",
"port-version": 0
},
"libaaplus": {

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "91f325050cfa50f0961a1d9c37c04db13c46082c",
"version": "2.5.0",
"port-version": 0
},
{
"git-tree": "16dface0395187d431f9c27e4917f25d923d38d2",
"version": "2.4.1",