Simplify, reformat, and modernize.

The user-facing changes, some of which required a PORTREVISION bump:

* Don't make everybody download the signature file
* Add USES=readline, rather than making assumptions about it being in
  /usr. A side effect of this was that gnupg was being built with
  readline support on 10 but not 11, except when LDAP was enabled which
  brought it in as a side effect
* Don't make manpages dependent upon the DOCS option. As a side effect,
  everybody now gets the info files. Also, put the help files into
  DOCSDIR instead of DATADIR; best as I can tell they aren't being
  called from within gpg
* Reword the pkg-descr to describe what gpg is, rather than making a
  frightening-sounding statement about patents and unrestricted use
* Handle the gpg symlink in the plist, and be a little looser about
  creating it and tighter about removing it
* Remove the pkg-message. The pinentry dependency installs a pinentry
  dialogue already
This commit is contained in:
Adam Weinberger 2017-01-10 02:06:06 +00:00
parent 2693ab2bb6
commit 924ad2982b
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=431046
5 changed files with 82 additions and 108 deletions

View file

@ -2,11 +2,9 @@
PORTNAME= gnupg
PORTVERSION= 2.1.16
#PORTREVISION= 0
PORTREVISION= 1
CATEGORIES= security
MASTER_SITES= GNUPG
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} ${DISTNAME}${EXTRACT_SUFX}.sig
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= adamw@FreeBSD.org
COMMENT= The GNU Privacy Guard
@ -23,45 +21,45 @@ LIB_DEPENDS= libassuan.so:security/libassuan \
libnpth.so:devel/npth
BUILD_DEPENDS= libassuan>=2.4.3:security/libassuan \
libgpg-error>=1.16:security/libgpg-error
RUN_DEPENDS= pinentry>0:security/pinentry
RUN_DEPENDS= pinentry:security/pinentry
GNU_CONFIGURE= YES
USES= compiler:c11 cpe gmake iconv pkgconfig sqlite tar:bzip2
USE_LDCONFIG= YES
# libreadline.so.8 is placed in /lib, but --with-readline argument
# will be treated as $value/lib, so try using /usr instead.
# Otherwise, $PREFIX/lib/libreadline.so.6 will be linked when
# devel/readline is installed.
CONFIGURE_ARGS+= --disable-ntbtls --enable-symcryptrun --with-readline=/usr \
--disable-wks-tools
CONFLICTS= gnupg-2.0.* dirmngr-*
CONFLICTS= gnupg-2.0.* dirmngr-[0-9]*
CPE_VENDOR= gnupg
OPTIONS_DEFINE= GNUTLS LDAP SCDAEMON KDNS NLS DOCS SUID_GPG
LDAP_DESC= LDAP keyserver interface
SCDAEMON_DESC= Enable Smartcard daemon (with libusb)
KDNS_DESC= Use DNS CERT helper
SUID_GPG_DESC= Install GPG with suid
OPTIONS_DEFAULT= GNUTLS
NO_OPTIONS_SORT= YES
OPTIONS_SUB= YES
USES= compiler:c11 cpe gmake iconv pkgconfig readline sqlite tar:bzip2
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-ntbtls --enable-symcryptrun --disable-wks-tools
INFO= gnupg
OPTIONS_DEFINE= GNUTLS LDAP SCDAEMON KDNS NLS DOCS SUID_GPG
OPTIONS_DEFAULT=GNUTLS
NO_OPTIONS_SORT=yes
OPTIONS_SUB= yes
KDNS_DESC= Use DNS CERT helper
LDAP_DESC= LDAP keyserver interface
SCDAEMON_DESC= Enable Smartcard daemon (with libusb)
SUID_GPG_DESC= Install GPG with suid
# In jail, SUID is required to avoid warning (security.bsd.unprivileged_mlock sysctl is not used in jail).
DOCS_CONFIGURE_ENABLE= doc
DOCS_INFO= gnupg
GNUTLS_CONFIGURE_ENABLE=gnutls
GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls
KDNS_LIB_DEPENDS= libadns.so:dns/adns
KDNS_CONFIGURE_ON= --with-adns=${LOCALBASE}
LDAP_CONFIGURE_ENABLE= ldap
LDAP_CONFIGURE_ON= --with-ldap=${LOCALBASE}
KDNS_CONFIGURE_WITH= adns=${LOCALBASE}
LDAP_CONFIGURE_WITH= ldap=${LOCALBASE}
LDAP_LIBS= -L${LOCALBASE}/lib
LDAP_USE= OPENLDAP=yes
NLS_USES= gettext
LDAP_USES= readline
NLS_CONFIGURE_ENABLE= nls
NLS_USES= gettext
SCDAEMON_CONFIGURE_ENABLE= scdaemon
verify: checksum
gpg2 --verify ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}.sig
post-install:
@${MV} ${STAGEDIR}${DATADIR}/help*.txt ${STAGEDIR}${DOCSDIR}
.include <bsd.port.mk>

View file

@ -1,7 +1,9 @@
GnuPG is a complete and free replacement for PGP.
GnuPG is a complete and free replacement for PGP. This is the "modern"
version.
Because it does not use the patented IDEA algorithm, it can be used
without any restrictions. GnuPG is an RFC2440 (OpenPGP) compliant
application.
GnuPG allows encrypting and signing your data and communication, and features a
versatile key management system as well as access modules for many public key
directories. GnuPG, also known as GPG, is a command line tool with features for
easy integration with other applications.
WWW: http://www.gnupg.org/
WWW: https://www.gnupg.org/

View file

@ -1,14 +0,0 @@
#!/bin/sh
#
# $FreeBSD$
#
if [ "$2" != "POST-INSTALL" ]; then
exit 0
fi
if [ -r ${PKG_PREFIX}/bin/gpg ] || [ -L ${PKG_PREFIX}/bin/gpg ]; then
# Skip.
else
ln -s gpg2 ${PKG_PREFIX}/bin/gpg
fi

View file

@ -1,13 +0,0 @@
###############################################################################
A T T E N T I O N
In order to use gpg-agent, you need to install a pinentry dialog.
The following ports of pinentry dialogs are available:
security/pinentry-curses (ncurses based dialog)
security/pinentry-gtk2 (GTK 2.x based dialog)
security/pinentry-qt4 (QT4 based dialog)
security/pinentry-tty (console based dialog)
###############################################################################

View file

@ -20,22 +20,22 @@ libexec/gpg-preset-passphrase
libexec/gpg-protect-tool
libexec/gpg-wks-client
%%SCDAEMON%%libexec/scdaemon
%%PORTDOCS%%man/man1/dirmngr-client.1.gz
%%PORTDOCS%%man/man1/gpg-agent.1.gz
%%PORTDOCS%%man/man1/gpg-connect-agent.1.gz
%%PORTDOCS%%man/man1/gpg-preset-passphrase.1.gz
%%PORTDOCS%%man/man1/gpg2.1.gz
%%PORTDOCS%%man/man1/gpgconf.1.gz
%%PORTDOCS%%man/man1/gpgparsemail.1.gz
%%PORTDOCS%%man/man1/gpgsm.1.gz
%%PORTDOCS%%man/man1/gpgv2.1.gz
%%PORTDOCS%%man/man1/scdaemon.1.gz
%%PORTDOCS%%man/man1/symcryptrun.1.gz
%%PORTDOCS%%man/man1/watchgnupg.1.gz
%%PORTDOCS%%man/man7/gnupg.7.gz
%%PORTDOCS%%man/man8/addgnupghome.8.gz
%%PORTDOCS%%man/man8/applygnupgdefaults.8.gz
%%PORTDOCS%%man/man8/dirmngr.8.gz
man/man1/dirmngr-client.1.gz
man/man1/gpg-agent.1.gz
man/man1/gpg-connect-agent.1.gz
man/man1/gpg-preset-passphrase.1.gz
man/man1/gpg2.1.gz
man/man1/gpgconf.1.gz
man/man1/gpgparsemail.1.gz
man/man1/gpgsm.1.gz
man/man1/gpgv2.1.gz
man/man1/scdaemon.1.gz
man/man1/symcryptrun.1.gz
man/man1/watchgnupg.1.gz
man/man7/gnupg.7.gz
man/man8/addgnupghome.8.gz
man/man8/applygnupgdefaults.8.gz
man/man8/dirmngr.8.gz
sbin/addgnupghome
sbin/applygnupgdefaults
%%PORTDOCS%%%%DOCSDIR%%/DCO
@ -44,7 +44,7 @@ sbin/applygnupgdefaults
%%PORTDOCS%%%%DOCSDIR%%/HACKING
%%PORTDOCS%%%%DOCSDIR%%/KEYSERVER
%%PORTDOCS%%%%DOCSDIR%%/OpenPGP
%%DOCSDIR%%/README
%%PORTDOCS%%%%DOCSDIR%%/README
%%PORTDOCS%%%%DOCSDIR%%/TRANSLATE
%%PORTDOCS%%%%DOCSDIR%%/examples/README
%%PORTDOCS%%%%DOCSDIR%%/examples/gpgconf.conf
@ -58,37 +58,37 @@ sbin/applygnupgdefaults
%%PORTDOCS%%%%DOCSDIR%%/examples/systemd-user/gpg-agent.service
%%PORTDOCS%%%%DOCSDIR%%/examples/systemd-user/gpg-agent.socket
%%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%%/dirmngr-conf.skel
%%DATADIR%%/distsigkey.gpg
%%DATADIR%%/gpg-conf.skel
%%PORTDOCS%%%%DATADIR%%/help.be.txt
%%PORTDOCS%%%%DATADIR%%/help.ca.txt
%%PORTDOCS%%%%DATADIR%%/help.cs.txt
%%PORTDOCS%%%%DATADIR%%/help.da.txt
%%PORTDOCS%%%%DATADIR%%/help.de.txt
%%PORTDOCS%%%%DATADIR%%/help.el.txt
%%PORTDOCS%%%%DATADIR%%/help.eo.txt
%%PORTDOCS%%%%DATADIR%%/help.es.txt
%%PORTDOCS%%%%DATADIR%%/help.et.txt
%%PORTDOCS%%%%DATADIR%%/help.fi.txt
%%PORTDOCS%%%%DATADIR%%/help.fr.txt
%%PORTDOCS%%%%DATADIR%%/help.gl.txt
%%PORTDOCS%%%%DATADIR%%/help.hu.txt
%%PORTDOCS%%%%DATADIR%%/help.id.txt
%%PORTDOCS%%%%DATADIR%%/help.it.txt
%%PORTDOCS%%%%DATADIR%%/help.ja.txt
%%PORTDOCS%%%%DATADIR%%/help.nb.txt
%%PORTDOCS%%%%DATADIR%%/help.pl.txt
%%PORTDOCS%%%%DATADIR%%/help.pt.txt
%%PORTDOCS%%%%DATADIR%%/help.pt_BR.txt
%%PORTDOCS%%%%DATADIR%%/help.ro.txt
%%PORTDOCS%%%%DATADIR%%/help.ru.txt
%%PORTDOCS%%%%DATADIR%%/help.sk.txt
%%PORTDOCS%%%%DATADIR%%/help.sv.txt
%%PORTDOCS%%%%DATADIR%%/help.tr.txt
%%PORTDOCS%%%%DATADIR%%/help.txt
%%PORTDOCS%%%%DATADIR%%/help.zh_CN.txt
%%PORTDOCS%%%%DATADIR%%/help.zh_TW.txt
%%DATADIR%%/sks-keyservers.netCA.pem
%%NLS%%share/locale/ca/LC_MESSAGES/gnupg2.mo
%%NLS%%share/locale/cs/LC_MESSAGES/gnupg2.mo
@ -118,4 +118,5 @@ sbin/applygnupgdefaults
%%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
@unexec [ -L %D/bin/gpg ] && rm -f %D/bin/gpg || true
@postexec [ -e %D/bin/gpg ] || ln -s gpg2 %D/bin/gpg
@postunexec [ "$(readlink %D/bin/gpg)" = "gpg2" ] && rm -f %D/bin/gpg || true