Mac OS X - Installing and configuring 'gpg-agent'

Benjamin Donnachie benjamin at py-soft.co.uk
Thu May 4 04:53:08 CEST 2006


For the benefit of the lists...

To get gpg-agent v1.9.20 (required for smartcards) working under Mac OS
with darwin ports:

Replace the file
/opt/local/var/db/dports/sources/rsync.rsync.darwinports.org_dpupdate_dports/security/gpg-agent/Portfile
with the attached, and place the attached *.diff files in
/opt/local/var/db/dports/sources/rsync.rsync.darwinports.org_dpupdate_dports/security/gpg-agent/files/

Then type the following:

sudo port clean gpg-agent
sudo port install gpg-agent


Some of the gpg modules do not correctly link with the pth library and
for now the Portfile contains the following messy fix: configure.env
LDFLAGS="-L/opt/local/lib -lpth".  This will need tidying up at some
point, perhaps through changes in the Makefiles (hence copy to devel list).

See also http://bugzilla.opendarwin.org/show_bug.cgi?id=3730

Ben Donnachie.

-------------- next part --------------
--- tools/gpgparsemail.c   2005-12-14 10:45:28.000000000 +0000
+++ tools/gpgparsemail.c   2006-04-10 09:52:49.000000000 +0100
@@ -145,7 +145,7 @@
   return p;
 }
 
-static char *
+/* static */ char *
 stpcpy (char *a,const char *b)
 {
   while (*b)

-------------- next part --------------
--- scd/scdaemon.c 2005-10-27 09:37:09.000000000 +0100
+++ scd/scdaemon.c 2006-05-03 16:03:07.000000000 +0100
@@ -139,11 +139,12 @@
 /* The card dirver we use by default for PC/SC.  */
 #if defined(HAVE_W32_SYSTEM) || defined(__CYGWIN__)
 #define DEFAULT_PCSC_DRIVER "winscard.dll"
+#elif defined(__APPLE__)
+  #define DEFAULT_PCSC_DRIVER "/System/Library/Frameworks/PCSC.framework/PCSC"
 #else
 #define DEFAULT_PCSC_DRIVER "libpcsclite.so"
 #endif
 
-
 /* Flag to indicate that a shutdown was requested. */
 static int shutdown_pending;


-------------- next part --------------
# $Id: Portfile,v 1.6 2005/11/05 13:32:30 yeled Exp $

PortSystem	1.0
name		gpg-agent
version		1.9.20
revision	2
categories	security
maintainers	yeled at opendarwin.org
description	GPG key agent
long_description	gpg-agent is a key management agent similar \
			in function to ssh-agent.
homepage	http://www.gnupg.org/
platforms	darwin
distname	gnupg-${version}
distfiles	gnupg-${version}.tar.bz2
extract.cmd	bunzip2
master_sites	ftp://ftp.gnupg.org/gcrypt/alpha/gnupg/ \
		ftp://ftp.freenet.de/pub/ftp.gnupg.org/gcrypt/alpha/gnupg/
checksums	md5 93899203fc0530f03e146d49b65c1e28

configure.env	LDFLAGS="-L/opt/local/lib -lpth"

configure.args	--mandir=${prefix}/share/man \
		--infodir=${prefix}/share/info \
		--with-pinentry-pgm=${prefix}/bin/pinentry \
		--enable-agent-only

depends_lib	port:gettext port:libiconv port:zlib port:bison \
	port:libgpg-error port:libassuan port:libgcrypt port:libksba \
	port:pth port:pinentry 

destroot.dir	${worksrcpath}/agent

test.run	yes
test.dir	${worksrcpath}/checks
test.target 	check

patchfiles	patch-scdaemon.diff patch-gpgparsemail.diff

variant darwin {
	configure.args-append --disable-asm --disable-dynload
}

variant sunos {
	configure.args-append --disable-asm --disable-dynload
}

post-destroot   {
	file delete -force ${destroot}${prefix}/share/info/dir
}




More information about the Gnupg-users mailing list