From e254e6b191889dc26988356c8a23baf12af21997 Mon Sep 17 00:00:00 2001 From: Kai Pastor Date: Thu, 4 Jun 2026 08:06:42 +0200 Subject: [PATCH] [minizip] Update to (zlib) 1.3.2 (#51761) --- ports/assimp/build_fixes.patch | 17 +- ports/assimp/vcpkg.json | 2 +- ports/collada-dom/portfile.cmake | 12 +- ports/collada-dom/use-uriparser.patch | 158 ++++-------------- ports/collada-dom/vcpkg.json | 14 +- ports/collada-dom/vs-version-detection.patch | 90 +++++----- ports/fmilib/minizip.patch | 38 ++++- ports/fmilib/vcpkg.json | 9 +- ports/icey/fix-minizip-config.diff | 44 +++++ ports/icey/portfile.cmake | 7 +- ports/icey/vcpkg.json | 1 + ports/libxlsxwriter/minizip.diff | 26 +++ ports/libxlsxwriter/portfile.cmake | 15 +- ports/libxlsxwriter/vcpkg.json | 8 + .../0001-remove-ifndef-NOUNCRYPT.patch | 29 ---- .../0002-add-declaration-for-mkdir.patch | 29 ---- ports/minizip/CMakeLists.txt | 111 ------------ ports/minizip/android-fileapi.patch | 17 -- ports/minizip/header-destination.diff | 22 +++ ports/minizip/install-tools.diff | 41 +++++ ports/minizip/lib-to-def.cmake | 40 ----- ports/minizip/minizip-win32.def | 78 --------- ports/minizip/minizipConfig.cmake.in | 10 -- ports/minizip/pkgconfig.patch | 38 ++++- ports/minizip/portfile.cmake | 81 +++++---- ports/minizip/restore-32bit.diff | 13 ++ ports/minizip/unofficial-iowin32.diff | 18 ++ ports/minizip/unofficial-minizipConfig.cmake | 13 ++ .../minizip/unofficial-minizipConfig.cmake.in | 10 -- ports/minizip/usage | 13 +- ports/minizip/vcpkg.json | 10 +- versions/a-/assimp.json | 5 + versions/baseline.json | 14 +- versions/c-/collada-dom.json | 5 + versions/f-/fmilib.json | 5 + versions/i-/icey.json | 5 + versions/l-/libxlsxwriter.json | 5 + versions/m-/minizip.json | 5 + 38 files changed, 489 insertions(+), 569 deletions(-) create mode 100644 ports/icey/fix-minizip-config.diff create mode 100644 ports/libxlsxwriter/minizip.diff delete mode 100644 ports/minizip/0001-remove-ifndef-NOUNCRYPT.patch delete mode 100644 ports/minizip/0002-add-declaration-for-mkdir.patch delete mode 100644 ports/minizip/CMakeLists.txt delete mode 100644 ports/minizip/android-fileapi.patch create mode 100644 ports/minizip/header-destination.diff create mode 100644 ports/minizip/install-tools.diff delete mode 100644 ports/minizip/lib-to-def.cmake delete mode 100644 ports/minizip/minizip-win32.def delete mode 100644 ports/minizip/minizipConfig.cmake.in create mode 100644 ports/minizip/restore-32bit.diff create mode 100644 ports/minizip/unofficial-iowin32.diff create mode 100644 ports/minizip/unofficial-minizipConfig.cmake delete mode 100644 ports/minizip/unofficial-minizipConfig.cmake.in diff --git a/ports/assimp/build_fixes.patch b/ports/assimp/build_fixes.patch index c081ce7c2f..939af1157d 100644 --- a/ports/assimp/build_fixes.patch +++ b/ports/assimp/build_fixes.patch @@ -108,7 +108,7 @@ index 6551dcb..dd65b0b 100644 + if(@ASSIMP_BUILD_DRACO@) + find_dependency(draco CONFIG) + endif() -+ find_dependency(unofficial-minizip CONFIG) ++ find_dependency(minizip CONFIG) + find_dependency(pugixml CONFIG) + find_dependency(poly2tri CONFIG) + find_dependency(polyclipping CONFIG) @@ -161,6 +161,19 @@ index d3666d5..795f366 100644 #include #include +diff --git a/code/AssetLib/IFC/IFCLoader.cpp b/code/AssetLib/IFC/IFCLoader.cpp +index 8c1e658..e8155a9 100644 +--- a/code/AssetLib/IFC/IFCLoader.cpp ++++ b/code/AssetLib/IFC/IFCLoader.cpp +@@ -53,7 +53,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + #ifdef ASSIMP_USE_HUNTER + #include + #else +-#include ++#include + #endif + #endif + diff --git a/code/AssetLib/IFC/IFCOpenings.cpp b/code/AssetLib/IFC/IFCOpenings.cpp index 068ef40..be116f8 100644 --- a/code/AssetLib/IFC/IFCOpenings.cpp @@ -390,7 +403,7 @@ index de2f650..e605bf8 100644 + polyclipping::polyclipping + ${OPENDDL_PARSER_LIBRARIES} + poly2tri::poly2tri -+ unofficial::minizip::minizip ++ $,MINIZIP::minizip,MINIZIP::minizipstatic> + ZLIB::ZLIB + rapidjson + utf8cpp::utf8cpp diff --git a/ports/assimp/vcpkg.json b/ports/assimp/vcpkg.json index cf86ea723f..368d82806b 100644 --- a/ports/assimp/vcpkg.json +++ b/ports/assimp/vcpkg.json @@ -1,7 +1,7 @@ { "name": "assimp", "version": "6.0.4", - "port-version": 2, + "port-version": 3, "description": "The Open Asset import library", "homepage": "https://github.com/assimp/assimp", "license": "BSD-3-Clause", diff --git a/ports/collada-dom/portfile.cmake b/ports/collada-dom/portfile.cmake index 36127e9ec5..7f75d46413 100644 --- a/ports/collada-dom/portfile.cmake +++ b/ports/collada-dom/portfile.cmake @@ -12,20 +12,22 @@ vcpkg_from_github( fix-emscripten.patch fix-compatibility-with-boost-1.85.patch ) +file(REMOVE_RECURSE "${SOURCE_PATH}/dom/external-libs") vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DCMAKE_CXX_STANDARD=11 + -DVCPKG_LOCK_FIND_PACKAGE_Boost=ON + -DVCPKG_LOCK_FIND_PACKAGE_LibXml2=ON + -DVCPKG_LOCK_FIND_PACKAGE_PkgConfig=OFF + -DVCPKG_LOCK_FIND_PACKAGE_ZLIB=ON ) - vcpkg_cmake_install() - +vcpkg_fixup_pkgconfig() vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/collada_dom-2.5) file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -# Handle copyright -file(INSTALL "${SOURCE_PATH}/licenses/license_e.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/licenses/license_e.txt") -vcpkg_fixup_pkgconfig() diff --git a/ports/collada-dom/use-uriparser.patch b/ports/collada-dom/use-uriparser.patch index 6de0662ef9..9c3237330b 100644 --- a/ports/collada-dom/use-uriparser.patch +++ b/ports/collada-dom/use-uriparser.patch @@ -1,127 +1,31 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 3ec1527..3f044d3 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -237,23 +237,29 @@ else() - set(MINIZIP_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/dom/external-libs/minizip-1.1 ${ZLIB_INCLUDE_DIR}) - endif() - --pkg_check_modules(liburiparser liburiparser) -- --if(liburiparser_FOUND) -- set(liburiparser_CFLAGS_OTHERS "-DUSE_URIPARSER") -+find_package(UriParser) -+if(URIPARSER_FOUND) -+ set(URIPARSER_CFLAGS_OTHERS "-DUSE_URIPARSER") -+ set(URIPARSER_LIBRARIES ${URIPARSER_LIBRARY}) -+ message(STATUS "liburiparser found") - else() -- # try using pcrecpp -- pkg_check_modules(libpcrecpp libpcrecpp) -- if( libpcrecpp_FOUND ) -+ pkg_check_modules(liburiparser liburiparser) -+ if(liburiparser_FOUND) -+ set(URIPARSER_CFLAGS_OTHERS "-DUSE_URIPARSER") -+ message(STATUS "liburiparser found") -+ else() -+ # try using pcrecpp -+ pkg_check_modules(libpcrecpp libpcrecpp) -+ if( libpcrecpp_FOUND ) - set(CMAKE_REQUIRED_INCLUDES ${libpcrecpp_INCLUDE_DIRS}) - check_include_file_cxx(pcrecpp.h HAVE_PCRECPP_H) - set(CMAKE_REQUIRED_INCLUDES) - if( NOT HAVE_PCRECPP_H ) -- set(libpcrecpp_FOUND 0) -+ set(libpcrecpp_FOUND 0) -+ endif() - endif() -- endif() - -- if( NOT libpcrecpp_FOUND ) -+ if( NOT libpcrecpp_FOUND ) - message(STATUS "System pcre not found, using local from sources") - # include the local pcre - add_subdirectory(dom/external-libs/pcre-8.02) -@@ -262,6 +268,7 @@ else() - set(libpcrecpp_LIBRARIES pcrecpp_local) - set(libpcrecpp_CFLAGS_OTHERS "-DPCRE_STATIC") - set(libpcrecpp_LDFLAGS_OTHERS) -+ endif() - endif() - endif() - -diff --git a/cmake-modules/FindUriParser.cmake b/cmake-modules/FindUriParser.cmake -new file mode 100644 -index 0000000..91f466b ---- /dev/null -+++ b/cmake-modules/FindUriParser.cmake -@@ -0,0 +1,35 @@ -+# Find the UriParser library -+# Defines: -+ -+# URIPARSER_INCLUDE_DIR - uriparser include directory -+# URIPARSER_LIBRARY - uriparser library file -+# URIPARSER_FOUND - TRUE if uriparser is found -+ -+if (URIPARSER_INCLUDE_DIR) -+ #check cache -+ set(URIPARSER_FIND_QUIETLY TRUE) -+endif () -+ -+if (NOT URIPARSER_INCLUDE_DIR) -+ find_path(URIPARSER_INCLUDE_DIR NAMES Uri.h PATH_SUFFIXES uriparser) -+ set(URIPARSER_INCLUDE_DIR ${URIPARSER_INCLUDE_DIR}/uriparser CACHE PATH "uriparser includes") -+endif () -+ -+find_library(URIPARSER_LIBRARY NAMES uriparser) -+ -+if (URIPARSER_INCLUDE_DIR AND URIPARSER_LIBRARY) -+ set(URIPARSER_FOUND TRUE) -+ set(UriParser_FOUND TRUE) -+endif () -+ -+if (URIPARSER_FOUND) -+ if (NOT URIPARSER_FIND_QUIETLY) -+ message(STATUS "Found UriParser library: ${URIPARSER_LIBRARY}") -+ endif () -+else () -+ if (NOT URIPARSER_FIND_QUIETLY) -+ message(FATAL_ERROR "Could NOT find UriParser library") -+ else () -+ message(STATUS "Could NOT find UriParser library") -+ endif () -+endif () -diff --git a/dom/CMakeLists.txt b/dom/CMakeLists.txt -index f7ffb27..62e1b8a 100644 ---- a/dom/CMakeLists.txt -+++ b/dom/CMakeLists.txt -@@ -1,6 +1,6 @@ - set(COLLADA_INTERNAL_INCLUDE ${CMAKE_CURRENT_SOURCE_DIR}/include) - include_directories(${COLLADA_INTERNAL_INCLUDE}) --set(COLLADA_LIBS minizip ${liburiparser_LIBRARIES} ${libpcrecpp_LIBRARIES} ${ZLIB_LIBRARIES} ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) -+set(COLLADA_LIBS minizip ${URIPARSER_LIBRARIES} ${libpcrecpp_LIBRARIES} ${ZLIB_LIBRARIES} ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) - - file(GLOB dae_files ${CMAKE_CURRENT_SOURCE_DIR}/src/dae/*.cpp) - if( LIBXML2_FOUND ) -@@ -13,7 +13,7 @@ file(GLOB stddatabase_files ${CMAKE_CURRENT_SOURCE_DIR}/src/modules/STLDatabase/ - file(GLOB stderrplugin_files ${CMAKE_CURRENT_SOURCE_DIR}/src/modules/stdErrPlugin/*.cpp) - - set(COLLADA_BASE_SOURCES ${dae_files} ${libxmlplugin_files} ${stddatabase_files} ${stderrplugin_files}) --set(COLLADA_COMPILE_FLAGS "${liburiparser_CFLAGS_OTHERS} ${libpcrecpp_CFLAGS_OTHERS} ${EXTRA_COMPILE_FLAGS} ${Boost_CFLAGS}") -+set(COLLADA_COMPILE_FLAGS "${URIPARSER_CFLAGS_OTHERS} ${libpcrecpp_CFLAGS_OTHERS} ${EXTRA_COMPILE_FLAGS} ${Boost_CFLAGS}") - # create dynamic libraries - set(COLLADA_COMPILE_FLAGS "${COLLADA_COMPILE_FLAGS} -DDOM_DYNAMIC -DDOM_EXPORT") - -diff --git a/dom/src/dae/daeURI.cpp b/dom/src/dae/daeURI.cpp -index 3a8f815..1623753 100644 ---- a/dom/src/dae/daeURI.cpp -+++ b/dom/src/dae/daeURI.cpp -@@ -790,7 +790,7 @@ bool cdom::parseUriRef(const string& uriRef, - scheme = fromRange(uri.scheme); - authority = fromRange(uri.hostText); - path = fromList(uri.pathHead, "/"); -- if (uri.absolutePath != URI_TRUE and uri.hostText.first == NULL) -+ if (uri.absolutePath != URI_TRUE && uri.hostText.first == NULL) - path = path.erase(0, 1); - query = fromRange(uri.query); - fragment = fromRange(uri.fragment); +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 3ec1527..d5d1608 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -237,10 +237,12 @@ else() + set(MINIZIP_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/dom/external-libs/minizip-1.1 ${ZLIB_INCLUDE_DIR}) + endif() + +-pkg_check_modules(liburiparser liburiparser) ++find_package(liburiparser NAMES uriparser REQUIRED) + + if(liburiparser_FOUND) + set(liburiparser_CFLAGS_OTHERS "-DUSE_URIPARSER") ++ set(liburiparser_LIBRARIES uriparser::uriparser) ++ message(STATUS "liburiparser found") + else() + # try using pcrecpp + pkg_check_modules(libpcrecpp libpcrecpp) +diff --git a/dom/src/dae/daeURI.cpp b/dom/src/dae/daeURI.cpp +index 3a8f815..1623753 100644 +--- a/dom/src/dae/daeURI.cpp ++++ b/dom/src/dae/daeURI.cpp +@@ -790,7 +790,7 @@ bool cdom::parseUriRef(const string& uriRef, + scheme = fromRange(uri.scheme); + authority = fromRange(uri.hostText); + path = fromList(uri.pathHead, "/"); +- if (uri.absolutePath != URI_TRUE and uri.hostText.first == NULL) ++ if (uri.absolutePath != URI_TRUE && uri.hostText.first == NULL) + path = path.erase(0, 1); + query = fromRange(uri.query); + fragment = fromRange(uri.fragment); diff --git a/ports/collada-dom/vcpkg.json b/ports/collada-dom/vcpkg.json index 7e0c3d5e2e..a1b9bf6b5b 100644 --- a/ports/collada-dom/vcpkg.json +++ b/ports/collada-dom/vcpkg.json @@ -1,15 +1,25 @@ { "name": "collada-dom", "version": "2.5.0", - "port-version": 11, + "port-version": 12, "description": "The COLLADA Document Object Model (DOM) is an application programming interface (API) that provides a C++ object representation of a COLLADA XML instance document.", "homepage": "https://github.com/rdiankov/collada-dom", "license": null, "dependencies": [ "boost-filesystem", "boost-system", - "libxml2", + { + "name": "libxml2", + "default-features": false + }, "minizip", + { + "name": "minizip", + "features": [ + "unofficial-iowin32" + ], + "platform": "windows" + }, "uriparser", { "name": "vcpkg-cmake", diff --git a/ports/collada-dom/vs-version-detection.patch b/ports/collada-dom/vs-version-detection.patch index 7379f33bea..d89910e066 100644 --- a/ports/collada-dom/vs-version-detection.patch +++ b/ports/collada-dom/vs-version-detection.patch @@ -1,39 +1,51 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 2596a23..3ec1527 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1,4 +1,4 @@ --cmake_minimum_required (VERSION 2.6.0) -+cmake_minimum_required (VERSION 3.7.0) - project (collada-dom) - set( CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS TRUE ) - -@@ -89,14 +89,22 @@ string(TOUPPER ${COMPONENT_PREFIX} COMPONENT_PREFIX_UPPER) - set(CPACK_COMPONENTS_ALL ${COMPONENT_PREFIX}-base ${COMPONENT_PREFIX}-dev) - - if( MSVC ) -- if( MSVC70 OR MSVC71 ) -- set(MSVC_PREFIX "vc70") -- elseif( MSVC80 ) -- set(MSVC_PREFIX "vc80") -- elseif( MSVC90 ) -+ if( MSVC_VERSION GREATER_EQUAL 1910 ) -+ set(MSVC_PREFIX "vc140") -+ elseif( MSVC_VERSION GREATER_EQUAL 1900 ) -+ set(MSVC_PREFIX "vc130") -+ elseif( MSVC_VERSION GREATER_EQUAL 1800 ) -+ set(MSVC_PREFIX "vc120") -+ elseif( MSVC_VERSION GREATER_EQUAL 1700 ) -+ set(MSVC_PREFIX "vc110") -+ elseif( MSVC_VERSION GREATER_EQUAL 1600 ) -+ set(MSVC_PREFIX "vc100") -+ elseif( MSVC_VERSION GREATER_EQUAL 1500 ) - set(MSVC_PREFIX "vc90") -+ elseif( MSVC_VERSION GREATER_EQUAL 1400 ) -+ set(MSVC_PREFIX "vc80") - else() -- set(MSVC_PREFIX "vc100") -+ set(MSVC_PREFIX "vc70") - endif() - set(COLLADA_DOM_LIBRARY_SUFFIX "${COLLADA_DOM_SOVERSION}-${COLLADA_PRECISION}-${MSVC_PREFIX}-mt") - else() +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 2596a23..3ec1527 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required (VERSION 2.6.0) ++cmake_minimum_required (VERSION 3.7.0) + project (collada-dom) + set( CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS TRUE ) + +@@ -89,14 +89,22 @@ string(TOUPPER ${COMPONENT_PREFIX} COMPONENT_PREFIX_UPPER) + set(CPACK_COMPONENTS_ALL ${COMPONENT_PREFIX}-base ${COMPONENT_PREFIX}-dev) + + if( MSVC ) +- if( MSVC70 OR MSVC71 ) +- set(MSVC_PREFIX "vc70") +- elseif( MSVC80 ) +- set(MSVC_PREFIX "vc80") +- elseif( MSVC90 ) ++ if( MSVC_VERSION GREATER_EQUAL 1910 ) ++ set(MSVC_PREFIX "vc140") ++ elseif( MSVC_VERSION GREATER_EQUAL 1900 ) ++ set(MSVC_PREFIX "vc130") ++ elseif( MSVC_VERSION GREATER_EQUAL 1800 ) ++ set(MSVC_PREFIX "vc120") ++ elseif( MSVC_VERSION GREATER_EQUAL 1700 ) ++ set(MSVC_PREFIX "vc110") ++ elseif( MSVC_VERSION GREATER_EQUAL 1600 ) ++ set(MSVC_PREFIX "vc100") ++ elseif( MSVC_VERSION GREATER_EQUAL 1500 ) + set(MSVC_PREFIX "vc90") ++ elseif( MSVC_VERSION GREATER_EQUAL 1400 ) ++ set(MSVC_PREFIX "vc80") + else() +- set(MSVC_PREFIX "vc100") ++ set(MSVC_PREFIX "vc70") + endif() + set(COLLADA_DOM_LIBRARY_SUFFIX "${COLLADA_DOM_SOVERSION}-${COLLADA_PRECISION}-${MSVC_PREFIX}-mt") + else() +diff --git a/collada_dom-config.cmake.in b/collada_dom-config.cmake.in +index 17f0e68..84fae8f 100644 +--- a/collada_dom-config.cmake.in ++++ b/collada_dom-config.cmake.in +@@ -25,6 +25,7 @@ if( MSVC ) + else() + set(MSVC_PREFIX "vc100") + endif() ++ set(MSVC_PREFIX "@MSVC_PREFIX@") + set(COLLADA_DOM_LIBRARY_SUFFIX "${COLLADA_DOM_VERSION_MAJOR}.${COLLADA_DOM_VERSION_MINOR}-@COLLADA_PRECISION@-${MSVC_PREFIX}-mt" CACHE STRING "the suffix for the collada-dom library" FORCE) + else() + set(COLLADA_DOM_LIBRARY_SUFFIX "${COLLADA_DOM_VERSION_MAJOR}.${COLLADA_DOM_VERSION_MINOR}-@COLLADA_PRECISION@") diff --git a/ports/fmilib/minizip.patch b/ports/fmilib/minizip.patch index abd3ec1318..f7702f1c37 100644 --- a/ports/fmilib/minizip.patch +++ b/ports/fmilib/minizip.patch @@ -1,5 +1,5 @@ diff --git a/ThirdParty/Minizip/minizip/miniunz.c b/ThirdParty/Minizip/minizip/miniunz.c -index 1931161..d7a8be1 100644 +index 1931161..4ec0fe1 100644 --- a/ThirdParty/Minizip/minizip/miniunz.c +++ b/ThirdParty/Minizip/minizip/miniunz.c @@ -45,6 +45,7 @@ @@ -10,6 +10,24 @@ index 1931161..d7a8be1 100644 #include #ifdef _WIN32 +@@ -56,7 +57,7 @@ + #endif + + +-#include "unzip.h" ++#include + + #define CASESENSITIVITY (0) + #define WRITEBUFFERSIZE (8192) +@@ -64,7 +65,7 @@ + + #ifdef _WIN32 + #define USEWIN32IOAPI +-#include "iowin32.h" ++#include + #endif + + @@ -107,7 +108,7 @@ void change_file_date(filename,dosdate,tmu_date) SetFileTime(hFile,&ftm,&ftLastAcc,&ftm); CloseHandle(hFile); @@ -29,9 +47,23 @@ index 1931161..d7a8be1 100644 #elif __APPLE__ ret = mkdir (dirname,0775); diff --git a/ThirdParty/Minizip/minizip/minizip.c b/ThirdParty/Minizip/minizip/minizip.c -index e22f80d..548b6ca 100644 +index e22f80d..97e16e5 100644 --- a/ThirdParty/Minizip/minizip/minizip.c +++ b/ThirdParty/Minizip/minizip/minizip.c +@@ -59,11 +59,11 @@ + # include + #endif + +-#include "zip.h" ++#include + + #ifdef _WIN32 + #define USEWIN32IOAPI +- #include "iowin32.h" ++ #include + #endif + + @@ -101,7 +101,7 @@ uLong filetime(f, tmzip, dt) return ret; } @@ -46,7 +78,7 @@ index e22f80d..548b6ca 100644 if( lastslash != NULL ) { - savefilenameinzip = lastslash+1; // base filename follows last slash. -+ savefilenameinzip = lastslash+1; ++ savefilenameinzip = lastslash+1; /* base filename follows last slash. */ } } diff --git a/ports/fmilib/vcpkg.json b/ports/fmilib/vcpkg.json index 55a9744902..67d337e028 100644 --- a/ports/fmilib/vcpkg.json +++ b/ports/fmilib/vcpkg.json @@ -1,7 +1,7 @@ { "name": "fmilib", "version": "2.4.1", - "port-version": 2, + "port-version": 3, "description": "FMI library is intended as a foundation for applications interfacing FMUs (Functional Mockup Units) that follow FMI Standard. This version of the library supports FMI 1.0 and FMI2.0.", "homepage": "https://www.fmi-standard.org/", "license": "BSD-3-Clause", @@ -9,6 +9,13 @@ "dependencies": [ "expat", "minizip", + { + "name": "minizip", + "features": [ + "unofficial-iowin32" + ], + "platform": "windows" + }, { "name": "vcpkg-cmake", "host": true diff --git a/ports/icey/fix-minizip-config.diff b/ports/icey/fix-minizip-config.diff new file mode 100644 index 0000000000..60e3294def --- /dev/null +++ b/ports/icey/fix-minizip-config.diff @@ -0,0 +1,44 @@ +diff --git a/cmake/icey_config.cmake.in b/cmake/icey_config.cmake.in +index e4d8173..4845f9d 100644 +--- a/cmake/icey_config.cmake.in ++++ b/cmake/icey_config.cmake.in +@@ -65,13 +65,14 @@ if(@USE_SYSTEM_DEPS@) + endif() + find_dependency(ZLIB) + if("archo" IN_LIST _icey_supported_components OR "pacm" IN_LIST _icey_supported_components) +- find_dependency(unofficial-minizip CONFIG QUIET) ++ find_package(unofficial-minizip CONFIG QUIET) + find_dependency(minizip CONFIG QUIET) +- if(NOT TARGET unofficial-minizip::minizip AND NOT TARGET minizip::minizip AND PkgConfig_FOUND) ++ if(NOT TARGET unofficial::minizip::minizip AND NOT TARGET MINIZIP::minizip AND NOT TARGET MINIZIP::minizipstatic AND PkgConfig_FOUND) + pkg_check_modules(MINIZIP QUIET IMPORTED_TARGET GLOBAL minizip) + endif() +- _icey_add_compat_target(minizip unofficial-minizip::minizip) +- _icey_add_compat_target(minizip minizip::minizip) ++ _icey_add_compat_target(minizip MINIZIP::minizip) ++ _icey_add_compat_target(minizip MINIZIP::minizipstatic) ++ _icey_add_compat_target(minizip unofficial::minizip::minizip) + _icey_add_compat_target(minizip PkgConfig::MINIZIP) + if(NOT TARGET minizip) + message(FATAL_ERROR "icey archo/pacm components require minizip via a CMake package config or pkg-config") +diff --git a/icey.cmake b/icey.cmake +index 1cee0dd..dc01579 100644 +--- a/icey.cmake ++++ b/icey.cmake +@@ -254,10 +254,12 @@ else() + # minizip: try packaged targets first, fall back to building from source + find_package(unofficial-minizip CONFIG QUIET) + find_package(minizip CONFIG QUIET) +- if(TARGET unofficial-minizip::minizip) +- icy_add_compat_target(minizip unofficial-minizip::minizip) +- elseif(TARGET minizip::minizip) +- icy_add_compat_target(minizip minizip::minizip) ++ if(TARGET MINIZIP::minizip) ++ icy_add_compat_target(minizip MINIZIP::minizip) ++ elseif(TARGET MINIZIP::minizipstatic) ++ icy_add_compat_target(minizip MINIZIP::minizipstatic) ++ elseif(TARGET unofficial::minizip::minizip) ++ icy_add_compat_target(minizip unofficial::minizip::minizip) + elseif(PkgConfig_FOUND) + pkg_check_modules(MINIZIP QUIET IMPORTED_TARGET GLOBAL minizip) + icy_add_compat_target(minizip PkgConfig::MINIZIP) diff --git a/ports/icey/portfile.cmake b/ports/icey/portfile.cmake index a9d869c42e..be1d5e31c0 100644 --- a/ports/icey/portfile.cmake +++ b/ports/icey/portfile.cmake @@ -1,9 +1,11 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO nilstate/icey - REF 689364c94475e36af24f0e39665aebfb9bb16a9c # 2.4.11 - SHA512 d37e43f303b2a8d63dd78afc7cb3f5c614650f91520638a90362e7e558501eca245ffd08e73c1a6415b0b618e70ba64234d62b869602940c2990e08ecc278824 + REF ${VERSION} + SHA512 666f3f3151b855d7463690fbf42380d31b5b9998dd4e4b99cf0e7a24d3dc7fdcf7bca2bea8e1e08f5704194734379281dc034103b02a9e60812ce3ee568a0b02 HEAD_REF main + PATCHES + fix-minizip-config.diff ) vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS @@ -24,6 +26,7 @@ vcpkg_cmake_configure( -DBUILD_ALPHA=OFF -DWITH_LIBDATACHANNEL=OFF -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=TRUE + -DVCPKG_LOCK_FIND_PACKAGE_minizip=ON -DENABLE_NATIVE_ARCH=OFF ${FEATURE_OPTIONS} ) diff --git a/ports/icey/vcpkg.json b/ports/icey/vcpkg.json index 360f9e8e13..273d0d553b 100644 --- a/ports/icey/vcpkg.json +++ b/ports/icey/vcpkg.json @@ -1,6 +1,7 @@ { "name": "icey", "version": "2.4.11", + "port-version": 1, "maintainers": "0state OSS ", "description": "C++20 media stack and libwebrtc alternative for real-time video, signalling, TURN, and media servers", "homepage": "https://0state.com/icey/", diff --git a/ports/libxlsxwriter/minizip.diff b/ports/libxlsxwriter/minizip.diff new file mode 100644 index 0000000000..ae496fd5e7 --- /dev/null +++ b/ports/libxlsxwriter/minizip.diff @@ -0,0 +1,26 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ee16948..a34fc25 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -309,7 +309,7 @@ list(APPEND LXW_PRIVATE_INCLUDE_DIRS ${ZLIB_INCLUDE_DIRS}) + + # Set the minizip includes. + if(USE_SYSTEM_MINIZIP) +- if(MSVC) ++ if(1) + find_package(MINIZIP NAMES unofficial-minizip REQUIRED) + set(MINIZIP_LIBRARIES unofficial::minizip::minizip) + else() +diff --git a/include/xlsxwriter/packager.h b/include/xlsxwriter/packager.h +index 8c465ad..ef95888 100644 +--- a/include/xlsxwriter/packager.h ++++ b/include/xlsxwriter/packager.h +@@ -12,7 +12,7 @@ + + #include + +-#ifdef USE_SYSTEM_MINIZIP ++#if 1 + #ifdef __GNUC__ + #pragma GCC system_header + #endif diff --git a/ports/libxlsxwriter/portfile.cmake b/ports/libxlsxwriter/portfile.cmake index a1de161745..f66ffac5b2 100644 --- a/ports/libxlsxwriter/portfile.cmake +++ b/ports/libxlsxwriter/portfile.cmake @@ -4,14 +4,20 @@ vcpkg_from_github( REF "v${VERSION}" SHA512 a961a6d8094cc9f9996c9cf6c143e0382422eb4b63ec68d4ee1cce76afef562656855ed08c630974b67d33a4af9706df602c4ababad0767466b43a3e0563f2cf HEAD_REF main + PATCHES + minizip.diff +) +file(REMOVE_RECURSE + "${SOURCE_PATH}/include/third_party/ioapi.h" + "${SOURCE_PATH}/include/third_party/zip.h" + "${SOURCE_PATH}/third_party/minizip" ) -file(REMOVE_RECURSE "${SOURCE_PATH}/third_party/minizip") vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES - "dtoa" USE_DTOA_LIBRARY - "openssl-md5" USE_OPENSSL_MD5 - "mem-file" USE_MEM_FILE + "dtoa" USE_DTOA_LIBRARY + "openssl-md5" USE_OPENSSL_MD5 + "mem-file" USE_MEM_FILE ) set(USE_WINDOWSSTORE OFF) @@ -32,5 +38,6 @@ vcpkg_fixup_pkgconfig() vcpkg_copy_pdbs() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/include/xlsxwriter/third_party") vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/License.txt") diff --git a/ports/libxlsxwriter/vcpkg.json b/ports/libxlsxwriter/vcpkg.json index 4c679597f8..78902547c8 100644 --- a/ports/libxlsxwriter/vcpkg.json +++ b/ports/libxlsxwriter/vcpkg.json @@ -1,12 +1,20 @@ { "name": "libxlsxwriter", "version": "1.2.4", + "port-version": 1, "description": "Libxlsxwriter is a C library that can be used to write text, numbers, formulas and hyperlinks to multiple worksheets in an Excel 2007+ XLSX file.", "homepage": "https://github.com/jmcnamara/libxlsxwriter", "documentation": "https://libxlsxwriter.github.io", "license": "BSD-2-Clause", "dependencies": [ "minizip", + { + "name": "minizip", + "features": [ + "unofficial-iowin32" + ], + "platform": "windows" + }, { "name": "vcpkg-cmake", "host": true diff --git a/ports/minizip/0001-remove-ifndef-NOUNCRYPT.patch b/ports/minizip/0001-remove-ifndef-NOUNCRYPT.patch deleted file mode 100644 index d9c051d285..0000000000 --- a/ports/minizip/0001-remove-ifndef-NOUNCRYPT.patch +++ /dev/null @@ -1,29 +0,0 @@ -From a6fd3992d44053a523a67aa16f5ae88fecfb20e1 Mon Sep 17 00:00:00 2001 -From: Nicole Mazzuca -Date: Tue, 22 Sep 2020 14:09:53 -0700 -Subject: [PATCH 1/2] remove `#ifndef NOUNCRYPT` - -enable decrypt support for password-encrypted ZIP files - ---- - contrib/minizip/unzip.c | 4 ---- - 1 file changed, 4 deletions(-) - -diff --git a/contrib/minizip/unzip.c b/contrib/minizip/unzip.c -index bcfb941..1895a0f 100644 ---- a/contrib/minizip/unzip.c -+++ b/contrib/minizip/unzip.c -@@ -68,10 +68,6 @@ - #include - #include - --#ifndef NOUNCRYPT -- #define NOUNCRYPT --#endif -- - #include "zlib.h" - #include "unzip.h" - --- -2.24.3 (Apple Git-128) - diff --git a/ports/minizip/0002-add-declaration-for-mkdir.patch b/ports/minizip/0002-add-declaration-for-mkdir.patch deleted file mode 100644 index 8786a840ba..0000000000 --- a/ports/minizip/0002-add-declaration-for-mkdir.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 6c38b6f544b55f9fc554f0fe22e2cbaddfaed7f8 Mon Sep 17 00:00:00 2001 -From: Nicole Mazzuca -Date: Tue, 22 Sep 2020 14:15:04 -0700 -Subject: [PATCH 2/2] add declaration for mkdir - -It's invalid in C99 to implicitly declare mkdir - ---- - contrib/minizip/miniunz.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/contrib/minizip/miniunz.c b/contrib/minizip/miniunz.c -index 3d65401..5341af2 100644 ---- a/contrib/minizip/miniunz.c -+++ b/contrib/minizip/miniunz.c -@@ -12,6 +12,10 @@ - Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com ) - */ - -+#if !defined(_WIN32) -+#include -+#endif -+ - #if (!defined(_WIN32)) && (!defined(WIN32)) && (!defined(__APPLE__)) - #ifndef __USE_FILE_OFFSET64 - #define __USE_FILE_OFFSET64 --- -2.24.3 (Apple Git-128) - diff --git a/ports/minizip/CMakeLists.txt b/ports/minizip/CMakeLists.txt deleted file mode 100644 index db79e72290..0000000000 --- a/ports/minizip/CMakeLists.txt +++ /dev/null @@ -1,111 +0,0 @@ -cmake_minimum_required(VERSION 3.25) -project(minizip LANGUAGES C) - -if(MSVC) - add_compile_options(/W3 /wd4005 /wd4996 /wd4018 -D_CRT_SECURE_NO_WARNINGS) -endif() - -set(SRC - ioapi.c - unzip.c - zip.c - mztools.c -) -set(HEADERS - crypt.h - ioapi.h - unzip.h - zip.h - mztools.h -) -if(WIN32) - list(APPEND SRC iowin32.c minizip-win32.def) - list(APPEND HEADERS iowin32.h) -endif() - -add_library(minizip ${SRC}) -target_include_directories(minizip PUBLIC $) - -find_package(ZLIB REQUIRED) -target_compile_definitions(minizip PRIVATE -D_ZLIB_H) -target_link_libraries(minizip PUBLIC ZLIB::ZLIB) -set(MINIZIP_REQUIRES zlib) - -if(ENABLE_BZIP2) - message(STATUS "Building with bzip2 support") - find_package(BZip2 REQUIRED) - target_compile_definitions(minizip PRIVATE -DHAVE_BZIP2=1) - target_link_libraries(minizip PUBLIC BZip2::BZip2) - list(APPEND MINIZIP_REQUIRES bzip2) -else() - message(STATUS "Building without bzip2 support") -endif() - -if(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - target_compile_definitions(minizip PRIVATE -DIOWIN32_USING_WINRT_API) -endif() - -if(NOT DISABLE_INSTALL_TOOLS) - add_executable(minizip_bin minizip.c) - add_executable(miniunz_bin miniunz.c) - - target_link_libraries(minizip_bin minizip) - target_link_libraries(miniunz_bin minizip) - - set_target_properties(minizip_bin PROPERTIES OUTPUT_NAME minizip) - set_target_properties(miniunz_bin PROPERTIES OUTPUT_NAME miniunz) - - install ( - TARGETS minizip_bin miniunz_bin - RUNTIME DESTINATION bin - ) -endif() - -install( - TARGETS minizip - EXPORT unofficial-minizipTargets - RUNTIME DESTINATION bin - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib -) - -include(CMakePackageConfigHelpers) -write_basic_package_version_file("${PROJECT_BINARY_DIR}/unofficial-minizipConfigVersion.cmake" - VERSION "${PACKAGE_VERSION}" - COMPATIBILITY SameMajorVersion -) - -configure_package_config_file(unofficial-minizipConfig.cmake.in - unofficial-minizipConfig.cmake - INSTALL_DESTINATION share/unofficial-minizip -) - -install(FILES - "${PROJECT_BINARY_DIR}/unofficial-minizipConfig.cmake" - "${PROJECT_BINARY_DIR}/unofficial-minizipConfigVersion.cmake" - DESTINATION share/unofficial-minizip -) - -install(EXPORT unofficial-minizipTargets - NAMESPACE unofficial::minizip:: - DESTINATION share/unofficial-minizip -) - -if(NOT DISABLE_INSTALL_HEADERS) - install(FILES ${HEADERS} DESTINATION include/minizip) -endif() - -list(JOIN MINIZIP_REQUIRES " " MINIZIP_REQUIRES) -set(exec_prefix "\${prefix}") -set(libdir "\${prefix}/lib") -set(includedir "\${prefix}/include") -configure_file( - "${CMAKE_CURRENT_SOURCE_DIR}/minizip.pc.in" - "${CMAKE_CURRENT_BINARY_DIR}/minizip.pc" - @ONLY -) -install( - FILES "${CMAKE_CURRENT_BINARY_DIR}/minizip.pc" - DESTINATION lib/pkgconfig -) - diff --git a/ports/minizip/android-fileapi.patch b/ports/minizip/android-fileapi.patch deleted file mode 100644 index 36171d0dde..0000000000 --- a/ports/minizip/android-fileapi.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/contrib/minizip/ioapi.h b/contrib/minizip/ioapi.h -index c588a18..b5395e2 100644 ---- a/contrib/minizip/ioapi.h -+++ b/contrib/minizip/ioapi.h -@@ -21,6 +21,12 @@ - #ifndef _ZLIBIOAPI64_H - #define _ZLIBIOAPI64_H - -+#if defined(__ANDROID_API__) && __ANDROID_API__ < 24 -+ // Cf. https://android.googlesource.com/platform/bionic/+/master/docs/32-bit-abi.md#32_bit-and -+ // stdio functions for off_t are incomplete. -+ #define USE_FILE32API -+#endif -+ - #if (!defined(_WIN32)) && (!defined(WIN32)) && (!defined(__APPLE__)) - - // Linux needs this to support file operation on files larger then 4+GB diff --git a/ports/minizip/header-destination.diff b/ports/minizip/header-destination.diff new file mode 100644 index 0000000000..0d024c7cb5 --- /dev/null +++ b/ports/minizip/header-destination.diff @@ -0,0 +1,22 @@ +diff --git a/contrib/minizip/CMakeLists.txt b/contrib/minizip/CMakeLists.txt +index afc09ac..e844959 100644 +--- a/contrib/minizip/CMakeLists.txt ++++ b/contrib/minizip/CMakeLists.txt +@@ -145,7 +145,7 @@ if(MINIZIP_BUILD_SHARED) + add_library(MINIZIP::minizip ALIAS libminizip) + target_include_directories( + libminizip PUBLIC $ +- $) ++ $) + target_compile_definitions( + libminizip + PRIVATE $<$:_CRT_SECURE_NO_WARNINGS> +@@ -291,7 +291,7 @@ if(MINIZIP_INSTALL) + install( + FILES ${LIBMINIZIP_HDRS} + COMPONENT Development +- DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}") ++ DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/minizip") + + set(prefix "${CMAKE_INSTALL_PREFIX}") + set(exec_prefix "\${prefix}") diff --git a/ports/minizip/install-tools.diff b/ports/minizip/install-tools.diff new file mode 100644 index 0000000000..13025d3709 --- /dev/null +++ b/ports/minizip/install-tools.diff @@ -0,0 +1,41 @@ +diff --git a/contrib/minizip/CMakeLists.txt b/contrib/minizip/CMakeLists.txt +index e9e03b9..775129f 100644 +--- a/contrib/minizip/CMakeLists.txt ++++ b/contrib/minizip/CMakeLists.txt +@@ -220,8 +220,13 @@ endif(MINIZIP_BUILD_STATIC) + + if(MINIZIP_INSTALL) + if(MINIZIP_BUILD_SHARED) ++ set(executables minizip miniunzip) ++ if(DISABLE_INSTALL_TOOLS) ++ set_target_properties(${executables} PROPERTIES EXCLUDE_FROM_ALL 1) ++ set(executables "") ++ endif() + install( +- TARGETS libminizip minizip miniunzip ++ TARGETS libminizip ${executables} + COMPONENT Runtime + EXPORT minizipSharedExport + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" +@@ -244,11 +249,18 @@ if(MINIZIP_INSTALL) + endif(MINIZIP_BUILD_SHARED) + + if(MINIZIP_BUILD_STATIC) ++ set(executables minizipstatic miniunzipstatic) ++ if(DISABLE_INSTALL_TOOLS) ++ set_target_properties(${executables} PROPERTIES EXCLUDE_FROM_ALL 1) ++ set(executables "") ++ else() ++ # Deliberately renaming the tools for uniform install names ++ set_target_properties(minizipstatic PROPERTIES OUTPUT_NAME minizip) ++ set_target_properties(miniunzipstatic PROPERTIES OUTPUT_NAME miniunzip) ++ endif() + install( + TARGETS libminizipstatic +- COMPONENT Development +- TARGETS minizipstatic miniunzipstatic +- COMPONENT Runtime ++ ${executables} + EXPORT minizipStaticExport + RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" + ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" diff --git a/ports/minizip/lib-to-def.cmake b/ports/minizip/lib-to-def.cmake deleted file mode 100644 index f603702f22..0000000000 --- a/ports/minizip/lib-to-def.cmake +++ /dev/null @@ -1,40 +0,0 @@ -function(lib_to_def) - if(NOT VCPKG_TARGET_IS_WINDOWS OR VCPKG_TARGET_IS_MINGW OR NOT VCPKG_LIBRARY_LINKAGE STREQUAL "static") - return() - endif() - - cmake_parse_arguments(PARSE_ARGV 0 arg "" "BASENAME;REGEX" "") - if(NOT arg_BASENAME) - message(FATAL_ERROR "BASENAME is a required argument.") - endif() - if(NOT arg_REGEX) - set(arg_REGEX "[^ ]+") - endif() - - set(logfile "${CURRENT_BUILDTREES_DIR}/dumpbin-${arg_BASENAME}-${TARGET_TRIPLET}-symbols.log") - vcpkg_execute_required_process( - COMMAND dumpbin /symbols "/OUT:${logfile}" "${CURRENT_PACKAGES_DIR}/lib/${arg_BASENAME}.lib" - WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}" - LOGNAME "dumpbin-${arg_BASENAME}-${TARGET_TRIPLET}" - ) - file(STRINGS "${logfile}" symbols REGEX "^... ........ SECT.. notype .. External [|] ${arg_REGEX}") - list(TRANSFORM symbols REPLACE "^[^|]+[|] " " ") - if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") - string(REPLACE " _" " " symbols "${symbols}") - endif() - list(JOIN symbols "\n" symbols) - set(symbols "EXPORTS\n${symbols}\n") - set(def_file "${CMAKE_CURRENT_LIST_DIR}/${arg_BASENAME}-${VCPKG_TARGET_ARCHITECTURE}.def") - if(NOT EXISTS "${def_file}") - set(def_file "${CMAKE_CURRENT_LIST_DIR}/${arg_BASENAME}-win32.def") - endif() - if(EXISTS "${def_file}") - file(READ "${def_file}" original_symbols) - else() - set(original_symbols "") - endif() - if(NOT symbols STREQUAL original_symbols) - file(WRITE "${CURRENT_BUILDTREES_DIR}/${arg_BASENAME}-${VCPKG_TARGET_ARCHITECTURE}.def.log" "${symbols}") - message(SEND_ERROR "${arg_BASENAME}-${VCPKG_TARGET_ARCHITECTURE}.def has changed.") - endif() -endfunction() diff --git a/ports/minizip/minizip-win32.def b/ports/minizip/minizip-win32.def deleted file mode 100644 index 2f108199d4..0000000000 --- a/ports/minizip/minizip-win32.def +++ /dev/null @@ -1,78 +0,0 @@ -EXPORTS - fill_win32_filefunc - fill_win32_filefunc64 - fill_win32_filefunc64A - fill_win32_filefunc64W - win32_open64_file_func - win32_open64_file_funcA - win32_open64_file_funcW - win32_open_file_func - win32_read_file_func - win32_write_file_func - win32_tell_file_func - win32_tell64_file_func - win32_seek_file_func - win32_seek64_file_func - win32_close_file_func - win32_error_file_func - unzRepair - zip_copyright - zipOpen - zipOpen64 - zipOpen2 - zipOpen2_64 - zipOpen3 - zipOpenNewFileInZip - zipOpenNewFileInZip64 - zipOpenNewFileInZip2 - zipOpenNewFileInZip2_64 - zipOpenNewFileInZip3 - zipOpenNewFileInZip3_64 - zipOpenNewFileInZip4 - zipOpenNewFileInZip4_64 - zipWriteInFileInZip - zipCloseFileInZip - zipCloseFileInZipRaw - zipCloseFileInZipRaw64 - zipClose - zipRemoveExtraInfoBlock - unz_copyright - unzStringFileNameCompare - unzOpen - unzOpen64 - unzOpen2 - unzOpen2_64 - unzClose - unzGetGlobalInfo - unzGetGlobalInfo64 - unzGetGlobalComment - unzGoToFirstFile - unzGoToNextFile - unzLocateFile - unzGetFilePos - unzGoToFilePos - unzGetFilePos64 - unzGoToFilePos64 - unzGetCurrentFileInfo64 - unzGetCurrentFileInfo - unzGetCurrentFileZStreamPos64 - unzOpenCurrentFile - unzOpenCurrentFilePassword - unzOpenCurrentFile2 - unzOpenCurrentFile3 - unzCloseCurrentFile - unzReadCurrentFile - unztell - unztell64 - unzeof - unzGetLocalExtrafield - unzGetOffset64 - unzGetOffset - unzSetOffset64 - unzSetOffset - fill_fopen64_filefunc - fill_fopen_filefunc - call_zopen64 - call_zseek64 - call_ztell64 - fill_zlib_filefunc64_32_def_from_filefunc32 diff --git a/ports/minizip/minizipConfig.cmake.in b/ports/minizip/minizipConfig.cmake.in deleted file mode 100644 index 4527b18d6f..0000000000 --- a/ports/minizip/minizipConfig.cmake.in +++ /dev/null @@ -1,10 +0,0 @@ -message(WARNING "'find_package(minizip CONFIG)' is deprecated. Please use 'find_package(unofficial-minizip CONFIG)' instead.") - -include(CMakeFindDependencyMacro) -find_dependency(unofficial-minizip ${${CMAKE_FIND_PACKAGE_NAME}_FIND_VERSION} CONFIG) -if(NOT TARGET unofficial::minizip::minizip) - set(${CMAKE_FIND_PACKAGE_NAME}_FOUND FALSE) -elseif(NOT TARGET minizip::minizip) - add_library(minizip::minizip INTERFACE IMPORTED) - set_target_properties(minizip::minizip PROPERTIES INTERFACE_LINK_LIBRARIES unofficial::minizip::minizip) -endif() diff --git a/ports/minizip/pkgconfig.patch b/ports/minizip/pkgconfig.patch index 107f9fc323..f8ac4c39a5 100644 --- a/ports/minizip/pkgconfig.patch +++ b/ports/minizip/pkgconfig.patch @@ -1,11 +1,41 @@ +diff --git a/contrib/minizip/CMakeLists.txt b/contrib/minizip/CMakeLists.txt +index 80ccf99..e9e03b9 100644 +--- a/contrib/minizip/CMakeLists.txt ++++ b/contrib/minizip/CMakeLists.txt +@@ -64,6 +64,7 @@ endif(NOT DEFINED ZLIB_BUILD_MINIZIP) + + if(MINIZIP_ENABLE_BZIP2) + find_package(BZip2 REQUIRED) ++ string(APPEND MINIZIP_REQUIRES bzip2) + endif(MINIZIP_ENABLE_BZIP2) + + # +@@ -274,6 +275,17 @@ if(MINIZIP_INSTALL) + FILES ${LIBMINIZIP_HDRS} + COMPONENT Development + DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}") ++ ++ set(prefix "${CMAKE_INSTALL_PREFIX}") ++ set(exec_prefix "\${prefix}") ++ set(libdir "\${prefix}/${CMAKE_INSTALL_LIBDIR}") ++ set(includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}") ++ set(PACKAGE_VERSION "${minizip_VERSION}") ++ configure_file( ++ ${minizip_SOURCE_DIR}/minizip.pc.in ++ ${minizip_BINARY_DIR}/minizip.pc) ++ install(FILES ${minizip_BINARY_DIR}/minizip.pc ++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) + endif(MINIZIP_INSTALL) + + if(MINIZIP_BUILD_TESTING) diff --git a/contrib/minizip/minizip.pc.in b/contrib/minizip/minizip.pc.in -index 69b5b7f..9e43084 100644 +index 17eb6a9..eac7df5 100644 --- a/contrib/minizip/minizip.pc.in +++ b/contrib/minizip/minizip.pc.in -@@ -8,5 +8,5 @@ Description: Minizip zip file manipulation library - Requires: +@@ -9,5 +9,5 @@ Requires: Version: @PACKAGE_VERSION@ + License: Zlib Libs: -L${libdir} -lminizip -Libs.private: -lz -+Requires.private: @MINIZIP_REQUIRES@ ++Requires.private: zlib @MINIZIP_REQUIRES@ Cflags: -I${includedir} diff --git a/ports/minizip/portfile.cmake b/ports/minizip/portfile.cmake index 8c4a79f1db..2e80ea4e76 100644 --- a/ports/minizip/portfile.cmake +++ b/ports/minizip/portfile.cmake @@ -3,72 +3,69 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO madler/zlib REF "v${VERSION}" - SHA512 8c9642495bafd6fad4ab9fb67f09b268c69ff9af0f4f20cf15dfc18852ff1f312bd8ca41de761b3f8d8e90e77d79f2ccacd3d4c5b19e475ecf09d021fdfe9088 + SHA512 16fea4df307a68cf0035858abe2fd550250618a97590e202037acd18a666f57afc10f8836cbbd472d54a0e76539d0e558cb26f059d53de52ff90634bbf4f47d4 HEAD_REF master PATCHES - 0001-remove-ifndef-NOUNCRYPT.patch - 0002-add-declaration-for-mkdir.patch - pkgconfig.patch - android-fileapi.patch + pkgconfig.patch # https://github.com/madler/zlib/pull/1242 + install-tools.diff + restore-32bit.diff # somewhere in https://github.com/madler/zlib/pull/1233 + unofficial-iowin32.diff # https://github.com/madler/zlib/pull/1243 + header-destination.diff # for https://github.com/madler/zlib/issues/1252 ) -# Maintainer switch: Temporarily set this to 1 to re-generate the lists -# of exported symbols. This is needed when the version is bumped. -set(GENERATE_SYMBOLS 0) -if(GENERATE_SYMBOLS) - vcpkg_cmake_get_vars(cmake_vars_file) - include("${cmake_vars_file}") - if(VCPKG_DETECTED_CMAKE_C_COMPILER_ID STREQUAL "MSVC") - vcpkg_check_linkage(ONLY_STATIC_LIBRARY) - else() - set(GENERATE_SYMBOLS 0) - endif() -endif() - vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS FEATURES - bzip2 ENABLE_BZIP2 + bzip2 MINIZIP_ENABLE_BZIP2 + unofficial-iowin32 WITH_UNOFFICIAL_IOWIN32 INVERTED_FEATURES - tools DISABLE_INSTALL_TOOLS + tools DISABLE_INSTALL_TOOLS ) -file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" - "${CMAKE_CURRENT_LIST_DIR}/minizip-win32.def" - "${CMAKE_CURRENT_LIST_DIR}/unofficial-minizipConfig.cmake.in" - DESTINATION "${SOURCE_PATH}/contrib/minizip" -) +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" MINIZIP_BUILD_SHARED) +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" MINIZIP_BUILD_STATIC) vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}/contrib/minizip" OPTIONS ${FEATURE_OPTIONS} - -DPACKAGE_VERSION=${VERSION} + -DMINIZIP_BUILD_SHARED=${MINIZIP_BUILD_SHARED} + -DMINIZIP_BUILD_STATIC=${MINIZIP_BUILD_STATIC} + -DMINIZIP_BUILD_TESTING=OFF OPTIONS_DEBUG - -DDISABLE_INSTALL_HEADERS=ON -DDISABLE_INSTALL_TOOLS=ON ) - vcpkg_cmake_install() vcpkg_copy_pdbs() -vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-minizip) +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/minizip) vcpkg_fixup_pkgconfig() +if(VCPKG_TARGET_IS_WINDOWS) + if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/lib/pkgconfig/minizip.pc" " -lminizip" " -lminizips") + endif() + if(NOT VCPKG_BUILD_TYPE) + if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/minizip.pc" " -lminizip" " -lminizipsd") + else() + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/minizip.pc" " -lminizip" " -lminizipd") + endif() + endif() +endif() + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/minizip/minizipConfig.cmake" [[_MINIZIP_supported_components "shared" "static"]] [[_MINIZIP_supported_components "static"]]) +else() + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/minizip/minizipConfig.cmake" [[_MINIZIP_supported_components "shared" "static"]] [[_MINIZIP_supported_components "shared"]]) +endif() + if("tools" IN_LIST FEATURES) - vcpkg_copy_tools(TOOL_NAMES minizip miniunz AUTO_CLEAN) + vcpkg_copy_tools(TOOL_NAMES minizip miniunzip AUTO_CLEAN) endif() -if ("bzip2" IN_LIST FEATURES) - file(GLOB HEADERS "${CURRENT_PACKAGES_DIR}/include/minizip/*.h") - foreach(HEADER ${HEADERS}) - vcpkg_replace_string("${HEADER}" "#ifdef HAVE_BZIP2" "#if 1" IGNORE_UNCHANGED) - endforeach() -endif() +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") + +file(COPY "${CMAKE_CURRENT_LIST_DIR}/unofficial-minizipConfig.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/unofficial-minizip") -configure_file("${CMAKE_CURRENT_LIST_DIR}/minizipConfig.cmake.in" "${CURRENT_PACKAGES_DIR}/share/${PORT}/minizipConfig.cmake" @ONLY) file(COPY "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/contrib/minizip/MiniZip64_info.txt") - -if(GENERATE_SYMBOLS) - include("${CMAKE_CURRENT_LIST_DIR}/lib-to-def.cmake") - lib_to_def(BASENAME minizip REGEX "(call|fill|unz|win32|zip)") -endif() diff --git a/ports/minizip/restore-32bit.diff b/ports/minizip/restore-32bit.diff new file mode 100644 index 0000000000..c79f4362b4 --- /dev/null +++ b/ports/minizip/restore-32bit.diff @@ -0,0 +1,13 @@ +diff --git a/contrib/minizip/CMakeLists.txt b/contrib/minizip/CMakeLists.txt +index 5847c3c..afc09ac 100644 +--- a/contrib/minizip/CMakeLists.txt ++++ b/contrib/minizip/CMakeLists.txt +@@ -8,8 +8,6 @@ project( + HOMEPAGE_URL "https://www.winimage.com/zLibDll/minizip.html") + + if(CMAKE_SIZEOF_VOID_P LESS 8 AND NOT MINGW) +- message(WARNING "libminizip needs 64bit - stopping here") +- return() + endif(CMAKE_SIZEOF_VOID_P LESS 8 AND NOT MINGW) + + # ============================================================================ diff --git a/ports/minizip/unofficial-iowin32.diff b/ports/minizip/unofficial-iowin32.diff new file mode 100644 index 0000000000..404b9f328a --- /dev/null +++ b/ports/minizip/unofficial-iowin32.diff @@ -0,0 +1,18 @@ +diff --git a/contrib/minizip/CMakeLists.txt b/contrib/minizip/CMakeLists.txt +index 775129f..5847c3c 100644 +--- a/contrib/minizip/CMakeLists.txt ++++ b/contrib/minizip/CMakeLists.txt +@@ -129,6 +129,13 @@ set(MINIUNZIP_HDRS + unzip.h + zip.h) + ++if(WITH_UNOFFICIAL_IOWIN32) ++ list(APPEND LIBMINIZIP_HDRS iowin32.h) ++ list(APPEND LIBMINIZIP_SRCS iowin32.c) ++ list(REMOVE_ITEM MINIZIP_SRCS $<$:iowin32.c>) ++ list(REMOVE_ITEM MINIUNZIP_SRCS $<$:iowin32.c>) ++endif() ++ + if(WIN32 OR CYGWIN) + set(minizip_static_suffix "s") + set(CMAKE_DEBUG_POSTFIX "d") diff --git a/ports/minizip/unofficial-minizipConfig.cmake b/ports/minizip/unofficial-minizipConfig.cmake new file mode 100644 index 0000000000..2fafca4c33 --- /dev/null +++ b/ports/minizip/unofficial-minizipConfig.cmake @@ -0,0 +1,13 @@ +file(READ "${CMAKE_CURRENT_LIST_DIR}/../minizip/usage" usage) +message(WARNING "'find_package(unofficial-minizip)' is deprecated.\n${usage}") + +if(NOT TARGET unofficial::minizip::minizip) + include(CMakeFindDependencyMacro) + find_dependency(minizip CONFIG) + add_library(unofficial::minizip::minizip INTERFACE IMPORTED) + if(TARGET MINIZIP::minizip) + set_target_properties(unofficial::minizip::minizip PROPERTIES INTERFACE_LINK_LIBRARIES MINIZIP::minizip) + else() + set_target_properties(unofficial::minizip::minizip PROPERTIES INTERFACE_LINK_LIBRARIES MINIZIP::minizipstatic) + endif() +endif() diff --git a/ports/minizip/unofficial-minizipConfig.cmake.in b/ports/minizip/unofficial-minizipConfig.cmake.in deleted file mode 100644 index f2afcbb32e..0000000000 --- a/ports/minizip/unofficial-minizipConfig.cmake.in +++ /dev/null @@ -1,10 +0,0 @@ -@PACKAGE_INIT@ - -include(CMakeFindDependencyMacro) -find_dependency(ZLIB) -if ("@ENABLE_BZIP2@") - find_dependency(BZip2) -endif() - -include("${CMAKE_CURRENT_LIST_DIR}/unofficial-minizipTargets.cmake") -check_required_components(unofficial-minizip) diff --git a/ports/minizip/usage b/ports/minizip/usage index 6113742b8d..11b0424082 100644 --- a/ports/minizip/usage +++ b/ports/minizip/usage @@ -1,4 +1,9 @@ -minizip provides CMake targets: - - find_package(unofficial-minizip CONFIG REQUIRED) - target_link_libraries(main PRIVATE unofficial::minizip::minizip) +minizip provides CMake targets: + + find_package(minizip CONFIG REQUIRED) + target_link_libraries(main PRIVATE $,MINIZIP::minizip,MINIZIP::minizipstatic>) + +minizip provides pkg-config modules: + + # Minizip zip file manipulation library + minizip diff --git a/ports/minizip/vcpkg.json b/ports/minizip/vcpkg.json index 1466a32885..dd323870c6 100644 --- a/ports/minizip/vcpkg.json +++ b/ports/minizip/vcpkg.json @@ -1,7 +1,6 @@ { "name": "minizip", - "version": "1.3.1", - "port-version": 1, + "version": "1.3.2", "description": "Minizip zip file manipulation library", "homepage": "https://github.com/madler/zlib", "license": "Zlib", @@ -30,6 +29,13 @@ "tools": { "description": "Install tools", "supports": "!ios" + }, + "unofficial-iowin32": { + "description": [ + "Include iowin32 API in minizip library.", + "Deprecated. This feature only exists to support devendoring minizip in vcpkg ports." + ], + "supports": "windows" } } } diff --git a/versions/a-/assimp.json b/versions/a-/assimp.json index 3ae65b5957..1c93b5b708 100644 --- a/versions/a-/assimp.json +++ b/versions/a-/assimp.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "327397e12c4348d0a3637b297501126c3d715b68", + "version": "6.0.4", + "port-version": 3 + }, { "git-tree": "1a600c955b1da1116c67b00634170deb90c0dd2e", "version": "6.0.4", diff --git a/versions/baseline.json b/versions/baseline.json index f80927923f..25be559cd0 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -338,7 +338,7 @@ }, "assimp": { "baseline": "6.0.4", - "port-version": 2 + "port-version": 3 }, "astr": { "baseline": "0.3.1", @@ -1914,7 +1914,7 @@ }, "collada-dom": { "baseline": "2.5.0", - "port-version": 11 + "port-version": 12 }, "colmap": { "baseline": "3.12.6", @@ -3142,7 +3142,7 @@ }, "fmilib": { "baseline": "2.4.1", - "port-version": 2 + "port-version": 3 }, "fmt": { "baseline": "12.1.0", @@ -3914,7 +3914,7 @@ }, "icey": { "baseline": "2.4.11", - "port-version": 0 + "port-version": 1 }, "icu": { "baseline": "78.3", @@ -5974,7 +5974,7 @@ }, "libxlsxwriter": { "baseline": "1.2.4", - "port-version": 0 + "port-version": 1 }, "libxml2": { "baseline": "2.15.3", @@ -6597,8 +6597,8 @@ "port-version": 0 }, "minizip": { - "baseline": "1.3.1", - "port-version": 1 + "baseline": "1.3.2", + "port-version": 0 }, "minizip-ng": { "baseline": "4.1.0", diff --git a/versions/c-/collada-dom.json b/versions/c-/collada-dom.json index bb5d2b17a3..09878aa2ae 100644 --- a/versions/c-/collada-dom.json +++ b/versions/c-/collada-dom.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "0b9f450410bcd490229ff85595d0f153e75f0cd5", + "version": "2.5.0", + "port-version": 12 + }, { "git-tree": "99cd4042870c4d5b82be48450f0efd74fee84934", "version": "2.5.0", diff --git a/versions/f-/fmilib.json b/versions/f-/fmilib.json index 4d03231980..11a6e8ef13 100644 --- a/versions/f-/fmilib.json +++ b/versions/f-/fmilib.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "afea887ce3e1fd5f7185289f8e4fdb54f42092a7", + "version": "2.4.1", + "port-version": 3 + }, { "git-tree": "e875efe56416de71aa671c57a77817c67290f0a9", "version": "2.4.1", diff --git a/versions/i-/icey.json b/versions/i-/icey.json index 6c4c20a4fb..47b234d0a8 100644 --- a/versions/i-/icey.json +++ b/versions/i-/icey.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "55504f9391948f145cc4e03780bac665bfbde1fe", + "version": "2.4.11", + "port-version": 1 + }, { "git-tree": "879b3663b2cb7b247336340c30d509fd3ff4b662", "version": "2.4.11", diff --git a/versions/l-/libxlsxwriter.json b/versions/l-/libxlsxwriter.json index 23963bf4d9..cca29e5218 100644 --- a/versions/l-/libxlsxwriter.json +++ b/versions/l-/libxlsxwriter.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "07519de687f98f868abf9a259d6ac96b6ec8880e", + "version": "1.2.4", + "port-version": 1 + }, { "git-tree": "81eafe2f4fb5b5f0b31f2c3d0e02d714f6573ce3", "version": "1.2.4", diff --git a/versions/m-/minizip.json b/versions/m-/minizip.json index 2f027dae01..139cb89539 100644 --- a/versions/m-/minizip.json +++ b/versions/m-/minizip.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "b485c18ad5b9ce53d790be6875324577d308e8b1", + "version": "1.3.2", + "port-version": 0 + }, { "git-tree": "bb8016593efa5220d1b877c27cd8612862c13d81", "version": "1.3.1",