aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDawid Wróbel <me@dawidwrobel.com>2020-12-23 02:19:18 -0500
committerGitHub <noreply@github.com>2020-12-22 23:19:18 -0800
commit4cf45e80e3eab2eece9b89e11015920da3a50580 (patch)
tree57065b177c56fe8dec6335dff68354b5357c1b9b
parent229f537c9414da5a577484b467a1f7ab0f4d8f34 (diff)
downloadvcpkg-4cf45e80e3eab2eece9b89e11015920da3a50580.tar.gz
vcpkg-4cf45e80e3eab2eece9b89e11015920da3a50580.zip
[many ports] add GnuPG libraries (#13950)
-rw-r--r--ports/gpgme/CONTROL10
-rw-r--r--ports/gpgme/disable-docs.patch13
-rw-r--r--ports/gpgme/disable-tests.patch51
-rw-r--r--ports/gpgme/portfile.cmake35
-rw-r--r--ports/libassuan/CONTROL6
-rw-r--r--ports/libassuan/fix-pkgconfig.patch11
-rw-r--r--ports/libassuan/portfile.cmake27
-rw-r--r--ports/libgcrypt/CONTROL6
-rw-r--r--ports/libgcrypt/fix-pkgconfig.patch11
-rw-r--r--ports/libgcrypt/portfile.cmake27
-rw-r--r--ports/libgpg-error/CONTROL5
-rw-r--r--ports/libgpg-error/portfile.cmake25
12 files changed, 227 insertions, 0 deletions
diff --git a/ports/gpgme/CONTROL b/ports/gpgme/CONTROL
new file mode 100644
index 000000000..90c025ce5
--- /dev/null
+++ b/ports/gpgme/CONTROL
@@ -0,0 +1,10 @@
+Source: gpgme
+Version: 1.14.0
+Homepage: https://gnupg.org/software/gpgme/index.html
+Description: A library designed to make access to GnuPG easier for applications
+Build-Depends: libgpg-error, libassuan
+Default-Features: cpp
+Supports: !windows
+
+Feature: cpp
+Description: C++ bindings
diff --git a/ports/gpgme/disable-docs.patch b/ports/gpgme/disable-docs.patch
new file mode 100644
index 000000000..b45ca6ec6
--- /dev/null
+++ b/ports/gpgme/disable-docs.patch
@@ -0,0 +1,13 @@
+diff --git a/Makefile.am b/Makefile.am
+index 1772d69..9bf9863 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -45,7 +45,7 @@ else
+ tests =
+ endif
+
+-SUBDIRS = src ${tests} doc lang
++SUBDIRS = src ${tests} lang
+
+ # Fix the version of the spec file.
+ dist-hook: gen-ChangeLog
diff --git a/ports/gpgme/disable-tests.patch b/ports/gpgme/disable-tests.patch
new file mode 100644
index 000000000..c7158508f
--- /dev/null
+++ b/ports/gpgme/disable-tests.patch
@@ -0,0 +1,51 @@
+From b05747aea79083106b27ac7d829db3e65e192682 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Dawid=20Wro=CC=81bel?= <me@dawidwrobel.com>
+Date: Thu, 29 Oct 2020 13:23:56 -0400
+Subject: [PATCH] cpp,python: Respect --disable-gpg-test for tests
+
+* lang/cpp/Makefile.am: Respect --disable-gpg-test
+* lang/python/Makefile.am: Respect --disable-gpg-test
+
+This is similar to the qt that had it already enabled
+---
+ lang/cpp/Makefile.am | 8 +++++++-
+ lang/python/Makefile.am | 8 +++++++-
+ 2 files changed, 14 insertions(+), 2 deletions(-)
+
+diff --git a/lang/cpp/Makefile.am b/lang/cpp/Makefile.am
+index 724da6ca..70ca7462 100644
+--- a/lang/cpp/Makefile.am
++++ b/lang/cpp/Makefile.am
+@@ -18,6 +18,12 @@
+ # License along with this program; if not, see <https://gnu.org/licenses/>.
+ # SPDX-License-Identifier: LGPL-2.1-or-later
+
+-SUBDIRS = src tests
++if RUN_GPG_TESTS
++tests = tests
++else
++tests =
++endif
++
++SUBDIRS = src ${tests}
+
+ EXTRA_DIST = README
+diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am
+index 845b7b17..68b98e8e 100644
+--- a/lang/python/Makefile.am
++++ b/lang/python/Makefile.am
+@@ -23,7 +23,13 @@ EXTRA_DIST = \
+ gpgme.i \
+ helpers.c helpers.h private.h
+
+-SUBDIRS = . tests examples doc src
++if RUN_GPG_TESTS
++tests = tests
++else
++tests =
++endif
++
++SUBDIRS = . ${tests} examples doc src
+
+ .PHONY: prepare
+ prepare: copystamp
diff --git a/ports/gpgme/portfile.cmake b/ports/gpgme/portfile.cmake
new file mode 100644
index 000000000..bf4c34bbb
--- /dev/null
+++ b/ports/gpgme/portfile.cmake
@@ -0,0 +1,35 @@
+vcpkg_fail_port_install(MESSAGE "${PORT} currently only supports unix platform" ON_TARGET "Windows")
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO gpg/gpgme
+ REF gpgme-1.14.0
+ SHA512 b4608fd1d9a4122d8886917274e323afc9a30494c13a3dea51e17e9779f925bf8d67e584434d6a13018f274a6cbcf0a5e36f2fea794a065906bbb556b765398e
+ HEAD_REF master
+ PATCHES
+ disable-tests.patch
+ disable-docs.patch
+)
+
+list(REMOVE_ITEM FEATURES core)
+string(REPLACE ";" "," LANGUAGES "${FEATURES}")
+
+vcpkg_configure_make(
+ AUTOCONFIG
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS
+ --disable-gpgconf-test
+ --disable-gpg-test
+ --disable-gpgsm-test
+ --disable-g13-test
+ --enable-languages=${LANGUAGES}
+ --with-libgpg-error-prefix=${CURRENT_INSTALLED_DIR}/tools/libgpg-error
+ --with-libassuan-prefix=${CURRENT_INSTALLED_DIR}/tools/libassuan
+)
+
+vcpkg_install_make()
+vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Gpgmepp)
+vcpkg_copy_pdbs()
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
+file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
diff --git a/ports/libassuan/CONTROL b/ports/libassuan/CONTROL
new file mode 100644
index 000000000..e6bb54b5f
--- /dev/null
+++ b/ports/libassuan/CONTROL
@@ -0,0 +1,6 @@
+Source: libassuan
+Version: 2.5.3
+Homepage: https://gnupg.org/software/libassuan/index.html
+Description: A library implementing the so-called Assuan protocol
+Build-Depends: libgpg-error
+Supports: !windows
diff --git a/ports/libassuan/fix-pkgconfig.patch b/ports/libassuan/fix-pkgconfig.patch
new file mode 100644
index 000000000..8b8672e03
--- /dev/null
+++ b/ports/libassuan/fix-pkgconfig.patch
@@ -0,0 +1,11 @@
+diff --git a/src/libassuan.pc.in b/src/libassuan.pc.in
+index 4e952d7..83ba872 100644
+--- a/src/libassuan.pc.in
++++ b/src/libassuan.pc.in
+@@ -10,5 +10,5 @@ Description: IPC library for the GnuPG components
+ Requires: gpg-error
+ Version: @PACKAGE_VERSION@
+ Cflags: @LIBASSUAN_CONFIG_CFLAGS@
+-Libs: @LIBASSUAN_CONFIG_LIBS@
++Libs: -L${libdir} @LIBASSUAN_CONFIG_LIBS@
+ URL: https://www.gnupg.org/related_software/libassuan/index.html
diff --git a/ports/libassuan/portfile.cmake b/ports/libassuan/portfile.cmake
new file mode 100644
index 000000000..50f26d494
--- /dev/null
+++ b/ports/libassuan/portfile.cmake
@@ -0,0 +1,27 @@
+vcpkg_fail_port_install(MESSAGE "${PORT} currently only supports unix platform" ON_TARGET "Windows")
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO gpg/libassuan
+ REF libassuan-2.5.3
+ SHA512 5ec896eca6d9d7bec83aa400c8e2dc6f2b09c013050efb2125e2f2a4bd00f179723254483637ca4b7bc30bba951fc985e7ba7db98081606bb106caa7a2622dbe
+ HEAD_REF master
+ PATCHES
+ fix-pkgconfig.patch
+)
+
+vcpkg_configure_make(
+ AUTOCONFIG
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS
+ --disable-doc
+ --disable-silent-rules
+ --with-libgpg-error-prefix=${CURRENT_INSTALLED_DIR}/tools/libgpg-error
+)
+
+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)
diff --git a/ports/libgcrypt/CONTROL b/ports/libgcrypt/CONTROL
new file mode 100644
index 000000000..6a9fe7d5b
--- /dev/null
+++ b/ports/libgcrypt/CONTROL
@@ -0,0 +1,6 @@
+Source: libgcrypt
+Version: 1.8.6
+Homepage: https://gnupg.org/software/libgcrypt/index.html
+Description: A library implementing the so-called Assuan protocol
+Build-Depends: libgpg-error
+Supports: linux|osx \ No newline at end of file
diff --git a/ports/libgcrypt/fix-pkgconfig.patch b/ports/libgcrypt/fix-pkgconfig.patch
new file mode 100644
index 000000000..0c269b2a6
--- /dev/null
+++ b/ports/libgcrypt/fix-pkgconfig.patch
@@ -0,0 +1,11 @@
+diff --git a/src/libgcrypt.pc.in b/src/libgcrypt.pc.in
+index ec68fa2..6bf7a07 100644
+--- a/src/libgcrypt.pc.in
++++ b/src/libgcrypt.pc.in
+@@ -13,5 +13,5 @@ Description: General purpose cryptographic library
+ Requires: gpg-error
+ Version: @PACKAGE_VERSION@
+ Cflags: @LIBGCRYPT_CONFIG_CFLAGS@
+-Libs: @LIBGCRYPT_CONFIG_LIBS@
++Libs: -L${libdir} @LIBGCRYPT_CONFIG_LIBS@
+ URL: https://www.gnupg.org/software/libgcrypt/index.html
diff --git a/ports/libgcrypt/portfile.cmake b/ports/libgcrypt/portfile.cmake
new file mode 100644
index 000000000..6b782f0e6
--- /dev/null
+++ b/ports/libgcrypt/portfile.cmake
@@ -0,0 +1,27 @@
+vcpkg_fail_port_install(MESSAGE "${PORT} currently only supports unix platform" ON_TARGET "Windows")
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO gpg/libgcrypt
+ REF libgcrypt-1.8.6
+ SHA512 85005b159048b7b47b3fc77e8be5b5b317b1ae73ef536d4e2d78496763b7b8c4f80c70016ed27fc60e998cbc7642d3cf487bd4c5e5a5d8abc8f8d51e02f330d1
+ HEAD_REF master
+ PATCHES
+ fix-pkgconfig.patch
+)
+
+vcpkg_configure_make(
+ AUTOCONFIG
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS
+ --disable-doc
+ --disable-silent-rules
+ --with-libgpg-error-prefix=${CURRENT_INSTALLED_DIR}/tools/libgpg-error
+)
+
+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)
diff --git a/ports/libgpg-error/CONTROL b/ports/libgpg-error/CONTROL
new file mode 100644
index 000000000..754d20d3d
--- /dev/null
+++ b/ports/libgpg-error/CONTROL
@@ -0,0 +1,5 @@
+Source: libgpg-error
+Version: 1.39
+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/portfile.cmake b/ports/libgpg-error/portfile.cmake
new file mode 100644
index 000000000..a6dc3e843
--- /dev/null
+++ b/ports/libgpg-error/portfile.cmake
@@ -0,0 +1,25 @@
+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
+)
+
+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)