--- heimdal-1.0.ebuild 2007-07-24 12:56:47.000000000 +0200 +++ heimdal-0.8.1-r1.ebuild 2007-07-27 10:48:05.000000000 +0200 @@ -12,7 +12,7 @@ DESCRIPTION="Kerberos 5 implementation from KTH" HOMEPAGE="http://www.pdc.kth.se/heimdal/" -SRC_URI="ftp://ftp.pdc.kth.se/pub/heimdal/src/${P}.tar.gz +SRC_URI="ftp://ftp.pdc.kth.se/pub/heimdal/src/${P/_rc/rc}.tar.gz http://dev.gentoo.org/~seemant/distfiles/${PATCH_P}.tar.bz2 mirror://gentoo/${PATCH_P}.tar.bz2" @@ -32,6 +32,10 @@ PROVIDE="virtual/krb5" GENTOODIR=${WORKDIR}/gentoo +S=${WORKDIR}/${P/_rc/rc} + +KRB5_PREFIX="/usr/${PN}" +KRB5CONFIG=/usr/bin/krb5-config src_unpack() { unpack ${A} @@ -48,7 +52,6 @@ if use ldap; then myconf="${myconf} --with-openldap=/usr" - #append-flags -DLDAP_DEPRECATED=1 fi econf \ @@ -61,20 +64,14 @@ --enable-shared \ --enable-netinfo \ --enable-pthread-support \ - --libexecdir=/usr/sbin \ - --includedir=/usr/include/heimdal \ + --prefix="${KRB5_PREFIX}" \ + --libexecdir="${KRB5_PREFIX}"/sbin \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ ${myconf} || die "econf failed" emake || die "emake failed" - # Compile the added password checker: - #cd lib/kadm5 - #tc-export CC - #${CC} -shared -fPIC \ - # ${CFLAGS} -I"${S}"/include \ - # -DDICTPATH=\"/usr/$(get_libdir)/cracklib_dict\" \ - # -o sample_passwd_check.so sample_passwd_check.c -lcrack || \ - # die "Failed to compile password checker" } src_test() { @@ -91,10 +88,19 @@ src_install() { emake DESTDIR="${D}" install || die "emake install failed" - #dolib lib/kadm5/sample_passwd_check.so - dodoc ChangeLog README NEWS TODO + # Symlink executables into the system tree + dodir /usr/bin + for i in `ls "${D}/${KRB5_PREFIX}"/bin`; do + ln -s "${KRB5_PREFIX}/bin/${i}" "${D}"/usr/bin/ + done + + dodir /usr/sbin + for i in `ls "${D}/${KRB5_PREFIX}"/sbin`; do + ln -s "${KRB5_PREFIX}/sbin/${i}" "${D}"/usr/sbin/ + done + # Begin client rename and install for i in {telnetd,ftpd,rshd} do @@ -111,20 +117,9 @@ mv "${D}"/usr/share/man/man5/{,k}ftpusers.5 mv "${D}"/usr/share/man/man5/{,k}login.access.5 - # Create symlinks for the includes - #dosym heimdal /usr/include/gssapi - #dosym heimdal/krb5-types.h /usr/include/krb5-types.h - #dosym heimdal/krb5.h /usr/include/krb5.h - #dosym heimdal/asn1_err.h /usr/include/asn1_err.h - #dosym heimdal/krb5_asn1.h /usr/include/krb5_asn1.h - #dosym heimdal/krb5_err.h /usr/include/krb5_err.h - #dosym heimdal/heim_err.h /usr/include/heim_err.h - #dosym heimdal/k524_err.h /usr/include/k524_err.h - #dosym heimdal/krb5-protos.h /usr/include/krb5-protos.h - # Hacky symlinks for silly old SASL checks - dosym . /usr/include/heimdal/include - dosym /usr/lib /usr/include/heimdal/lib + #dosym . /usr/include/heimdal/include + #dosym /usr/lib /usr/include/heimdal/lib doinitd "${GENTOODIR}"/configs/heimdal-kdc doinitd "${GENTOODIR}"/configs/heimdal-kadmind @@ -143,4 +138,32 @@ # default database dir keepdir /var/heimdal + + dodir /etc/env.d + cat > "${D}"/etc/env.d/15heimdal <<-EOF + PATH=${KRB5_PREFIX}/bin + ROOTPATH=${KRB5_PREFIX}/sbin + LDPATH=${KRB5_PREFIX}/lib + MANDIR=/usr/share/man + INFODIR=/usr/share/info + EOF + + dodir /usr/lib/pkgconfig + for library in krb5 gssapi kadm-client kadm-server kafs; do + cat > "${D}"/usr/lib/pkgconfig/"${library}.pc" <<-EOF + prefix=`"${D}/${KRB5CONFIG}" --prefix "${library}"` + exec_prefix=`"${D}/${KRB5CONFIG}" --exec-prefix "${library}"` + libdir=`"${D}/${KRB5CONFIG}" --libs |sed -e's/^-L\([^ ]*\)\($\| .*$\)/\1/'` + includedir=`"${D}/${KRB5CONFIG}" --cflags |sed -e's/^-I\([^ ]*\)\($\| .*$\)/\1/'` + + Name: ${PN} ${library} + Description: the $library part of ${PN} + Version: ${PV} + Requires: + Libs: `"${D}/${KRB5CONFIG}" --libs "${library}"` + Cflags: `"${D}/${KRB5CONFIG}" --cflags "${library}"` + EOF + done + + }