diff options
Diffstat (limited to 'vcpkg/ports/lib3mf')
| -rw-r--r-- | vcpkg/ports/lib3mf/lib3mf_vcpkg.patch | 116 | ||||
| -rw-r--r-- | vcpkg/ports/lib3mf/portfile.cmake | 31 | ||||
| -rw-r--r-- | vcpkg/ports/lib3mf/usage | 7 | ||||
| -rw-r--r-- | vcpkg/ports/lib3mf/vcpkg.json | 22 |
4 files changed, 176 insertions, 0 deletions
diff --git a/vcpkg/ports/lib3mf/lib3mf_vcpkg.patch b/vcpkg/ports/lib3mf/lib3mf_vcpkg.patch new file mode 100644 index 0000000..7052bf6 --- /dev/null +++ b/vcpkg/ports/lib3mf/lib3mf_vcpkg.patch @@ -0,0 +1,116 @@ +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") diff --git a/vcpkg/ports/lib3mf/portfile.cmake b/vcpkg/ports/lib3mf/portfile.cmake new file mode 100644 index 0000000..ccc77b4 --- /dev/null +++ b/vcpkg/ports/lib3mf/portfile.cmake @@ -0,0 +1,31 @@ +vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO 3MFConsortium/lib3mf + REF "v${VERSION}" + SHA512 91d3928315bd5d1a8553284505d28c7d839a3cbd8b07a87bca5a21087fffa8ba7a1738ed14313212815a09e33f7a82318f7b069f1bbe40456b57ec528379ab4b + PATCHES + lib3mf_vcpkg.patch +) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + -DUSE_INCLUDED_ZLIB=OFF + -DUSE_INCLUDED_LIBZIP=OFF + -DUSE_INCLUDED_SSL=OFF + -DBUILD_FOR_CODECOVERAGE=OFF + -DLIB3MF_TESTS=OFF +) + +vcpkg_cmake_install() +vcpkg_copy_pdbs() +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/lib3mf) +vcpkg_fixup_pkgconfig() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") + +file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE") diff --git a/vcpkg/ports/lib3mf/usage b/vcpkg/ports/lib3mf/usage new file mode 100644 index 0000000..bae4461 --- /dev/null +++ b/vcpkg/ports/lib3mf/usage @@ -0,0 +1,7 @@ +lib3mf provides CMake targets: + + find_package(lib3mf CONFIG REQUIRED) + target_link_libraries(target_name PRIVATE lib3mf::lib3mf) + +For examples and use cases, kindly check +https://github.com/3MFConsortium/lib3mf/tree/develop/SDK/CPackExamples diff --git a/vcpkg/ports/lib3mf/vcpkg.json b/vcpkg/ports/lib3mf/vcpkg.json new file mode 100644 index 0000000..73178e0 --- /dev/null +++ b/vcpkg/ports/lib3mf/vcpkg.json @@ -0,0 +1,22 @@ +{ + "name": "lib3mf", + "version": "2.4.1", + "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))", + "dependencies": [ + "cpp-base64", + "fast-float", + "libzip", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + }, + "zlib" + ] +} |