From f4efe379113f5e172500aed1541ced879d24f0c7 Mon Sep 17 00:00:00 2001 From: Jamlys Lee Date: Tue, 30 Aug 2022 04:40:31 +0800 Subject: [PATCH] [libpng] fix mips64 support (#26265) * [libpng]fix mips64 support * [libpng]update port version * [libpng]update versiond database * fix msa support for mips * update port version database Co-authored-by: Jamlys Lee --- ports/libpng/fix-msa-support-for-mips.patch | 25 +++++++++++++++++++++ ports/libpng/portfile.cmake | 1 + ports/libpng/vcpkg.json | 2 +- versions/baseline.json | 2 +- versions/l-/libpng.json | 5 +++++ 5 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 ports/libpng/fix-msa-support-for-mips.patch diff --git a/ports/libpng/fix-msa-support-for-mips.patch b/ports/libpng/fix-msa-support-for-mips.patch new file mode 100644 index 00000000000000..b3290a0fd3380b --- /dev/null +++ b/ports/libpng/fix-msa-support-for-mips.patch @@ -0,0 +1,25 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 6c1d632..a2a0d0d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -158,8 +158,8 @@ endif() + # set definitions and sources for MIPS + if(CMAKE_SYSTEM_PROCESSOR MATCHES "mipsel*" OR + CMAKE_SYSTEM_PROCESSOR MATCHES "mips64el*") +- set(PNG_MIPS_MSA_POSSIBLE_VALUES on off) +- set(PNG_MIPS_MSA "on" CACHE STRING "Enable MIPS_MSA optimizations: ++ set(PNG_MIPS_MSA_POSSIBLE_VALUES on off check) ++ set(PNG_MIPS_MSA "check" CACHE STRING "Enable MIPS_MSA optimizations: + off: disable the optimizations") + set_property(CACHE PNG_MIPS_MSA PROPERTY STRINGS + ${PNG_MIPS_MSA_POSSIBLE_VALUES}) +@@ -173,6 +173,8 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "mipsel*" OR + mips/filter_msa_intrinsics.c) + if(${PNG_MIPS_MSA} STREQUAL "on") + add_definitions(-DPNG_MIPS_MSA_OPT=2) ++ else() ++ add_definitions(-DPNG_MIPS_MSA_CHECK_SUPPORTED) + endif() + else() + add_definitions(-DPNG_MIPS_MSA_OPT=0) + \ No newline at end of file diff --git a/ports/libpng/portfile.cmake b/ports/libpng/portfile.cmake index f9bf9f4b2583e6..7f681a915efa5e 100644 --- a/ports/libpng/portfile.cmake +++ b/ports/libpng/portfile.cmake @@ -43,6 +43,7 @@ vcpkg_from_github( fix-export-targets.patch pkgconfig.patch macos-arch-fix.patch + fix-msa-support-for-mips.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" PNG_SHARED) diff --git a/ports/libpng/vcpkg.json b/ports/libpng/vcpkg.json index 8ff5901531a5df..74c0dbcb0b1260 100644 --- a/ports/libpng/vcpkg.json +++ b/ports/libpng/vcpkg.json @@ -1,7 +1,7 @@ { "name": "libpng", "version": "1.6.37", - "port-version": 18, + "port-version": 19, "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", diff --git a/versions/baseline.json b/versions/baseline.json index 565b43960fd249..51ac198b533997 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -3990,7 +3990,7 @@ }, "libpng": { "baseline": "1.6.37", - "port-version": 18 + "port-version": 19 }, "libpopt": { "baseline": "1.16", diff --git a/versions/l-/libpng.json b/versions/l-/libpng.json index da868b875a1739..782224d16e049d 100644 --- a/versions/l-/libpng.json +++ b/versions/l-/libpng.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "85dc7678690f09c78cc366b1f13498c41be51aff", + "version": "1.6.37", + "port-version": 19 + }, { "git-tree": "5e3ec787e7c6f09dd162648b700aeb712af0ffd2", "version": "1.6.37",