GnuPG vs glibc
Nach einem Upgrade der glibc hat sich gnupg nicht mehr dazu bewegen lassen, sich zu emergen. Die Fehlermeldungen wiesen zum Teil auf fehlende Dateien hin, zum anderen Teil waren sie einfach nur dubios. Aus diesem Grund habe ich mich entschieden, es selbst in die Hand zu nehmen und vom Portage abzuweichen. Wozu habe ich sonst mein lokales Portage-Overlay?
Da das Problem wahrscheinlich in meiner neuen glibc zu suchen ist, habe ich mich entschieden, eine aktuelle Version der Entwicklerversion von gnupg zu suchen - um jene zu ersetzen, welche bei mir Macken macht. Denn schlimmer als jetzt kann es nicht werden. Also ran an gnupg-1.9.93…
Nachdem ich ein ebuild modifiziert hatte, konnte ich schön langsam daran denken, es zu emergen und seine Abhängigkeiten zu erforschen.
Files:
gnupg-1.9.93.ebuild
# Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/app-crypt/gnupg/gnupg-1.9.22.ebuild,v 1.3 2006/10/05 04:29:49 robbat2 Exp $inherit eutils flag-o-matic autotools
DESCRIPTION=“The GNU Privacy Guard, a GPL pgp replacement” HOMEPAGE=“http://www.gnupg.org/” SRC_URI=“mirror://gnupg/alpha/gnupg/${P}.tar.bz2”
LICENSE=“GPL-2” SLOT=“1.9” KEYWORDS=“~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd” IUSE=“X gpg2-experimental doc ldap nls openct pcsc-lite smartcard selinux”
COMMON_DEPEND=” virtual/libc >=dev-libs/pth-1.3.7 >=dev-libs/libgcrypt-1.1.94 >=dev-libs/libksba-1.0.0 >=dev-libs/libgpg-error-1.4 >=dev-libs/libassuan-0.9.3 pcsc-lite? ( >=sys-apps/pcsc-lite-1.3.0 ) openct? ( >=dev-libs/openct-0.5.0 ) ldap? ( net-nds/openldap )”
Needs sh and arm to be keyworded on pinentry
X? ( app-crypt/pinentry )
DEPEND=“${COMMON_DEPEND} nls? ( sys-devel/gettext ) doc? ( sys-apps/texinfo )”
RDEPEND=“${COMMON_DEPEND} !app-crypt/gpg-agent =app-crypt/gnupg-1.4* X? ( || ( media-gfx/xloadimage media-gfx/xli ) ) virtual/mta selinux? ( sec-policy/selinux-gnupg ) nls? ( virtual/libintl )”
src_unpack() { unpack ${A} cd “${S}” sed -i -e ‘s/PIC/PIC/g’ intl/relocatable.c || die “PIC patching failed”
# this warning is only available on gcc4! sed -i -e '/AM_CFLAGS/s!-Wno-pointer-sign!!g' ${S}/g10/Makefile.am sed -i -e '/AM_CFLAGS/s!-Wno-pointer-sign!!g' ${S}/g10/Makefile.in #epatch "${FILESDIR}/${PN}-1.9.20-fbsd.patch" #epatch "${FILESDIR}/${P}-fbsd-gcc41.patch" AT_M4DIR="m4 gl/m4" eautoreconf}
src_compile() { local myconf=“”
if use X; then local viewer if has_version 'media-gfx/xloadimage'; then viewer=/usr/bin/xloadimage else viewer=/usr/bin/xli fi myconf="${myconf} --with-photo-viewer=${viewer}" else myconf="${myconf} --disable-photo-viewers" fi append-ldflags $(bindnow-flags) econf \ --enable-agent \ --enable-symcryptrun \ $(use_enable gpg2-experimental gpg) \ --enable-gpgsm \ $(use_enable smartcard scdaemon) \ $(use_enable nls) \ $(use_enable ldap) \ --disable-capabilities \ ${myconf} \ || die emake || die if use doc; then cd doc emake html || die fi}
src_install() { make DESTDIR=“${D}” install || die dodoc ChangeLog NEWS README THANKS TODO VERSION
# neither of these should really be needed, please check use gpg2-experimental && fperms u+s,go-r /usr/bin/gpg2 fperms u+s,go-r /usr/bin/gpg-agent use doc && dohtml doc/gnupg.html/* doc/*jpg doc/*png}
pkg_postinst() { einfo einfo “See http://www.gentoo.org/doc/en/gnupg-user.xml for documentation on gnupg” einfo }
libassuan-0.9.3.ebuild:
# Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/dev-libs/libassuan/libassuan-0.9.2.ebuild,v 1.1 2006/10/05 03:51:03 robbat2 Exp $inherit libtool
DESCRIPTION=“Standalone IPC library used by gpg, gpgme and newpg” HOMEPAGE=“http://www.gnupg.org/(en)/download/index.html#libassuan” SRC_URI=“mirror://gnupg/alpha/${PN}/${P}.tar.bz2”
LICENSE=“GPL-2” SLOT=“0” KEYWORDS=“~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc-macos ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd” IUSE=“”
DEPEND=“”
src_unpack() { unpack ${A} cd “${S}” elibtoolize }
src_install() { make install DESTDIR=“${D}” || die dodoc AUTHORS ChangeLog NEWS README THANKS TODO }
libksba-1.0.0.ebuild:
# Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/dev-libs/libksba/libksba-0.9.16.ebuild,v 1.2 2006/10/02 16:07:34 grobian Exp $inherit libtool
DESCRIPTION=“makes X.509 certificates and CMS easily accessible to applications” HOMEPAGE=“http://www.gnupg.org/(en)/download/index.html#libksba” SRC_URI=“mirror://gnupg/alpha/libksba/${P}.tar.bz2”
LICENSE=“GPL-2” SLOT=“0” KEYWORDS=“~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd” IUSE=“”
DEPEND=“>=dev-libs/libgpg-error-0.7 dev-libs/libgcrypt”
src_unpack() { unpack ${A} cd “${S}” elibtoolize }
src_install() { make DESTDIR=“${D}” install || die dodoc AUTHORS ChangeLog NEWS README README-alpha THANKS TODO VERSION }
libgpg-error-1.4.ebuild:
# Copyright 1999-2006 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/dev-libs/libgpg-error/libgpg-error-1.3.ebuild,v 1.2 2006/07/30 10:05:58 flameeyes Exp $inherit libtool
DESCRIPTION=“Contains error handling functions used by GnuPG software” HOMEPAGE=“http://www.gnupg.org/(en)/download/index.html#libgpg-error” SRC_URI=“mirror://gnupg/${PN}/${P}.tar.gz”
LICENSE=“GPL-2 LGPL-2.1” SLOT=“0” KEYWORDS=“~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc-macos ~ppc64 ~s390 ~sh ~sparc ~x86” IUSE=“nls”
DEPEND=“nls? ( sys-devel/gettext )”
src_unpack() { unpack “${A}” cd “${S}” elibtoolize }
src_compile() { econf $(use_enable nls) || die emake || die }
src_install() { make install DESTDIR=“${D}” || die dodoc AUTHORS ChangeLog NEWS README }
Kommentare
Kommentare werden geladen…