diff --git a/security/gnupg/Makefile b/security/gnupg/Makefile index aa68de7b6679..a285ea20c890 100644 --- a/security/gnupg/Makefile +++ b/security/gnupg/Makefile @@ -1,82 +1,86 @@ PORTNAME= gnupg -DISTVERSION= 2.4.5 -PORTREVISION= 1 +DISTVERSION= 2.4.6 CATEGORIES= security MASTER_SITES= GNUPG MAINTAINER= adridg@FreeBSD.org COMMENT= Complete and free PGP implementation WWW= https://www.gnupg.org/ LICENSE= GPLv3 LGPL3 LICENSE_COMB= multi LICENSE_FILE_GPLv3= ${WRKSRC}/COPYING LICENSE_FILE_LGPL3= ${WRKSRC}/COPYING.LGPL3 LIB_DEPENDS= libassuan.so:security/libassuan \ libgcrypt.so:security/libgcrypt \ libgpg-error.so:security/libgpg-error \ libksba.so:security/libksba \ libnpth.so:devel/npth RUN_DEPENDS= pinentry:security/pinentry -USES= compiler:c11 cpe gmake iconv makeinfo pkgconfig readline sqlite tar:bzip2 +USES= autoreconf compiler:c11 cpe gettext-tools gmake iconv makeinfo pkgconfig \ + readline sqlite tar:bzip2 -CONFLICTS= dirmngr CPE_VENDOR= gnupg -CONFIGURE_ARGS= --disable-ntbtls --enable-gpg-is-gpg2 GNU_CONFIGURE= yes -GNU_CONFIGURE_MANPREFIX=${PREFIX}/share -INFO= gnupg -TEST_TARGET= check +CONFIGURE_ARGS= --disable-ntbtls \ + --enable-gpg-is-gpg2 + TEST_ARGS= TESTARGS=--parallel +TEST_TARGET= check -OPTIONS_DEFINE= DOCS GNUTLS LARGE_RSA LDAP NLS SCDAEMON SUID_GPG WKS_SERVER -OPTIONS_DEFAULT=GNUTLS SCDAEMON WKS_SERVER -OPTIONS_SUB= yes +CONFLICTS= dirmngr -LARGE_RSA_DESC= Enable support for 8192-bit RSA keys -LDAP_DESC= LDAP keyserver interface -SCDAEMON_DESC= Enable Smartcard daemon (with libusb) -SUID_GPG_DESC= Install GPG as SUID root -WKS_SERVER_DESC=Install the Web Key Service server +INFO= gnupg -GNUTLS_CONFIGURE_ENABLE=gnutls -GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls +OPTIONS_DEFINE= DOCS GNUTLS LARGE_RSA LDAP NLS SCDAEMON SUID_GPG \ + WKS_SERVER +OPTIONS_DEFAULT= GNUTLS SCDAEMON WKS_SERVER +OPTIONS_SUB= yes + +LARGE_RSA_DESC= Enable support for 8192-bit RSA keys +LDAP_DESC= LDAP keyserver interface +SCDAEMON_DESC= Enable Smartcard daemon (with libusb) +SUID_GPG_DESC= Install GPG as SUID root +WKS_SERVER_DESC= Install the Web Key Service server + +GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls +GNUTLS_CONFIGURE_ENABLE= gnutls LARGE_RSA_CONFIGURE_ENABLE= large-secmem +LDAP_USES= ldap LDAP_CONFIGURE_WITH= ldap=${LOCALBASE} LDAP_LIBS= -L${LOCALBASE}/lib -LDAP_USES= ldap -NLS_CONFIGURE_ENABLE= nls NLS_USES= gettext +NLS_CONFIGURE_ENABLE= nls SCDAEMON_CONFIGURE_ENABLE= scdaemon WKS_SERVER_CONFIGURE_ENABLE= wks-tools .include .if ${PORT_OPTIONS:MGNUTLS} && ${PORT_OPTIONS:MLDAP} PLIST_SUB+= DIRMNGRLDAP="" .else PLIST_SUB+= DIRMNGRLDAP="@comment " .endif # Touch the texinfo files to force makeinfo to run. This fixes Linuxisms in # the paths in the man pages. pre-build: ${TOUCH} ${WRKSRC}/doc/*.texi post-install: ${MV} ${STAGEDIR}${PREFIX}/bin/gpgsplit ${STAGEDIR}${PREFIX}/bin/gpgsplit2 ${MV} ${STAGEDIR}${DATADIR}/help*.txt ${STAGEDIR}${DOCSDIR} # Necessary because of --enable-gpg-is-gpg2 pre-test: ${LN} -s gpg ${WRKSRC}/bin/gpg2 .include diff --git a/security/gnupg/distinfo b/security/gnupg/distinfo index ae792916b941..9b5e93da460e 100644 --- a/security/gnupg/distinfo +++ b/security/gnupg/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1714203516 -SHA256 (gnupg-2.4.5.tar.bz2) = f68f7d75d06cb1635c336d34d844af97436c3f64ea14bcb7c869782f96f44277 -SIZE (gnupg-2.4.5.tar.bz2) = 7889060 +TIMESTAMP = 1730927376 +SHA256 (gnupg-2.4.6.tar.bz2) = 95acfafda7004924a6f5c901677f15ac1bda2754511d973bb4523e8dd840e17a +SIZE (gnupg-2.4.6.tar.bz2) = 8011304 diff --git a/security/gnupg/files/patch-doc_Makefile.am b/security/gnupg/files/patch-doc_Makefile.am new file mode 100644 index 000000000000..c0fda8df0e82 --- /dev/null +++ b/security/gnupg/files/patch-doc_Makefile.am @@ -0,0 +1,35 @@ +--- doc/Makefile.am.orig 2024-09-20 10:07:25 UTC ++++ doc/Makefile.am +@@ -79,13 +79,13 @@ myman_sources = gnupg7.texi gpg.texi gpgsm.texi gpg-ag + myman_sources = gnupg7.texi gpg.texi gpgsm.texi gpg-agent.texi \ + dirmngr.texi scdaemon.texi tools.texi wks.texi \ + gpg-card.texi +-myman_pages = gpg.1 gpgv.1 gpgsm.1 gpg-agent.1 dirmngr.8 scdaemon.1 \ ++myman_pages = gpgsm.1 gpg-agent.1 dirmngr.8 scdaemon.1 \ + watchgnupg.1 gpgconf.1 addgnupghome.8 gpg-preset-passphrase.1 \ + gpg-connect-agent.1 gpgparsemail.1 gpgtar.1 gpg-mail-tube.1 \ + applygnupgdefaults.8 gpg-wks-client.1 gpg-wks-server.1 \ + dirmngr-client.1 gpg-card.1 gpg-check-pattern.1 + myhtmlman_pages = \ +- gpg.1.html gpgv.1.html gpgsm.1.html \ ++ gpgsm.1.html \ + gpg-agent.1.html dirmngr.8.html scdaemon.1.html \ + watchgnupg.1.html gpgconf.1.html addgnupghome.8.html \ + gpg-preset-passphrase.1.html \ +@@ -95,7 +95,15 @@ myhtmlman_pages = \ + gpg-wks-server.1.html \ + dirmngr-client.1.html gpg-card.1.html gpg-check-pattern.1.html + +-man_MANS = $(myman_pages) gnupg.7 gnupg.7.html ++if USE_GPG2_HACK ++myman_pages += gpg2.1 gpgv2.1 ++myhtmlman_pages += gpg2.1.html gpgv2.1.html ++else ++myman_pages += gpg.1 gpgv.1 ++myhtmlman_pages += gpg.1.html gpgv.1.html ++endif ++ ++man_MANS = $(myman_pages) gnupg.7 + + watchgnupg_SOURCE = gnupg.texi + diff --git a/security/gnupg/files/patch-configure b/security/gnupg/files/patch-m4_gpg-error.m4 similarity index 73% rename from security/gnupg/files/patch-configure rename to security/gnupg/files/patch-m4_gpg-error.m4 index 20e250e38430..251a053014e3 100644 --- a/security/gnupg/files/patch-configure +++ b/security/gnupg/files/patch-m4_gpg-error.m4 @@ -1,13 +1,11 @@ -Fix path of pkgconfig files passed to gpgrt-config. - ---- configure.orig 2024-01-25 10:09:44 UTC -+++ configure -@@ -8428,7 +8428,7 @@ fi +--- m4/gpg-error.m4.orig 2024-05-15 10:33:38 UTC ++++ m4/gpg-error.m4 +@@ -67,7 +67,7 @@ AC_DEFUN([_AM_PATH_GPGRT_CONFIG],[dnl # Get the prefix of gpgrt-config assuming it's something like: # /bin/gpgrt-config gpgrt_prefix=${GPGRT_CONFIG%/*/*} - possible_libdir1=${gpgrt_prefix}/lib + possible_libdir1=${gpgrt_prefix}/libdata # Determine by using system libdir-format with CC, it's like: # Normal style: /usr/lib # GNU cross style: /usr//lib diff --git a/security/gnupg/pkg-plist b/security/gnupg/pkg-plist index 5caf61bf2ec0..5560942bc330 100644 --- a/security/gnupg/pkg-plist +++ b/security/gnupg/pkg-plist @@ -1,127 +1,130 @@ %%GNUTLS%%bin/dirmngr %%GNUTLS%%bin/dirmngr-client bin/gpg-agent bin/gpg-card bin/gpg-connect-agent +bin/gpg-mail-tube bin/gpg-wks-client %%WKS_SERVER%%bin/gpg-wks-server %%SUID_GPG%%@(,,4555) bin/gpg2 %%NO_SUID_GPG%%bin/gpg2 bin/gpgconf bin/gpgparsemail bin/gpgscm bin/gpgsm bin/gpgsplit2 bin/gpgtar bin/gpgv2 bin/kbxutil bin/watchgnupg %%DIRMNGRLDAP%%libexec/dirmngr_ldap libexec/gpg-auth libexec/gpg-check-pattern libexec/gpg-pair-tool libexec/gpg-preset-passphrase libexec/gpg-protect-tool libexec/gpg-wks-client libexec/keyboxd %%SCDAEMON%%libexec/scdaemon share/man/man1/dirmngr-client.1.gz share/man/man1/gpg-agent.1.gz share/man/man1/gpg-card.1.gz share/man/man1/gpg-check-pattern.1.gz share/man/man1/gpg-connect-agent.1.gz +share/man/man1/gpg-mail-tube.1.gz share/man/man1/gpg-preset-passphrase.1.gz share/man/man1/gpg-wks-client.1.gz %%WKS_SERVER%%share/man/man1/gpg-wks-server.1.gz share/man/man1/gpg2.1.gz share/man/man1/gpgconf.1.gz share/man/man1/gpgparsemail.1.gz share/man/man1/gpgsm.1.gz share/man/man1/gpgtar.1.gz share/man/man1/gpgv2.1.gz share/man/man1/scdaemon.1.gz share/man/man1/watchgnupg.1.gz share/man/man7/gnupg.7.gz share/man/man8/addgnupghome.8.gz share/man/man8/applygnupgdefaults.8.gz share/man/man8/dirmngr.8.gz sbin/addgnupghome sbin/applygnupgdefaults %%PORTDOCS%%%%DOCSDIR%%/DCO %%PORTDOCS%%%%DOCSDIR%%/DETAILS %%PORTDOCS%%%%DOCSDIR%%/FAQ %%PORTDOCS%%%%DOCSDIR%%/HACKING %%PORTDOCS%%%%DOCSDIR%%/KEYSERVER %%PORTDOCS%%%%DOCSDIR%%/OpenPGP %%PORTDOCS%%%%DOCSDIR%%/README %%PORTDOCS%%%%DOCSDIR%%/TRANSLATE %%PORTDOCS%%%%DOCSDIR%%/examples/README %%PORTDOCS%%%%DOCSDIR%%/examples/common.conf %%PORTDOCS%%%%DOCSDIR%%/examples/gpgconf.conf %%PORTDOCS%%%%DOCSDIR%%/examples/gpgconf.rnames %%PORTDOCS%%%%DOCSDIR%%/examples/pwpattern.list %%PORTDOCS%%%%DOCSDIR%%/examples/qualified.txt %%PORTDOCS%%%%DOCSDIR%%/examples/scd-event %%PORTDOCS%%%%DOCSDIR%%/examples/trustlist.txt %%PORTDOCS%%%%DOCSDIR%%/help.be.txt %%PORTDOCS%%%%DOCSDIR%%/help.ca.txt %%PORTDOCS%%%%DOCSDIR%%/help.cs.txt %%PORTDOCS%%%%DOCSDIR%%/help.da.txt %%PORTDOCS%%%%DOCSDIR%%/help.de.txt %%PORTDOCS%%%%DOCSDIR%%/help.el.txt %%PORTDOCS%%%%DOCSDIR%%/help.eo.txt %%PORTDOCS%%%%DOCSDIR%%/help.es.txt %%PORTDOCS%%%%DOCSDIR%%/help.et.txt %%PORTDOCS%%%%DOCSDIR%%/help.fi.txt %%PORTDOCS%%%%DOCSDIR%%/help.fr.txt %%PORTDOCS%%%%DOCSDIR%%/help.gl.txt %%PORTDOCS%%%%DOCSDIR%%/help.hu.txt %%PORTDOCS%%%%DOCSDIR%%/help.id.txt %%PORTDOCS%%%%DOCSDIR%%/help.it.txt %%PORTDOCS%%%%DOCSDIR%%/help.ja.txt %%PORTDOCS%%%%DOCSDIR%%/help.nb.txt %%PORTDOCS%%%%DOCSDIR%%/help.pl.txt %%PORTDOCS%%%%DOCSDIR%%/help.pt.txt %%PORTDOCS%%%%DOCSDIR%%/help.pt_BR.txt %%PORTDOCS%%%%DOCSDIR%%/help.ro.txt %%PORTDOCS%%%%DOCSDIR%%/help.ru.txt %%PORTDOCS%%%%DOCSDIR%%/help.sk.txt %%PORTDOCS%%%%DOCSDIR%%/help.sv.txt %%PORTDOCS%%%%DOCSDIR%%/help.tr.txt %%PORTDOCS%%%%DOCSDIR%%/help.txt %%PORTDOCS%%%%DOCSDIR%%/help.zh_CN.txt %%PORTDOCS%%%%DOCSDIR%%/help.zh_TW.txt %%DATADIR%%/distsigkey.gpg %%GNUTLS%%%%DATADIR%%/sks-keyservers.netCA.pem %%NLS%%share/locale/ca/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/cs/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/da/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/de/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/el/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/en@boldquot/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/en@quot/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/eo/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/es/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/et/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/fi/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/fr/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/gl/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/hu/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/id/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/it/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/ja/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/nb/LC_MESSAGES/gnupg2.mo +%%NLS%%share/locale/nl/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/pl/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/pt/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/ro/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/ru/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/sk/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/sv/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/tr/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/uk/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/zh_CN/LC_MESSAGES/gnupg2.mo %%NLS%%share/locale/zh_TW/LC_MESSAGES/gnupg2.mo @postexec [ -e %D/bin/gpg ] || ln -sf gpg2 %D/bin/gpg @postunexec [ -e %D/bin/gpg ] || rm -f %D/bin/gpg @postexec [ -e %D/share/man/man1/gpg.1.gz ] || ln -sf gpg2.1.gz %D/share/man/man1/gpg.1.gz @postunexec [ -e %D/share/man/man1/gpg.1.gz ] || rm -f %D/share/man/man1/gpg.1.gz