diff options
| author | Phoebe <20694052+PhoebeHui@users.noreply.github.com> | 2019-11-26 07:54:49 +0800 |
|---|---|---|
| committer | Griffin Downs <35574547+grdowns@users.noreply.github.com> | 2019-11-25 15:54:49 -0800 |
| commit | 73c3e33c4a9bf2bc2b67bb172b72730e707344e3 (patch) | |
| tree | 8254f2c5e9b2c96e009e84d292a1b4d67859ba88 | |
| parent | ca1e2ec6b30a0a3830fca950a9dd0b55202fd1ec (diff) | |
| download | vcpkg-73c3e33c4a9bf2bc2b67bb172b72730e707344e3.tar.gz vcpkg-73c3e33c4a9bf2bc2b67bb172b72730e707344e3.zip | |
[minizip assimp] export minizip cmake targets and fix minizip dependency in assimp (#9075)
* [minizip assimp] export minizip cmake targets and fix minizip dependency in assimp
* Update CMakeList.txt
* Update obsolete functions
| -rw-r--r-- | ports/assimp/CONTROL | 4 | ||||
| -rw-r--r-- | ports/assimp/fix_minizip.patch | 32 | ||||
| -rw-r--r-- | ports/assimp/portfile.cmake | 7 | ||||
| -rw-r--r-- | ports/minizip/CMakeLists.txt | 27 | ||||
| -rw-r--r-- | ports/minizip/CONTROL | 2 | ||||
| -rw-r--r-- | ports/minizip/minizipConfig.cmake.in | 4 | ||||
| -rw-r--r-- | ports/minizip/portfile.cmake | 58 |
7 files changed, 93 insertions, 41 deletions
diff --git a/ports/assimp/CONTROL b/ports/assimp/CONTROL index ba4a89980..2e58fd6af 100644 --- a/ports/assimp/CONTROL +++ b/ports/assimp/CONTROL @@ -1,5 +1,5 @@ Source: assimp
-Version: 5.0.0-1
+Version: 5.0.0-2
Homepage: https://github.com/assimp/assimp
Description: The Open Asset import library
-Build-Depends: zlib, rapidjson
+Build-Depends: zlib, rapidjson, minizip
diff --git a/ports/assimp/fix_minizip.patch b/ports/assimp/fix_minizip.patch new file mode 100644 index 000000000..a0207ebe6 --- /dev/null +++ b/ports/assimp/fix_minizip.patch @@ -0,0 +1,32 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6c3d03e..4cb6927 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -470,12 +470,12 @@ ENDIF(HUNTER_ENABLED)
+
+ IF( NOT IOS )
+ IF( NOT ASSIMP_BUILD_MINIZIP )
+- use_pkgconfig(UNZIP minizip)
++ find_package(minizip CONFIG REQUIRED)
+ ENDIF( NOT ASSIMP_BUILD_MINIZIP )
+ ELSE ( NOT IOS )
+ IF( NOT BUILD_SHARED_LIBS )
+ IF( NOT ASSIMP_BUILD_MINIZIP )
+- use_pkgconfig(UNZIP minizip)
++ find_package(minizip CONFIG REQUIRED)
+ ENDIF( NOT ASSIMP_BUILD_MINIZIP )
+ ENDIF ( NOT BUILD_SHARED_LIBS )
+ ENDIF ( NOT IOS )
+diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt
+index 55538d9..30568ff 100644
+--- a/code/CMakeLists.txt
++++ b/code/CMakeLists.txt
+@@ -1125,7 +1125,7 @@ IF(HUNTER_ENABLED)
+ zip::zip
+ )
+ ELSE(HUNTER_ENABLED)
+- TARGET_LINK_LIBRARIES(assimp ${ZLIB_LIBRARIES} ${OPENDDL_PARSER_LIBRARIES} ${IRRXML_LIBRARY} )
++ TARGET_LINK_LIBRARIES(assimp ${ZLIB_LIBRARIES} ${OPENDDL_PARSER_LIBRARIES} ${IRRXML_LIBRARY} minizip::minizip)
+ ENDIF(HUNTER_ENABLED)
+
+ if(ASSIMP_ANDROID_JNIIOSYSTEM)
diff --git a/ports/assimp/portfile.cmake b/ports/assimp/portfile.cmake index 07c0534e8..99ef185bd 100644 --- a/ports/assimp/portfile.cmake +++ b/ports/assimp/portfile.cmake @@ -1,5 +1,3 @@ -include(vcpkg_common_functions) - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO assimp/assimp @@ -10,6 +8,7 @@ vcpkg_from_github( uninitialized-variable.patch fix-static-build-error.patch cmake-policy.patch + fix_minizip.patch ) file(REMOVE ${SOURCE_PATH}/cmake-modules/FindZLIB.cmake) @@ -67,6 +66,4 @@ endif() file(WRITE ${CURRENT_PACKAGES_DIR}/share/assimp/assimp-config.cmake "${ASSIMP_CONFIG}") -# Handle copyright -file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/assimp) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/assimp/LICENSE ${CURRENT_PACKAGES_DIR}/share/assimp/copyright) +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
\ No newline at end of file diff --git a/ports/minizip/CMakeLists.txt b/ports/minizip/CMakeLists.txt index b5c5d5dbc..c21b327f3 100644 --- a/ports/minizip/CMakeLists.txt +++ b/ports/minizip/CMakeLists.txt @@ -1,6 +1,11 @@ cmake_minimum_required(VERSION 3.8) project(minizip C) +set(PROJECT_VERSION 1.2.11) +set(PROJECT_VERSION_MAJOR 1) +set(PROJECT_VERSION_MINOR 2) +set(PROJECT_VERSION_PATCH 11) + if(MSVC) add_compile_options(/W3 /wd4005 /wd4996 /wd4018 -D_CRT_SECURE_NO_WARNINGS) endif() @@ -25,7 +30,6 @@ set(SRC ${MIN_SRC}/ioapi.c ${MIN_SRC}/unzip.c ${MIN_SRC}/zip.c - ${MIN_SRC}/unzip.c ${MIN_SRC}/mztools.c ) if(WIN32) @@ -37,7 +41,6 @@ set(HEADERS ${MIN_SRC}/ioapi.h ${MIN_SRC}/unzip.h ${MIN_SRC}/zip.h - ${MIN_SRC}/unzip.h ${MIN_SRC}/mztools.h ) if(WIN32) @@ -66,11 +69,31 @@ set_target_properties(miniunz_bin PROPERTIES OUTPUT_NAME miniunz) install( TARGETS minizip + EXPORT minizipTargets RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib ) +include(CMakePackageConfigHelpers) +write_basic_package_version_file("${PROJECT_BINARY_DIR}/minizipConfigVersion.cmake" + COMPATIBILITY SameMajorVersion) + +configure_package_config_file(${PROJECT_SOURCE_DIR}/cmake/minizipConfig.cmake.in + minizipConfig.cmake + INSTALL_DESTINATION share/minizip) + +install(FILES + "${PROJECT_BINARY_DIR}/minizipConfig.cmake" + "${PROJECT_BINARY_DIR}/minizipConfigVersion.cmake" + DESTINATION share/minizip +) + +install(EXPORT minizipTargets + NAMESPACE minizip:: + DESTINATION share/minizip +) + if(NOT DISABLE_INSTALL_TOOLS) install ( TARGETS minizip_bin miniunz_bin diff --git a/ports/minizip/CONTROL b/ports/minizip/CONTROL index 9570e945e..22ea0c9f3 100644 --- a/ports/minizip/CONTROL +++ b/ports/minizip/CONTROL @@ -1,5 +1,5 @@ Source: minizip
-Version: 1.2.11-5
+Version: 1.2.11-6
Build-Depends: zlib
Homepage: https://github.com/madler/zlib
Description: Zip compression library
diff --git a/ports/minizip/minizipConfig.cmake.in b/ports/minizip/minizipConfig.cmake.in new file mode 100644 index 000000000..9f27956c0 --- /dev/null +++ b/ports/minizip/minizipConfig.cmake.in @@ -0,0 +1,4 @@ +#@PACKAGE_INIT@
+
+include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Targets.cmake")
+check_required_components("@PROJECT_NAME@")
\ No newline at end of file diff --git a/ports/minizip/portfile.cmake b/ports/minizip/portfile.cmake index 86cfe9b9d..c1df89ac8 100644 --- a/ports/minizip/portfile.cmake +++ b/ports/minizip/portfile.cmake @@ -1,48 +1,44 @@ -include(vcpkg_common_functions) - -if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) - message(FATAL_ERROR "WindowsStore not supported") -endif() - +vcpkg_fail_port_install(ON_TARGET "uwp") vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO madler/zlib - REF v1.2.11 - SHA512 104c62ed1228b5f1199bc037081861576900eb0697a226cafa62a35c4c890b5cb46622e399f9aad82ee5dfb475bae26ae75e2bd6da3d261361b1c8b996970faf - HEAD_REF master - PATCHES minizip.patch # enable decrypt support for password-encrypted ZIP files + OUT_SOURCE_PATH SOURCE_PATH + REPO madler/zlib + REF v1.2.11 + SHA512 104c62ed1228b5f1199bc037081861576900eb0697a226cafa62a35c4c890b5cb46622e399f9aad82ee5dfb475bae26ae75e2bd6da3d261361b1c8b996970faf + HEAD_REF master + PATCHES minizip.patch # enable decrypt support for password-encrypted ZIP files ) -set(BUILD_minizip_bzip2 OFF) -if ("bzip2" IN_LIST FEATURES) - set(BUILD_minizip_bzip2 ON) -endif() +vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS + bzip2 ENABLE_BZIP2 +) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +configure_file(${CMAKE_CURRENT_LIST_DIR}/minizipConfig.cmake.in ${SOURCE_PATH}/cmake/minizipConfig.cmake.in COPYONLY) +configure_file(${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt ${SOURCE_PATH}/CMakeLists.txt COPYONLY) vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA - OPTIONS - -DENABLE_BZIP2=${BUILD_minizip_bzip2} - OPTIONS_DEBUG - -DDISABLE_INSTALL_HEADERS=ON -DDISABLE_INSTALL_TOOLS=ON + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + ${FEATURE_OPTIONS} + OPTIONS_DEBUG + -DDISABLE_INSTALL_HEADERS=ON + -DDISABLE_INSTALL_TOOLS=ON ) vcpkg_install_cmake() vcpkg_copy_pdbs() - +vcpkg_fixup_cmake_targets() vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/minizip) if ("bzip2" IN_LIST FEATURES) - file(GLOB HEADERS "${CURRENT_PACKAGES_DIR}/include/minizip/*.h") - foreach(HEADER ${HEADERS}) - file(READ "${HEADER}" _contents) - string(REPLACE "#ifdef HAVE_BZIP2" "#if 1" _contents "${_contents}") - file(WRITE "${HEADER}" "${_contents}") - endforeach() + file(GLOB HEADERS "${CURRENT_PACKAGES_DIR}/include/minizip/*.h") + foreach(HEADER ${HEADERS}) + file(READ "${HEADER}" _contents) + string(REPLACE "#ifdef HAVE_BZIP2" "#if 1" _contents "${_contents}") + file(WRITE "${HEADER}" "${_contents}") + endforeach() endif() -file(INSTALL ${SOURCE_PATH}/contrib/minizip/MiniZip64_info.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/minizip RENAME copyright) +file(INSTALL ${SOURCE_PATH}/contrib/minizip/MiniZip64_info.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) |
