diff options
Diffstat (limited to 'app-crypt/gnupg')
-rw-r--r-- | app-crypt/gnupg/ChangeLog | 7 | ||||
-rw-r--r-- | app-crypt/gnupg/files/digest-gnupg-1.4.7 | 9 | ||||
-rw-r--r-- | app-crypt/gnupg/gnupg-1.4.7.ebuild | 211 |
3 files changed, 226 insertions, 1 deletions
diff --git a/app-crypt/gnupg/ChangeLog b/app-crypt/gnupg/ChangeLog index 87d969667f58..113b5dcc5313 100644 --- a/app-crypt/gnupg/ChangeLog +++ b/app-crypt/gnupg/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for app-crypt/gnupg # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-crypt/gnupg/ChangeLog,v 1.281 2007/03/08 17:25:28 alonbl Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-crypt/gnupg/ChangeLog,v 1.282 2007/03/14 15:21:17 alonbl Exp $ + +*gnupg-1.4.7 (14 Mar 2007) + + 14 Mar 2007; Alon Bar-Lev <alonbl@gentoo.org> +gnupg-1.4.7.ebuild: + Version bump 08 Mar 2007; Alon Bar-Lev <alonbl@gentoo.org> Manifest: Cleanup diff --git a/app-crypt/gnupg/files/digest-gnupg-1.4.7 b/app-crypt/gnupg/files/digest-gnupg-1.4.7 new file mode 100644 index 000000000000..a5be7d35d764 --- /dev/null +++ b/app-crypt/gnupg/files/digest-gnupg-1.4.7 @@ -0,0 +1,9 @@ +MD5 9bd5efa5bd51f9c3bc7f9da5efe96169 gnupg-1.4.7-ecc0.1.6.diff.bz2 17083 +RMD160 df89fc93d5a9836bb12311d66f0ebdab31799fd5 gnupg-1.4.7-ecc0.1.6.diff.bz2 17083 +SHA256 568c1eb297942157250dd11c9a8171566535c49361ade00ab1c95191821ae1fe gnupg-1.4.7-ecc0.1.6.diff.bz2 17083 +MD5 b06a141cca5cd1a55bbdd25ab833303c gnupg-1.4.7.tar.bz2 3200642 +RMD160 630344c99834cf9adcf806d55e6f609a1e50bd8b gnupg-1.4.7.tar.bz2 3200642 +SHA256 69d18b7d193f62ca27ed4febcb4c9044aa0c95305d3258fe902e2fae5fc6468d gnupg-1.4.7.tar.bz2 3200642 +MD5 9dc3bc086824a8c7a331f35e09a3e57f idea.c.gz 5216 +RMD160 e35be5a031d10d52341ac5f029d28f811edd908d idea.c.gz 5216 +SHA256 309928da34941dff1d6f6687542ff3d58306d85be9e1a9906bc4f9f8e6011844 idea.c.gz 5216 diff --git a/app-crypt/gnupg/gnupg-1.4.7.ebuild b/app-crypt/gnupg/gnupg-1.4.7.ebuild new file mode 100644 index 000000000000..d016ab2e5156 --- /dev/null +++ b/app-crypt/gnupg/gnupg-1.4.7.ebuild @@ -0,0 +1,211 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-crypt/gnupg/gnupg-1.4.7.ebuild,v 1.1 2007/03/14 15:21:17 alonbl Exp $ + +inherit eutils flag-o-matic + +ECCVER="0.1.6" +ECCVER_GNUPG="1.4.7" +ECC_PATCH="${PN}-${ECCVER_GNUPG}-ecc${ECCVER}.diff" +MY_P=${P/_/} + +DESCRIPTION="The GNU Privacy Guard, a GPL pgp replacement" +HOMEPAGE="http://www.gnupg.org/" +SRC_URI="mirror://gnupg/gnupg/${P}.tar.bz2 + !bindist? ( + idea? ( ftp://ftp.gnupg.dk/pub/contrib-dk/idea.c.gz ) + ecc? ( http://www.calcurco.cat/eccGnuPG/src/${ECC_PATCH}.bz2 ) + )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="bzip2 bindist curl ecc idea ldap nls readline selinux smartcard static usb zlib X linguas_ru" + +COMMON_DEPEND=" + ldap? ( net-nds/openldap ) + bzip2? ( app-arch/bzip2 ) + zlib? ( sys-libs/zlib ) + curl? ( net-misc/curl ) + virtual/mta + readline? ( sys-libs/readline ) + smartcard? ( dev-libs/libusb ) + usb? ( dev-libs/libusb )" + +RDEPEND="!static? ( + ${COMMON_DEPEND} + X? ( || ( media-gfx/xloadimage media-gfx/xli ) ) + ) + selinux? ( sec-policy/selinux-gnupg ) + nls? ( virtual/libintl )" + +DEPEND="${COMMON_DEPEND} + dev-lang/perl + nls? ( sys-devel/gettext )" + +S="${WORKDIR}/${MY_P}" + +src_unpack() { + unpack ${A} + + if use idea; then + if use bindist; then + einfo "Skipping IDEA support to comply with binary distribution (bug #148907)." + else + ewarn "Please read http://www.gnupg.org/(en)/faq/why-not-idea.html" + mv "${WORKDIR}"/idea.c "${S}"/cipher/idea.c || \ + ewarn "failed to insert IDEA module" + fi + fi + + if use ecc; then + if use bindist; then + einfo "Skipping ECC patch to comply with binary distribution (bug #148907)." + else + sed -i \ + "s/- VERSION='${ECCVER_GNUPG}'/- VERSION='${PV}'/" \ + "${ECC_PATCH}" + sed -i \ + "s/+ VERSION='${ECCVER_GNUPG}-ecc${ECCVER}'/+ VERSION='${PV}-ecc${ECCVER}'/" \ + "${ECC_PATCH}" + + EPATCH_OPTS="-p1 -d ${S}" epatch "${ECC_PATCH}" + fi + fi + + # maketest fix + EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-1.4.3-selftest.patch + + # install RU man page in right location + EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-1.4.6-badruman.patch + + # keyserver fix + EPATCH_OPTS="-p1 -d ${S}" epatch "${FILESDIR}"/${PN}-1.4.3-keyserver.patch + + cd "${S}" + # Fix PIC definitions + sed -i -e 's:PIC:__PIC__:' mpi/i386/mpih-{add,sub}1.S intl/relocatable.c + sed -i -e 's:if PIC:ifdef __PIC__:' mpi/sparc32v8/mpih-mul{1,2}.S +} + +src_compile() { + # Certain sparc32 machines seem to have trouble building correctly with + # -mcpu enabled. While this is not a gnupg problem, it is a temporary + # fix until the gcc problem can be tracked down. + if [ "${ARCH}" == "sparc" ] && [ "${PROFILE_ARCH}" == "sparc" ]; then + filter-flags -mcpu=supersparc -mcpu=v8 -mcpu=v7 + fi + + # 'USE=static' support was requested in #29299 + use static &&append-ldflags -static + + append-ldflags $(bindnow-flags) + + # fix compile problem on ppc64 + use ppc64 && myconf="${myconf} --disable-asm" + + econf \ + $(use_enable ldap) \ + --enable-mailto \ + --enable-hkp \ + --enable-finger \ + $(use_with !zlib included-zlib) \ + $(use_with curl libcurl /usr) \ + $(use_enable nls) \ + $(use_enable bzip2) \ + $(use_enable smartcard card-support) \ + $(use_enable selinux selinux-support) \ + --disable-capabilities \ + $(use_with readline) \ + $(use_with usb libusb /usr) \ + $(use_enable static) \ + $(use_enable X photo-viewers) \ + --enable-static-rnd=linux \ + --libexecdir=/usr/libexec \ + --enable-noexecstack \ + ${myconf} || die + # this is because it will run some tests directly + gnupg_fixcheckperms + emake || die +} + +src_install() { + gnupg_fixcheckperms + make DESTDIR="${D}" install || die + + # keep the documentation in /usr/share/doc/... + rm -rf "${D}/usr/share/gnupg/FAQ" "${D}/usr/share/gnupg/faq.html" + + dodoc AUTHORS BUGS ChangeLog NEWS PROJECTS README THANKS \ + TODO VERSION doc/{FAQ,HACKING,DETAILS,OpenPGP,faq.raw} + + docinto sgml + dodoc doc/*.sgml + + dohtml doc/faq.html + + exeinto /usr/libexec/gnupg + doexe tools/make-dns-cert + + # install RU documentation in right location + if use linguas_ru + then + cp doc/gpg.ru.1 ${T}/gpg.1 + doman -i18n=ru ${T}/gpg.1 + fi +} + +gnupg_fixcheckperms() { + # GnuPG does weird things for testing that it build correctly + # as we as for the additional tests. It WILL fail with perms 770 :-(. + # See bug #80044 + if has userpriv ${FEATURES}; then + einfo "Fixing permissions in check directory" + chown -R portage:portage ${S}/checks + chmod -R ugo+rw ${S}/checks + chmod ugo+rw ${S}/checks + fi +} + +src_test() { + gnupg_fixcheckperms + einfo "Running tests" + emake check + ret=$? + if [ $ret -ne 0 ]; then + die "Some tests failed! Please report to the Gentoo Bugzilla" + fi +} + +pkg_postinst() { + ewarn "If you are using a non-Linux system, or a kernel older than 2.6.9," + ewarn "you MUST make the gpg binary setuid." + echo + if use !bindist && use idea; then + elog + elog "IDEA" + elog "you have compiled ${PN} with support for the IDEA algorithm, this code" + elog "is distributed under the GPL in countries where it is permitted to do so" + elog "by law." + elog + elog "Please read http://www.gnupg.org/(en)/faq/why-not-idea.html for more information." + elog + ewarn "If you are in a country where the IDEA algorithm is patented, you are permitted" + ewarn "to use it at no cost for 'non revenue generating data transfer between private" + ewarn "individuals'." + ewarn + ewarn "Countries where the patent applies are listed here" + ewarn "http://www.mediacrypt.com/_contents/10_idea/101030_ea_pi.asp" + ewarn + ewarn "Further information and other licenses are availble from http://www.mediacrypt.com/" + ewarn + fi + if use !bindist && use ecc; then + ewarn + ewarn "The elliptical curves patch is experimental" + ewarn "Further info available at http://alumnes.eps.udl.es/%7Ed4372211/index.en.html" + fi + elog + elog "See http://www.gentoo.org/doc/en/gnupg-user.xml for documentation on gnupg" + elog +} |