summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--security/gnupg2/DESCR9
-rw-r--r--security/gnupg2/Makefile81
-rw-r--r--security/gnupg2/PLIST33
-rw-r--r--security/gnupg2/PLIST.gpgsm17
-rw-r--r--security/gnupg2/buildlink3.mk26
-rw-r--r--security/gnupg2/distinfo15
-rw-r--r--security/gnupg2/patches/patch-aa54
-rw-r--r--security/gnupg2/patches/patch-ab8
-rw-r--r--security/gnupg2/patches/patch-ac21
-rw-r--r--security/gnupg2/patches/patch-af12
10 files changed, 276 insertions, 0 deletions
diff --git a/security/gnupg2/DESCR b/security/gnupg2/DESCR
new file mode 100644
index 00000000000..ce3859f3787
--- /dev/null
+++ b/security/gnupg2/DESCR
@@ -0,0 +1,9 @@
+GnuPG-2 provides several utilities that are used by mail clients,
+such as Kmail and Balsa, including OpenPGP and S/MIME support.
+GnuPG-2 has a different architecture than GnuPG-1 (e.g. 1.4.5) in that
+it splits up functionality into several modules. However, both
+versions may be installed alongside without any conflict. In fact,
+the gpg version from GnuPG-1 is able to make use of the gpg-agent as
+included in GnuPG-2 and allows for seamless passphrase caching. The
+advantage of GnuPG-1 is its smaller size and the lack of dependency on
+other modules at run and build time.
diff --git a/security/gnupg2/Makefile b/security/gnupg2/Makefile
new file mode 100644
index 00000000000..86ab4ad9be9
--- /dev/null
+++ b/security/gnupg2/Makefile
@@ -0,0 +1,81 @@
+# $NetBSD: Makefile,v 1.1.1.1 2006/11/17 12:13:11 shannonjr Exp $
+#
+
+DISTNAME= gnupg-2.0.0
+PKGNAME= ${DISTNAME:S/gnupg/gnupg2/}
+CATEGORIES= security
+MASTER_SITES= ftp://ftp.gnupg.org/gcrypt/gnupg/
+EXTRACT_SUFX= .tar.bz2
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX}
+DISTFILES+= pth-2.0.7.tar.gz
+SITES.pth-2.0.7.tar.gz= ${MASTER_SITE_GNU:=pth/}
+DISTFILES+= libassuan-1.0.0.tar.bz2
+SITES.libassuan-1.0.0.tar.bz2= ftp://ftp.gnupg.org/gcrypt/libassuan/
+
+MAINTAINER= shannonjr@NetBSD.org
+HOMEPAGE= ftp://ftp.gnupg.org/gcrypt/alpha/gnupg/
+COMMENT= GNUpg with OpenPGP and S/MIME capabilities
+
+PKG_INSTALLATION_TYPES= overwrite pkgviews
+
+GNU_CONFIGURE= yes
+USE_TOOLS+= gmake
+USE_TOOLS+= autoconf
+USE_TOOLS+= automake
+USE_LIBTOOL= yes
+USE_PKGLOCALEDIR= yes
+
+CONFIGURE_ARGS+= --with-static-rnd=auto
+CONFIGURE_ARGS+= --without-included-gettext
+CONFIGURE_ARGS+= --with-pth-prefix=${WRKDIR}/pth
+CONFIGURE_ARGS+= --with-libassuan-prefix=${WRKDIR}/libassuan
+CONFIGURE_ARGS+= --enable-maintainer-mode
+CONFIGURE_ENV+= gnupg_cv_pth_is_sane=yes
+
+TEST_TARGET= check
+
+# XXX It looks like that gpgsm support could be splitted in its own package,
+# according to the configure script. If that's true, this use of the options
+# framework is incorrect and should be fixed.
+PKG_OPTIONS_VAR= PKG_OPTIONS.gnupg2
+PKG_SUPPORTED_OPTIONS= gpgsm
+.include "../../mk/bsd.options.mk"
+
+## If no options are specified, only gpg-agent is built. This
+## is sufficient for OpenPGP/MIME support in Kmail
+## SMIME support is provided by gpgsm. This support is
+## in the alpha stage of development.
+PLIST_SRC= ${.CURDIR}/PLIST
+.if empty(PKG_OPTIONS:Mgpgsm)
+CONFIGURE_ARGS+= --enable-agent-only
+.else
+PLIST_SRC+= ${.CURDIR}/PLIST.gpgsm
+. include "../../security/dirmngr/buildlink3.mk"
+.endif
+
+# We are building a static pth library and linking against it
+# While this is not very satisfying, gpgme hangs in it's gpgsm tests if we depend on the shared (pkgsrc) pth library
+# We are also building libassuan here to get libassuan-pth.
+pre-configure:
+ cd ${WRKDIR}/pth-2.0.7 && \
+ ./configure --prefix=${WRKDIR}/pth --enable-pthread --enable-static --disable-shared && \
+ ${MAKE} install
+ cd ${WRKDIR}/libassuan-1.0.0 && \
+ ${SETENV} ${CONFIGURE_ENV} ./autogen.sh && \
+ ${SETENV} ${CONFIGURE_ENV} ./configure --enable-maintainer-mode --prefix=${WRKDIR}/libassuan --with-pth-prefix=${WRKDIR}/pth && \
+ ${SETENV} ${PKGSRC_MAKE_ENV} ${MAKE} install
+ cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./autogen.sh
+
+BUILDLINK_API_DEPENDS.libgpg-error+= libgpg-error>=1.4
+BUILDLINK_API_DEPENDS.libksba+= libksba>=1.0.0
+
+.include "../../databases/openldap-client/buildlink3.mk"
+.include "../../converters/libiconv/buildlink3.mk"
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../security/libgcrypt/buildlink3.mk"
+.include "../../security/libgpg-error/buildlink3.mk"
+.include "../../security/libksba/buildlink3.mk"
+.include "../../www/curl/buildlink3.mk"
+.include "../../security/pinentry/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/security/gnupg2/PLIST b/security/gnupg2/PLIST
new file mode 100644
index 00000000000..a016ba589fc
--- /dev/null
+++ b/security/gnupg2/PLIST
@@ -0,0 +1,33 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2006/11/17 12:13:11 shannonjr Exp $
+bin/gpg-agent
+libexec/gpg-preset-passphrase
+libexec/gpg-protect-tool
+share/locale/be/LC_MESSAGES/gnupg2.mo
+share/locale/ca/LC_MESSAGES/gnupg2.mo
+share/locale/cs/LC_MESSAGES/gnupg2.mo
+share/locale/da/LC_MESSAGES/gnupg2.mo
+share/locale/de/LC_MESSAGES/gnupg2.mo
+share/locale/el/LC_MESSAGES/gnupg2.mo
+share/locale/en@boldquot/LC_MESSAGES/gnupg2.mo
+share/locale/en@quot/LC_MESSAGES/gnupg2.mo
+share/locale/eo/LC_MESSAGES/gnupg2.mo
+share/locale/es/LC_MESSAGES/gnupg2.mo
+share/locale/et/LC_MESSAGES/gnupg2.mo
+share/locale/fi/LC_MESSAGES/gnupg2.mo
+share/locale/fr/LC_MESSAGES/gnupg2.mo
+share/locale/gl/LC_MESSAGES/gnupg2.mo
+share/locale/hu/LC_MESSAGES/gnupg2.mo
+share/locale/id/LC_MESSAGES/gnupg2.mo
+share/locale/it/LC_MESSAGES/gnupg2.mo
+share/locale/ja/LC_MESSAGES/gnupg2.mo
+share/locale/nb/LC_MESSAGES/gnupg2.mo
+share/locale/pl/LC_MESSAGES/gnupg2.mo
+share/locale/pt/LC_MESSAGES/gnupg2.mo
+share/locale/pt_BR/LC_MESSAGES/gnupg2.mo
+share/locale/ro/LC_MESSAGES/gnupg2.mo
+share/locale/ru/LC_MESSAGES/gnupg2.mo
+share/locale/sk/LC_MESSAGES/gnupg2.mo
+share/locale/sv/LC_MESSAGES/gnupg2.mo
+share/locale/tr/LC_MESSAGES/gnupg2.mo
+share/locale/zh_CN/LC_MESSAGES/gnupg2.mo
+share/locale/zh_TW/LC_MESSAGES/gnupg2.mo
diff --git a/security/gnupg2/PLIST.gpgsm b/security/gnupg2/PLIST.gpgsm
new file mode 100644
index 00000000000..143a702ab60
--- /dev/null
+++ b/security/gnupg2/PLIST.gpgsm
@@ -0,0 +1,17 @@
+@comment $NetBSD: PLIST.gpgsm,v 1.1.1.1 2006/11/17 12:13:11 shannonjr Exp $
+bin/gpg-connect-agent
+bin/gpgconf
+bin/gpgkey2ssh
+bin/gpgparsemail
+bin/gpgsm
+bin/gpgsm-gencert.sh
+bin/kbxutil
+bin/scdaemon
+bin/watchgnupg
+lib/gnupg/pcsc-wrapper
+sbin/addgnupghome
+share/gnupg/FAQ
+share/gnupg/com-certs.pem
+share/gnupg/faq.html
+share/gnupg/gpg-conf.skel
+share/gnupg/qualified.txt
diff --git a/security/gnupg2/buildlink3.mk b/security/gnupg2/buildlink3.mk
new file mode 100644
index 00000000000..4bb0800eecc
--- /dev/null
+++ b/security/gnupg2/buildlink3.mk
@@ -0,0 +1,26 @@
+# $NetBSD: buildlink3.mk,v 1.1.1.1 2006/11/17 12:13:11 shannonjr Exp $
+
+BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+
+GNUPG2_BUILDLINK3_MK:= ${GNUPG2_BUILDLINK3_MK}+
+
+.if ${BUILDLINK_DEPTH} == "+"
+BUILDLINK_DEPENDS+= gnupg2
+.endif
+
+BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Ngnupg2}
+BUILDLINK_PACKAGES+= gnupg2
+BUILDLINK_ORDER:= ${BUILDLINK_ORDER} ${BUILDLINK_DEPTH}gnupg2
+
+.if ${GNUPG2_BUILDLINK3_MK} == "+"
+BUILDLINK_API_DEPENDS.gnupg2+= gnupg2>=2.0.0
+BUILDLINK_PKGSRCDIR.gnupg2?= ../../security/gnupg2
+BUILDLINK_PREFIX.gnupg2?= ${LOCALBASE}
+.endif # GNUPG2_BUILDLINK3_MK
+
+.include "../../security/libgpg-error/buildlink3.mk"
+.include "../../security/libgcrypt/buildlink3.mk"
+.include "../../security/libksba/buildlink3.mk"
+.include "../../security/pinentry/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+
+BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//}
diff --git a/security/gnupg2/distinfo b/security/gnupg2/distinfo
new file mode 100644
index 00000000000..8110ef78e12
--- /dev/null
+++ b/security/gnupg2/distinfo
@@ -0,0 +1,15 @@
+$NetBSD: distinfo,v 1.1.1.1 2006/11/17 12:13:11 shannonjr Exp $
+
+SHA1 (gnupg-2.0.0.tar.bz2) = c335957368ea88bcb658922e7d3aae7e3ac6896d
+RMD160 (gnupg-2.0.0.tar.bz2) = 739e303f1380ec9cb5c3a248179001700efe6f2e
+Size (gnupg-2.0.0.tar.bz2) = 3904270 bytes
+SHA1 (libassuan-1.0.0.tar.bz2) = 5256d74a80619779a9802305a9f1ad7fd04277a1
+RMD160 (libassuan-1.0.0.tar.bz2) = 63b0cc77eb731ccd635e51543001a675c15a835f
+Size (libassuan-1.0.0.tar.bz2) = 260201 bytes
+SHA1 (pth-2.0.7.tar.gz) = 9a71915c89ff2414de69fe104ae1016d513afeee
+RMD160 (pth-2.0.7.tar.gz) = 80bc66777ba20d9648b7aaf3f58d593be6416910
+Size (pth-2.0.7.tar.gz) = 652640 bytes
+SHA1 (patch-aa) = 916346ad387ae4efd638b2c19bbedfe6f309eb2e
+SHA1 (patch-ab) = 501bce9a8474ac37a8e01eceae9b52f0e87868d5
+SHA1 (patch-ac) = ca9e1044a0eb8d3e25cd9c20174047a96038c236
+SHA1 (patch-af) = 04fdcbf19c4d530fc735c04dd785c07692d8b96d
diff --git a/security/gnupg2/patches/patch-aa b/security/gnupg2/patches/patch-aa
new file mode 100644
index 00000000000..9c3426a16c9
--- /dev/null
+++ b/security/gnupg2/patches/patch-aa
@@ -0,0 +1,54 @@
+$NetBSD: patch-aa,v 1.1.1.1 2006/11/17 12:13:11 shannonjr Exp $
+
+--- common/memrchr.c.orig 2006-10-19 04:13:12.000000000 -0600
++++ common/memrchr.c
+@@ -0,0 +1,49 @@
++/* memrchr.c - libc replacement function
++ * Copyright (C) 2005 Free Software Foundation, Inc.
++ *
++ * This file is part of GnuPG.
++ *
++ * GnuPG is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * GnuPG is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
++ * USA.
++ */
++
++/*
++ memrchr() is a GNU function that might not be available everywhere.
++ It's basically the inverse of memchr() - search backwards in a
++ memory block for a particular character.
++*/
++
++#include <config.h>
++#include <string.h>
++
++/* There are many ways to optimize this, but this is a simple
++ unoptimized implementation. */
++void *
++memrchr(const void *s, int c, size_t n)
++{
++ const unsigned char *start=s,*end=s;
++
++ end+=n-1;
++
++ while(end>=start)
++ {
++ if(*end==c)
++ return (void *)end;
++ else
++ end--;
++ }
++
++ return NULL;
++}
diff --git a/security/gnupg2/patches/patch-ab b/security/gnupg2/patches/patch-ab
new file mode 100644
index 00000000000..8c6cb0d43d6
--- /dev/null
+++ b/security/gnupg2/patches/patch-ab
@@ -0,0 +1,8 @@
+$NetBSD: patch-ab,v 1.1.1.1 2006/11/17 12:13:11 shannonjr Exp $
+
+--- common/memrchr.h.orig 2006-10-19 04:13:17.000000000 -0600
++++ common/memrchr.h
+@@ -0,0 +1,3 @@
++#include <string.h>
++void *
++memrchr(const void *s, int c, size_t n);
diff --git a/security/gnupg2/patches/patch-ac b/security/gnupg2/patches/patch-ac
new file mode 100644
index 00000000000..13127aee5a8
--- /dev/null
+++ b/security/gnupg2/patches/patch-ac
@@ -0,0 +1,21 @@
+$NetBSD: patch-ac,v 1.1.1.1 2006/11/17 12:13:11 shannonjr Exp $
+
+--- common/Makefile.am.orig 2006-10-17 05:49:02.000000000 -0600
++++ common/Makefile.am
+@@ -26,7 +26,7 @@ TESTS = $(module_tests)
+
+ AM_CPPFLAGS = -I$(top_srcdir)/gl
+
+-AM_CFLAGS = $(LIBGCRYPT_CFLAGS) $(KSBA_CFLAGS)
++AM_CFLAGS = $(LIBGCRYPT_CFLAGS) $(KSBA_CFLAGS) $(LIBASSUAN_CFLAGS)
+
+ common_sources = \
+ common-defs.h \
+@@ -46,6 +46,7 @@ common_sources = \
+ xasprintf.c \
+ xreadline.c \
+ membuf.c membuf.h \
++ memrchr.c memrchr.h \
+ iobuf.c iobuf.h \
+ ttyio.c ttyio.h \
+ asshelp.c asshelp.h \
diff --git a/security/gnupg2/patches/patch-af b/security/gnupg2/patches/patch-af
new file mode 100644
index 00000000000..57b51e29912
--- /dev/null
+++ b/security/gnupg2/patches/patch-af
@@ -0,0 +1,12 @@
+$NetBSD: patch-af,v 1.1.1.1 2006/11/17 12:13:11 shannonjr Exp $
+
+--- ../libassuan-1.0.0/src/Makefile.am.orig 2006-10-09 04:26:41.000000000 -0600
++++ ../libassuan-1.0.0/src/Makefile.am
+@@ -26,6 +26,7 @@ MOSTLYCLEANFILES = assuan-errors.c
+
+ if HAVE_PTH
+ libassuan_pth = libassuan-pth.a
++AM_CFLAGS=$(PTH_CFLAGS)
+ else
+ libassuan_pth =
+ endif