From d990bda2f9b291cdd71b6d36081ab1b24dfb186e Mon Sep 17 00:00:00 2001 From: Osyotr Date: Fri, 8 Nov 2024 20:15:42 +0300 Subject: [PATCH 1/7] [libpng] Update to 1.6.44, add feature tools --- ...-targets.patch => add-libpng-config.patch} | 2 +- ports/libpng/fix-msa-support-for-mips.patch | 2 +- ports/libpng/portfile.cmake | 23 +++++++++++++++---- ports/libpng/vcpkg-cmake-wrapper.cmake | 3 --- ports/libpng/vcpkg.json | 13 +++++++++-- versions/baseline.json | 4 ++-- versions/l-/libpng.json | 5 ++++ 7 files changed, 38 insertions(+), 14 deletions(-) rename ports/libpng/{fix-export-targets.patch => add-libpng-config.patch} (89%) delete mode 100644 ports/libpng/vcpkg-cmake-wrapper.cmake diff --git a/ports/libpng/fix-export-targets.patch b/ports/libpng/add-libpng-config.patch similarity index 89% rename from ports/libpng/fix-export-targets.patch rename to ports/libpng/add-libpng-config.patch index 1cf66784bc4656..ae9070f4c3886b 100644 --- a/ports/libpng/fix-export-targets.patch +++ b/ports/libpng/add-libpng-config.patch @@ -14,4 +14,4 @@ index eaba327..dbd31d7 100644 + install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libpng-config.cmake" DESTINATION "${CMAKE_INSTALL_LIBDIR}/libpng") endif() - # TODO: Create MSVC import lib for MinGW-compiled shared lib. + # Create a CMake Config File that can be used via find_package(PNG CONFIG) diff --git a/ports/libpng/fix-msa-support-for-mips.patch b/ports/libpng/fix-msa-support-for-mips.patch index 648de85d814e77..7b6e6d18b66f64 100644 --- a/ports/libpng/fix-msa-support-for-mips.patch +++ b/ports/libpng/fix-msa-support-for-mips.patch @@ -5,7 +5,7 @@ index 3857b82..4c68989 100644 @@ -221,8 +221,8 @@ endif() # Set definitions and sources for MIPS. - if(TARGET_ARCH MATCHES "^(mipsel|mips64el)") + if(PNG_TARGET_ARCHITECTURE MATCHES "^(mipsel|mips64el)") - set(PNG_MIPS_MSA_POSSIBLE_VALUES on off) - set(PNG_MIPS_MSA "on" + set(PNG_MIPS_MSA_POSSIBLE_VALUES on off check) diff --git a/ports/libpng/portfile.cmake b/ports/libpng/portfile.cmake index 24eb37e4b92ed9..746c2fbc539189 100644 --- a/ports/libpng/portfile.cmake +++ b/ports/libpng/portfile.cmake @@ -12,7 +12,7 @@ if ("apng" IN_LIST FEATURES) vcpkg_download_distfile(LIBPNG_APNG_PATCH_ARCHIVE URLS "https://downloads.sourceforge.net/project/libpng-apng/libpng16/${VERSION}/${LIBPNG_APNG_PATCH_NAME}.gz" FILENAME "${LIBPNG_APNG_PATCH_NAME}.gz" - SHA512 a724f7de486920cb119818f7172fb589bc2c3c1cc1f81bb5c4da0609ab108ef9ef7406cf689a20bc4e8da69647847f550ed497b3fa99a10539e9a0abf492c053 + SHA512 ea89018a02ed171b82af9644ec2ff658c8a288e99b5470c7a3fd142c6fa95bbe19cd34c4fae654bc8783b41c3eb3b2d15b486bda3b0307ec3090e99f34465e20 ) set(LIBPNG_APNG_PATCH_PATH "${CURRENT_BUILDTREES_DIR}/src/${LIBPNG_APNG_PATCH_NAME}") if (NOT EXISTS "${LIBPNG_APNG_PATCH_PATH}") @@ -30,12 +30,12 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO glennrp/libpng REF v${VERSION} - SHA512 3bb2a7b73113be42b09c2116e6c6f5a7ddb4e2ab06e0b13e10b7314acdccc4bb624ff602e16140c0484f6cde80efa190296226be3da195c6926819f07c723c12 + SHA512 c023bc7dcf3d0ea045a63204f2266b2c53b601b99d7c5f5a7b547bc9a48b205a277f699eefa47f136483f495175b226527097cd447d6b0fbceb029eb43638f63 HEAD_REF master PATCHES "${LIBPNG_APNG_PATCH_PATH}" cmake.patch - fix-export-targets.patch + add-libpng-config.patch # for backwards compatibility libm.patch pkgconfig.patch fix-msa-support-for-mips.patch @@ -44,6 +44,14 @@ vcpkg_from_github( string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" PNG_SHARED) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" PNG_STATIC) +vcpkg_check_features( + OUT_FEATURE_OPTIONS FEATURE_OPTIONS + FEATURES + tools PNG_TOOLS + INVERTED_FEATURES + tools SKIP_INSTALL_PROGRAMS +) + vcpkg_list(SET LIBPNG_HARDWARE_OPTIMIZATIONS_OPTION) if(VCPKG_TARGET_IS_IOS) vcpkg_list(APPEND LIBPNG_HARDWARE_OPTIMIZATIONS_OPTION "-DPNG_HARDWARE_OPTIMIZATIONS=OFF") @@ -77,17 +85,17 @@ vcpkg_cmake_configure( -DPNG_SHARED=${PNG_SHARED} -DPNG_FRAMEWORK=OFF -DPNG_TESTS=OFF - -DSKIP_INSTALL_PROGRAMS=ON -DSKIP_INSTALL_EXECUTABLES=ON -DSKIP_INSTALL_FILES=OFF + ${FEATURE_OPTIONS} OPTIONS_DEBUG -DSKIP_INSTALL_HEADERS=ON MAYBE_UNUSED_VARIABLES PNG_ARM_NEON ) vcpkg_cmake_install() +vcpkg_cmake_config_fixup(PACKAGE_NAME PNG CONFIG_PATH lib/cmake/PNG) vcpkg_cmake_config_fixup(CONFIG_PATH lib/libpng) -file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/png") vcpkg_fixup_pkgconfig() if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW) @@ -103,6 +111,11 @@ endif() file(INSTALL "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/libpng16.pc" DESTINATION "${CURRENT_PACKAGES_DIR}/lib/pkgconfig" RENAME "libpng.pc") vcpkg_copy_pdbs() + +if(PNG_TOOLS) + vcpkg_copy_tools(TOOL_NAMES "pngfix" "png-fix-itxt" AUTO_CLEAN) +endif() + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE") diff --git a/ports/libpng/vcpkg-cmake-wrapper.cmake b/ports/libpng/vcpkg-cmake-wrapper.cmake deleted file mode 100644 index de1e087fcebfe4..00000000000000 --- a/ports/libpng/vcpkg-cmake-wrapper.cmake +++ /dev/null @@ -1,3 +0,0 @@ -find_library(PNG_LIBRARY_RELEASE NAMES png16 libpng16 NAMES_PER_DIR PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib" NO_DEFAULT_PATH) -find_library(PNG_LIBRARY_DEBUG NAMES png16d libpng16d NAMES_PER_DIR PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/lib" NO_DEFAULT_PATH) -_find_package(${ARGS}) diff --git a/ports/libpng/vcpkg.json b/ports/libpng/vcpkg.json index 10c54485a0aebd..0b1bc7cbc28ae6 100644 --- a/ports/libpng/vcpkg.json +++ b/ports/libpng/vcpkg.json @@ -1,7 +1,6 @@ { "name": "libpng", - "version": "1.6.43", - "port-version": 3, + "version": "1.6.44", "description": "libpng is a library implementing an interface for reading and writing PNG (Portable Network Graphics) format files", "homepage": "https://github.com/glennrp/libpng", "license": "libpng-2.0", @@ -21,9 +20,19 @@ }, "zlib" ], + "default-features": [ + { + "name": "tools", + "platform": "!android & !ios" + } + ], "features": { "apng": { "description": "This is backward compatible with the regular libpng, both in library usage and format" + }, + "tools": { + "description": "Build the libpng tools", + "supports": "!android & !ios" } } } diff --git a/versions/baseline.json b/versions/baseline.json index de0168fbfb087b..37bf27fc248e5a 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -4957,8 +4957,8 @@ "port-version": 1 }, "libpng": { - "baseline": "1.6.43", - "port-version": 3 + "baseline": "1.6.44", + "port-version": 0 }, "libpopt": { "baseline": "1.16", diff --git a/versions/l-/libpng.json b/versions/l-/libpng.json index f6b5ac36b53714..ef451abcce8738 100644 --- a/versions/l-/libpng.json +++ b/versions/l-/libpng.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "ae42afc545c346e571c74e3762b0d777884a4583", + "version": "1.6.44", + "port-version": 0 + }, { "git-tree": "9c7fd06f1cdd1dfc08b35ca9d6b0ba470cdd2470", "version": "1.6.43", From a3c14ebf4ad6d8afda93475746d3b723a56a5f0c Mon Sep 17 00:00:00 2001 From: Osyotr Date: Fri, 8 Nov 2024 20:46:57 +0300 Subject: [PATCH 2/7] Tools are only available in dynamic builds --- ports/libpng/vcpkg.json | 4 ++-- versions/l-/libpng.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/libpng/vcpkg.json b/ports/libpng/vcpkg.json index 0b1bc7cbc28ae6..23e0309f4eaaa4 100644 --- a/ports/libpng/vcpkg.json +++ b/ports/libpng/vcpkg.json @@ -23,7 +23,7 @@ "default-features": [ { "name": "tools", - "platform": "!android & !ios" + "platform": "!android & !ios & !static" } ], "features": { @@ -32,7 +32,7 @@ }, "tools": { "description": "Build the libpng tools", - "supports": "!android & !ios" + "supports": "!android & !ios & !static" } } } diff --git a/versions/l-/libpng.json b/versions/l-/libpng.json index ef451abcce8738..ae9ab3ba5f13e9 100644 --- a/versions/l-/libpng.json +++ b/versions/l-/libpng.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "ae42afc545c346e571c74e3762b0d777884a4583", + "git-tree": "9e0c7b3b3f71ac56890fcf9756c3c1f8d7ab7b01", "version": "1.6.44", "port-version": 0 }, From 2eda4983e2a6dbd704f3fb4233cfe6dc693688fa Mon Sep 17 00:00:00 2001 From: Osyotr Date: Fri, 8 Nov 2024 21:14:54 +0300 Subject: [PATCH 3/7] Restore vcpkg-cmake-wrapper, add warning for libpng-config usage, patch for static tools --- ports/libpng/add-libpng-config.patch | 17 ----------------- ports/libpng/fix-tools-static.patch | 16 ++++++++++++++++ ports/libpng/libpng-config.cmake | 12 ++++++++++++ ports/libpng/portfile.cmake | 6 +++++- ports/libpng/usage | 6 +++--- ports/libpng/vcpkg-cmake-wrapper.cmake | 3 +++ ports/libpng/vcpkg.json | 4 ++-- versions/l-/libpng.json | 2 +- 8 files changed, 42 insertions(+), 24 deletions(-) delete mode 100644 ports/libpng/add-libpng-config.patch create mode 100644 ports/libpng/fix-tools-static.patch create mode 100644 ports/libpng/libpng-config.cmake create mode 100644 ports/libpng/vcpkg-cmake-wrapper.cmake diff --git a/ports/libpng/add-libpng-config.patch b/ports/libpng/add-libpng-config.patch deleted file mode 100644 index ae9070f4c3886b..00000000000000 --- a/ports/libpng/add-libpng-config.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index eaba327..dbd31d7 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1126,6 +1126,12 @@ if(NOT SKIP_INSTALL_EXPORT AND NOT SKIP_INSTALL_ALL) - install(EXPORT libpng - DESTINATION ${CMAKE_INSTALL_LIBDIR}/libpng - FILE libpng${PNGLIB_ABI_VERSION}.cmake) -+ file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/libpng-config.cmake" " -+ include(CMakeFindDependencyMacro) -+ find_dependency(ZLIB) -+ include(\"\${CMAKE_CURRENT_LIST_DIR}/libpng${PNGLIB_ABI_VERSION}.cmake\") -+ ") -+ install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libpng-config.cmake" DESTINATION "${CMAKE_INSTALL_LIBDIR}/libpng") - endif() - - # Create a CMake Config File that can be used via find_package(PNG CONFIG) diff --git a/ports/libpng/fix-tools-static.patch b/ports/libpng/fix-tools-static.patch new file mode 100644 index 00000000000000..74ff71dd7b8db5 --- /dev/null +++ b/ports/libpng/fix-tools-static.patch @@ -0,0 +1,16 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 3857b82..4c68989 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -963,9 +963,9 @@ + FILES ${PNGSUITE_PNGS}) + endif() + +-if(PNG_SHARED AND PNG_TOOLS) ++if(PNG_TOOLS) + add_executable(pngfix ${pngfix_sources}) +- target_link_libraries(pngfix PRIVATE png_shared) ++ target_link_libraries(pngfix PRIVATE $ $) # in vcpkg there's only one + set(PNG_BIN_TARGETS pngfix) + + add_executable(png-fix-itxt ${png_fix_itxt_sources}) diff --git a/ports/libpng/libpng-config.cmake b/ports/libpng/libpng-config.cmake new file mode 100644 index 00000000000000..7ea586b45fc771 --- /dev/null +++ b/ports/libpng/libpng-config.cmake @@ -0,0 +1,12 @@ +file(READ "${CMAKE_CURRENT_LIST_DIR}/usage" usage) +message(WARNING "find_package(libpng) is deprecated.\n${usage}") + +include(CMakeFindDependencyMacro) +find_dependency(PNG CONFIG REQUIRED) + +if(NOT TARGET png_shared) + add_library(png_shared ALIAS PNG::PNG) +endif() +if(NOT TARGET png_static) + add_library(png_static ALIAS PNG::PNG) +endif() diff --git a/ports/libpng/portfile.cmake b/ports/libpng/portfile.cmake index 746c2fbc539189..61191d61260b95 100644 --- a/ports/libpng/portfile.cmake +++ b/ports/libpng/portfile.cmake @@ -35,10 +35,10 @@ vcpkg_from_github( PATCHES "${LIBPNG_APNG_PATCH_PATH}" cmake.patch - add-libpng-config.patch # for backwards compatibility libm.patch pkgconfig.patch fix-msa-support-for-mips.patch + fix-tools-static.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" PNG_SHARED) @@ -96,6 +96,10 @@ vcpkg_cmake_configure( vcpkg_cmake_install() vcpkg_cmake_config_fixup(PACKAGE_NAME PNG CONFIG_PATH lib/cmake/PNG) vcpkg_cmake_config_fixup(CONFIG_PATH lib/libpng) +file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/png") + +# unofficial legacy usage +file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/libpng-config.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") vcpkg_fixup_pkgconfig() if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW) diff --git a/ports/libpng/usage b/ports/libpng/usage index 19203399c64140..628d844ed9cd2e 100644 --- a/ports/libpng/usage +++ b/ports/libpng/usage @@ -1,4 +1,4 @@ -The package libpng is compatible with built-in CMake targets: +libpng provides CMake targets: - find_package(PNG REQUIRED) - target_link_libraries(main PRIVATE PNG::PNG) + find_package(PNG REQUIRED) + target_link_libraries(main PRIVATE PNG::PNG) diff --git a/ports/libpng/vcpkg-cmake-wrapper.cmake b/ports/libpng/vcpkg-cmake-wrapper.cmake new file mode 100644 index 00000000000000..de1e087fcebfe4 --- /dev/null +++ b/ports/libpng/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,3 @@ +find_library(PNG_LIBRARY_RELEASE NAMES png16 libpng16 NAMES_PER_DIR PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib" NO_DEFAULT_PATH) +find_library(PNG_LIBRARY_DEBUG NAMES png16d libpng16d NAMES_PER_DIR PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/lib" NO_DEFAULT_PATH) +_find_package(${ARGS}) diff --git a/ports/libpng/vcpkg.json b/ports/libpng/vcpkg.json index 23e0309f4eaaa4..0b1bc7cbc28ae6 100644 --- a/ports/libpng/vcpkg.json +++ b/ports/libpng/vcpkg.json @@ -23,7 +23,7 @@ "default-features": [ { "name": "tools", - "platform": "!android & !ios & !static" + "platform": "!android & !ios" } ], "features": { @@ -32,7 +32,7 @@ }, "tools": { "description": "Build the libpng tools", - "supports": "!android & !ios & !static" + "supports": "!android & !ios" } } } diff --git a/versions/l-/libpng.json b/versions/l-/libpng.json index ae9ab3ba5f13e9..80fbefffc8dfa3 100644 --- a/versions/l-/libpng.json +++ b/versions/l-/libpng.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "9e0c7b3b3f71ac56890fcf9756c3c1f8d7ab7b01", + "git-tree": "8f0159cdff7413e936436705f280f728ff70ac69", "version": "1.6.44", "port-version": 0 }, From 12022601a2572887a2e47cb09fe11fbc21e021b2 Mon Sep 17 00:00:00 2001 From: Osyotr Date: Sat, 9 Nov 2024 00:15:50 +0300 Subject: [PATCH 4/7] Fix config dir Co-authored-by: Kai Pastor --- ports/libpng/portfile.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/libpng/portfile.cmake b/ports/libpng/portfile.cmake index 61191d61260b95..f653b153d65ae1 100644 --- a/ports/libpng/portfile.cmake +++ b/ports/libpng/portfile.cmake @@ -94,7 +94,7 @@ vcpkg_cmake_configure( PNG_ARM_NEON ) vcpkg_cmake_install() -vcpkg_cmake_config_fixup(PACKAGE_NAME PNG CONFIG_PATH lib/cmake/PNG) +vcpkg_cmake_config_fixup(PACKAGE_NAME png CONFIG_PATH lib/cmake/PNG) vcpkg_cmake_config_fixup(CONFIG_PATH lib/libpng) file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/png") From 669e488f3bef09dda9b6d5eea00473fa77f53f61 Mon Sep 17 00:00:00 2001 From: Osyotr Date: Sat, 9 Nov 2024 00:16:57 +0300 Subject: [PATCH 5/7] v db --- versions/l-/libpng.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/l-/libpng.json b/versions/l-/libpng.json index 80fbefffc8dfa3..18f48d976fc38d 100644 --- a/versions/l-/libpng.json +++ b/versions/l-/libpng.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "8f0159cdff7413e936436705f280f728ff70ac69", + "git-tree": "40ccd67005da4a0b43d947f30786c5eed7f21731", "version": "1.6.44", "port-version": 0 }, From b760ea104a43b895d81b41501ad9ce6d45bea936 Mon Sep 17 00:00:00 2001 From: Osyotr Date: Tue, 12 Nov 2024 17:31:46 +0300 Subject: [PATCH 6/7] Don't enable tools by default --- ports/libpng/vcpkg.json | 6 ------ versions/l-/libpng.json | 2 +- 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/ports/libpng/vcpkg.json b/ports/libpng/vcpkg.json index 0b1bc7cbc28ae6..39f2b499510396 100644 --- a/ports/libpng/vcpkg.json +++ b/ports/libpng/vcpkg.json @@ -20,12 +20,6 @@ }, "zlib" ], - "default-features": [ - { - "name": "tools", - "platform": "!android & !ios" - } - ], "features": { "apng": { "description": "This is backward compatible with the regular libpng, both in library usage and format" diff --git a/versions/l-/libpng.json b/versions/l-/libpng.json index 18f48d976fc38d..8738f8fb466b05 100644 --- a/versions/l-/libpng.json +++ b/versions/l-/libpng.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "40ccd67005da4a0b43d947f30786c5eed7f21731", + "git-tree": "d3a6344c2435c452408add0dd449c4a683c13096", "version": "1.6.44", "port-version": 0 }, From e4b6b9d927d58b89e7ea0e5e315af66c71a0909e Mon Sep 17 00:00:00 2001 From: Osyotr Date: Tue, 12 Nov 2024 17:33:28 +0300 Subject: [PATCH 7/7] Remove REQUIRED from config --- ports/libpng/libpng-config.cmake | 2 +- versions/l-/libpng.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/libpng/libpng-config.cmake b/ports/libpng/libpng-config.cmake index 7ea586b45fc771..a2644487d4a11e 100644 --- a/ports/libpng/libpng-config.cmake +++ b/ports/libpng/libpng-config.cmake @@ -2,7 +2,7 @@ file(READ "${CMAKE_CURRENT_LIST_DIR}/usage" usage) message(WARNING "find_package(libpng) is deprecated.\n${usage}") include(CMakeFindDependencyMacro) -find_dependency(PNG CONFIG REQUIRED) +find_dependency(PNG CONFIG) if(NOT TARGET png_shared) add_library(png_shared ALIAS PNG::PNG) diff --git a/versions/l-/libpng.json b/versions/l-/libpng.json index 8738f8fb466b05..26a79377e51549 100644 --- a/versions/l-/libpng.json +++ b/versions/l-/libpng.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "d3a6344c2435c452408add0dd449c4a683c13096", + "git-tree": "bda480fe3c3cef1113fe8bfdecda127a5b3b2a77", "version": "1.6.44", "port-version": 0 },