From 64c07e5f4e0c0cb97e7c07df17104ed2b0571ec8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dawid=20Wr=C3=B3bel?= Date: Wed, 2 Jun 2021 20:53:16 -0400 Subject: [libgpg-error] update to 1.42, add Windows support, arm fixes (#16932) * [libgpg-error] update to 1.41, support Win, fix linux-arm - Support Windows builds using ShiftMediaProject - Update to 1.41 (latest by ShiftMediaProject) - Fix linux-arm build - Also convert CONTROL to JSON manifest format * [libgpg-error] update versions * [libgpg-error] use git tag instead of sha Co-authored-by: Robert Schumacher * [libgpg-error] warn about using ShiftMediaProject fork Co-authored-by: Robert Schumacher * [libgpg-error] 'Rebuild' target is implied and redundant Co-authored-by: Robert Schumacher * [libgpg-error] remove leftover from nettle port Co-authored-by: Robert Schumacher * [libgpg-error] fix compilation issues * [libgpg-error] update to 1.42 * [libgpg-error] update versions * [libgpg-error] attempt to fix x64-windows-static-md triplet * [libgpg-error] update versions Co-authored-by: Robert Schumacher --- ports/libgpg-error/CONTROL | 6 - ports/libgpg-error/outdir.patch | 152 ++++++++++++++++++++++++ ports/libgpg-error/portfile.cmake | 119 +++++++++++++++---- ports/libgpg-error/runtime.patch | 244 ++++++++++++++++++++++++++++++++++++++ ports/libgpg-error/vcpkg.json | 7 ++ versions/baseline.json | 4 +- versions/l-/libgpg-error.json | 5 + 7 files changed, 504 insertions(+), 33 deletions(-) delete mode 100644 ports/libgpg-error/CONTROL create mode 100644 ports/libgpg-error/outdir.patch create mode 100644 ports/libgpg-error/runtime.patch create mode 100644 ports/libgpg-error/vcpkg.json diff --git a/ports/libgpg-error/CONTROL b/ports/libgpg-error/CONTROL deleted file mode 100644 index c5a308456..000000000 --- a/ports/libgpg-error/CONTROL +++ /dev/null @@ -1,6 +0,0 @@ -Source: libgpg-error -Version: 1.39 -Port-Version: 1 -Homepage: https://gnupg.org/software/libgpg-error/index.html -Description: A common dependency of all GnuPG components -Supports: !windows diff --git a/ports/libgpg-error/outdir.patch b/ports/libgpg-error/outdir.patch new file mode 100644 index 000000000..db87bfde6 --- /dev/null +++ b/ports/libgpg-error/outdir.patch @@ -0,0 +1,152 @@ +diff --git a/SMP/smp.props b/SMP/smp.props +index e2ed214..fc70bd8 100644 +--- a/SMP/smp.props ++++ b/SMP/smp.props +@@ -87,7 +87,7 @@ + + + lib$(RootNamespace)d +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -95,7 +95,7 @@ + + + lib$(RootNamespace)d +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -103,7 +103,7 @@ + + + $(RootNamespace)d +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -111,7 +111,7 @@ + + + $(RootNamespace)d +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -119,7 +119,7 @@ + + + lib$(RootNamespace) +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -127,7 +127,7 @@ + + + lib$(RootNamespace) +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -135,7 +135,7 @@ + + + $(RootNamespace) +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -143,7 +143,7 @@ + + + $(RootNamespace) +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +diff --git a/SMP/smp_winrt.props b/SMP/smp_winrt.props +index 9b453a5..cb5f090 100644 +--- a/SMP/smp_winrt.props ++++ b/SMP/smp_winrt.props +@@ -98,7 +98,7 @@ + + + lib$(RootNamespace)d_winrt +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -106,7 +106,7 @@ + + + lib$(RootNamespace)d_winrt +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -114,7 +114,7 @@ + + + $(RootNamespace)d_winrt +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -122,7 +122,7 @@ + + + $(RootNamespace)d_winrt +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -130,7 +130,7 @@ + + + lib$(RootNamespace)_winrt +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -138,7 +138,7 @@ + + + lib$(RootNamespace)_winrt +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -146,7 +146,7 @@ + + + $(RootNamespace)_winrt +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean +@@ -154,7 +154,7 @@ + + + $(RootNamespace)_winrt +- $(ProjectDir)..\..\..\msvc\ ++ $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated + Clean diff --git a/ports/libgpg-error/portfile.cmake b/ports/libgpg-error/portfile.cmake index 90d199cbf..19e6e3c2f 100644 --- a/ports/libgpg-error/portfile.cmake +++ b/ports/libgpg-error/portfile.cmake @@ -1,27 +1,96 @@ -vcpkg_fail_port_install(MESSAGE "${PORT} currently only supports unix platform" ON_TARGET "Windows") - -vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO gpg/libgpg-error - REF libgpg-error-1.39 - SHA512 c8ca3fc9f1bec90a84214c8fed6073f5a0f6f6880c166a8737a24e0eee841ed5f0f3c94028b50b76535cb2e06f0362b19638e429b4cdc399487d6001b977bbbe - HEAD_REF master +set (PACKAGE_VERSION 1.42) + +if(VCPKG_TARGET_IS_WINDOWS) + message(WARNING "libgpg-error on Windows uses a fork managed by the ShiftMediaProject: https://shiftmediaproject.github.io/") + vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO ShiftMediaProject/libgpg-error + REF libgpg-error-${PACKAGE_VERSION} + SHA512 2dbf41e28196f4b99d641a430e6e77566ae2d389bbe9d6f6e310d56a5ca90de9b9ae225a3eee979fe4606d36878d3db6f777162d697de717b4748151dd3525d0 + HEAD_REF master + PATCHES + outdir.patch + runtime.patch + ) + + if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + set(CONFIGURATION_RELEASE ReleaseDLL) + set(CONFIGURATION_DEBUG DebugDLL) + else() + set(CONFIGURATION_RELEASE Release) + set(CONFIGURATION_DEBUG Debug) + endif() + + if(VCPKG_TARGET_IS_UWP) + string(APPEND CONFIGURATION_RELEASE WinRT) + string(APPEND CONFIGURATION_DEBUG WinRT) + endif() + + if(VCPKG_TARGET_IS_UWP) + set(_gpg-errorproject "${SOURCE_PATH}/SMP/libgpg-error_winrt.vcxproj") + else() + set(_gpg-errorproject "${SOURCE_PATH}/SMP/libgpg-error.vcxproj") + endif() + + if(VCPKG_CRT_LINKAGE STREQUAL "static") + set(RuntimeLibraryExt "") + else() + set(RuntimeLibraryExt "DLL") + endif() + + vcpkg_install_msbuild( + USE_VCPKG_INTEGRATION + SOURCE_PATH ${SOURCE_PATH} + PROJECT_SUBPATH SMP/libgpg-error.sln + PLATFORM ${TRIPLET_SYSTEM_ARCH} + LICENSE_SUBPATH COPYING.LIB + RELEASE_CONFIGURATION ${CONFIGURATION_RELEASE} + DEBUG_CONFIGURATION ${CONFIGURATION_DEBUG} + SKIP_CLEAN + OPTIONS_DEBUG "/p:RuntimeLibrary=MultiThreadedDebug${RuntimeLibraryExt}" + OPTIONS_RELEASE "/p:RuntimeLibrary=MultiThreaded${RuntimeLibraryExt}" + ) + + get_filename_component(SOURCE_PATH_SUFFIX "${SOURCE_PATH}" NAME) + file(RENAME "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/${SOURCE_PATH_SUFFIX}/msvc/include" "${CURRENT_PACKAGES_DIR}/include") + + set(exec_prefix "\${prefix}") + set(libdir "\${prefix}/lib") + set(includedir "\${prefix}/include") + set(GPG_ERROR_CONFIG_LIBS "-L\${libdir} -lgpg-error") + configure_file("${SOURCE_PATH}/src/gpg-error.pc.in" "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/gpg-error.pc" @ONLY) + + set(exec_prefix "\${prefix}") + set(libdir "\${prefix}/lib") + set(includedir "\${prefix}/../include") + set(GPG_ERROR_CONFIG_LIBS "-L\${libdir} -lgpg-errord") + configure_file("${SOURCE_PATH}/src/gpg-error.pc.in" "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/gpg-error.pc" @ONLY) + vcpkg_fixup_pkgconfig() + vcpkg_copy_pdbs() +else() + vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO gpg/libgpg-error + REF libgpg-error-${PACKAGE_VERSION} + SHA512 f5a1c1874ac1dee36ee01504f1ab0146506aa7af810879e192eac17a31ec81945fe850953ea1c57188590c023ce3ff195c7cab62af486b731fa1534546d66ba3 + HEAD_REF master PATCHES add_cflags_to_tools.patch -) - -vcpkg_configure_make( - AUTOCONFIG - SOURCE_PATH ${SOURCE_PATH} - OPTIONS - --disable-tests - --disable-doc - --disable-silent-rules -) - -vcpkg_install_make() -vcpkg_fixup_pkgconfig() -vcpkg_copy_pdbs() - -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -file(INSTALL ${SOURCE_PATH}/COPYING.LIB DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) + ) + + vcpkg_configure_make( + AUTOCONFIG + SOURCE_PATH ${SOURCE_PATH} + OPTIONS + --disable-tests + --disable-doc + --disable-silent-rules + ) + + vcpkg_install_make() + vcpkg_fixup_pkgconfig() + vcpkg_copy_pdbs() + + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/locale ${CURRENT_PACKAGES_DIR}/debug/share) + file(INSTALL ${SOURCE_PATH}/COPYING.LIB DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) +endif() diff --git a/ports/libgpg-error/runtime.patch b/ports/libgpg-error/runtime.patch new file mode 100644 index 000000000..333985081 --- /dev/null +++ b/ports/libgpg-error/runtime.patch @@ -0,0 +1,244 @@ +diff --git a/SMP/smp.props b/SMP/smp.props +index fc70bd8..d515523 100644 +--- a/SMP/smp.props ++++ b/SMP/smp.props +@@ -86,7 +86,7 @@ + + + +- lib$(RootNamespace)d ++ $(RootNamespace)d + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -94,7 +94,7 @@ + MSB8012 + + +- lib$(RootNamespace)d ++ $(RootNamespace)d + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -118,7 +118,7 @@ + MSB8012 + + +- lib$(RootNamespace) ++ $(RootNamespace) + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -126,7 +126,7 @@ + MSB8012 + + +- lib$(RootNamespace) ++ $(RootNamespace) + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -159,6 +159,7 @@ + $(OutDir)\lib\x86\$(TargetName).pdb + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\lib\x86\$(TargetName)$(TargetExt) +@@ -177,6 +178,7 @@ + $(OutDir)\lib\x64\$(TargetName).pdb + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\lib\x64\$(TargetName)$(TargetExt) +@@ -196,6 +198,7 @@ + $(IntDir)$(TargetName).pdb + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\bin\x86\$(TargetName)$(TargetExt) +@@ -219,6 +222,7 @@ + $(IntDir)$(TargetName).pdb + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\bin\x64\$(TargetName)$(TargetExt) +@@ -248,6 +252,7 @@ + SingleFile + $(OutDir)\lib\x86\$(TargetName).pdb + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\lib\x86\$(TargetName)$(TargetExt) +@@ -273,6 +278,7 @@ + SingleFile + $(OutDir)\lib\x64\$(TargetName).pdb + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\lib\x64\$(TargetName)$(TargetExt) +@@ -297,6 +303,7 @@ + $(OutDir)\include;$(ProjectDir)\..\..\prebuilt\include;%(AdditionalIncludeDirectories) + $(IntDir)$(TargetName).pdb + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + true +@@ -328,6 +335,7 @@ + $(OutDir)\include;$(ProjectDir)\..\..\prebuilt\include;%(AdditionalIncludeDirectories) + $(IntDir)$(TargetName).pdb + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + true +diff --git a/SMP/smp_winrt.props b/SMP/smp_winrt.props +index cb5f090..f7d8e23 100644 +--- a/SMP/smp_winrt.props ++++ b/SMP/smp_winrt.props +@@ -97,7 +97,7 @@ + + + +- lib$(RootNamespace)d_winrt ++ $(RootNamespace)d + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -105,7 +105,7 @@ + MSB8012 + + +- lib$(RootNamespace)d_winrt ++ $(RootNamespace)d + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -113,7 +113,7 @@ + MSB8012 + + +- $(RootNamespace)d_winrt ++ $(RootNamespace)d + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -121,7 +121,7 @@ + MSB8012 + + +- $(RootNamespace)d_winrt ++ $(RootNamespace)d + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -129,7 +129,7 @@ + MSB8012 + + +- lib$(RootNamespace)_winrt ++ $(RootNamespace) + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -137,7 +137,7 @@ + MSB8012 + + +- lib$(RootNamespace)_winrt ++ $(RootNamespace) + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -145,7 +145,7 @@ + MSB8012 + + +- $(RootNamespace)_winrt ++ $(RootNamespace) + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -153,7 +153,7 @@ + MSB8012 + + +- $(RootNamespace)_winrt ++ $(RootNamespace) + $(ProjectDir)..\msvc\ + $(ProjectDir)obj\$(Configuration)\$(Platform)\$(ProjectName)\ + $(ProjectDir)obj\Generated +@@ -172,6 +172,7 @@ + NotUsing + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\lib\x86\$(TargetName)$(TargetExt) +@@ -192,6 +193,7 @@ + NotUsing + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\lib\x64\$(TargetName)$(TargetExt) +@@ -213,6 +215,7 @@ + NotUsing + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\bin\x86\$(TargetName)$(TargetExt) +@@ -240,6 +243,7 @@ + NotUsing + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\bin\x64\$(TargetName)$(TargetExt) +@@ -273,6 +277,7 @@ + NotUsing + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\lib\x86\$(TargetName)$(TargetExt) +@@ -301,6 +306,7 @@ + NotUsing + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + $(OutDir)\lib\x64\$(TargetName)$(TargetExt) +@@ -327,6 +333,7 @@ + NotUsing + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + true +@@ -362,6 +369,7 @@ + NotUsing + false + 4113;%(TreatSpecificWarningsAsErrors) ++ $(RuntimeLibrary) + + + true diff --git a/ports/libgpg-error/vcpkg.json b/ports/libgpg-error/vcpkg.json new file mode 100644 index 000000000..73c17ba9e --- /dev/null +++ b/ports/libgpg-error/vcpkg.json @@ -0,0 +1,7 @@ +{ + "name": "libgpg-error", + "version": "1.42", + "description": "A common dependency of all GnuPG components", + "homepage": "https://gnupg.org/software/libgpg-error/index.html", + "supports": "!(windows & (arm | arm64))" +} diff --git a/versions/baseline.json b/versions/baseline.json index 9786fcb36..5e2360a51 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -3157,8 +3157,8 @@ "port-version": 0 }, "libgpg-error": { - "baseline": "1.39", - "port-version": 1 + "baseline": "1.42", + "port-version": 0 }, "libgpod": { "baseline": "2019-08-29", diff --git a/versions/l-/libgpg-error.json b/versions/l-/libgpg-error.json index dc514eb6e..aecf1ec8a 100644 --- a/versions/l-/libgpg-error.json +++ b/versions/l-/libgpg-error.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "80b315c6991fd5092637d010433ebfcbcbfda92d", + "version": "1.42", + "port-version": 0 + }, { "git-tree": "36b77502b20b311f354f24c02f27fd5dd4896663", "version-string": "1.39", -- cgit v1.2.3