# Maintainer: Leonardo Arena # Contributor: Natanael Copa pkgname=heimdal pkgver=1.3.1 pkgrel=3 pkgdesc="An implementation of Kerberos 5" url="http://www.h5l.org/" license="BSD" depends= makedepends="gawk readline-dev e2fsprogs-dev>=1.41.9-r2 sqlite-dev autoconf automake libtool pkgconfig" install= subpackages="$pkgname-doc $pkgname-dev $pkgname-ftp $pkgname-telnet \ $pkgname-su $pkgname-rsh $pkgname-rcp $pkgname-pagsh $pkgname-kf" source="http://www.h5l.org/dist/src/$pkgname-$pkgver.tar.gz 001_all_heimdal-no_libedit.patch 002_all_heimdal-fPIC.patch 003_all_heimdal-rxapps.patch 005_all_heimdal-suid_fix.patch 013_all_heimdal-pthread-lib.patch 014_all_heimdal-path.patch 100-check-com_err-pthread.patch heimdal-c++-safe-krb5_cccol_cursor.patch heimdal-locate_plugin-header.patch " # krb5.h needs com_err.h depends_dev="e2fsprogs-dev" prepare() { [ -e /usr/lib/libasn1.so ] && echo "## remove old heimdal pkg first ##" && return 1 cd "$srcdir/$pkgname-$pkgver" patch -Np0 -i ../001_all_heimdal-no_libedit.patch || return 1 patch -Np0 -i ../002_all_heimdal-fPIC.patch || return 1 patch -Np0 -i ../003_all_heimdal-rxapps.patch || return 1 patch -Np0 -i ../005_all_heimdal-suid_fix.patch || return 1 patch -Np1 -i ../013_all_heimdal-pthread-lib.patch || return 1 patch -Np0 -i ../014_all_heimdal-path.patch || return 1 patch -Np1 -i ../100-check-com_err-pthread.patch || return 1 patch -Np1 -i ../heimdal-c++-safe-krb5_cccol_cursor.patch || return 1 patch -Np1 -i ../heimdal-locate_plugin-header.patch || return 1 # name clash with ruserpass in netdb.h sed -i -e 's/ruserpass/ruserpw/g' appl/ftp/ftp/*.[ch] || return 1 sed -i -e 's|var/heimdal|var/lib/heimdal|g' configure.in \ doc/setup.texi doc/heimdal.info kadmin/kadmind.8 kdc/kdc.8 \ lib/hdb/hdb.h lib/krb5/krb5.conf.5 lib/krb5/krb5.conf.cat5 sh ./autogen.sh || return 1 } build() { cd "$srcdir/$pkgname-$pkgver" export LDFLAGS="${LDFLAGS} -Wl,--as-needed" ./configure --prefix=/usr \ --enable-shared=yes --without-x \ --disable-berkeley-db \ --with-readline-lib=/usr/lib \ --with-readline-include=/usr/include/readline \ --with-openssl=/usr make || return 1 } package() { cd "$srcdir/$pkgname-$pkgver" make DESTDIR="$pkgdir" exec_prefix=/usr sysconfdir=/etc \ mandir=/usr/share/man infodir=/usr/share/info datadir=/var/lib/heimdal \ localstatedir=/var/lib/heimdal libexecdir=/usr/sbin install install -m644 -D krb5.conf ${pkgdir}/etc/krb5.conf || return 1 install -m755 -D ../../heimdal-kadmind.init ${pkgdir}/etc/init.d/heimdal-kadmind install -m755 -D ../../heimdal-kdc.init ${pkgdir}/etc/init.d/heimdal-kdc install -m755 -D ../../heimdal-kpasswdd.init ${pkgdir}/etc/init.d/heimdal-kpasswdd # Remove editline, we use libreadline #rm ${pkgdir}/usr/lib/libeditline.* || return 1 #rm ${pkgdir}/usr/include/editline.h || return 1 #rm ${pkgdir}/usr/share/man/man3/editline.* || return 1 # Rename daemons and their manpages for i in telnetd ftpd rshd; do mv ${pkgdir}/usr/share/man/man8/${i}.8 ${pkgdir}/usr/share/man/man8/k${i}.8 || return 1 mv ${pkgdir}/usr/sbin/${i} ${pkgdir}/usr/sbin/k${i} || return 1 done # Rename clients and their manpages for i in rcp rsh telnet ftp su login; do if [ -f ${pkgdir}/usr/share/man/man1/${i}.1 ]; then mv ${pkgdir}/usr/share/man/man1/${i}.1 ${pkgdir}/usr/share/man/man1/k${i}.1 || return 1 fi mv ${pkgdir}/usr/bin/${i} ${pkgdir}/usr/bin/k${i} || return 1 done for i in 1 3 5 8; do rm -rf "$pkgdir"/usr/share/man/cat$i done # Remove conflicts # e2fsprogs rm -f "$pkgdir"/usr/bin/compile_et \ "$pkgdir"/usr/share/man/man1/compile_et.1 # man-page rm "$pkgdir"/usr/share/man/man5/ftpusers.5* # openssl rm "$pkgdir"/usr/share/man/man3/DES* rm "$pkgdir"/usr/share/man/man3/DH* rm "$pkgdir"/usr/share/man/man3/EVP* rm "$pkgdir"/usr/share/man/man3/OpenSSL* rm "$pkgdir"/usr/share/man/man3/RAND* rm "$pkgdir"/usr/share/man/man3/RSA* # erlang rm "$pkgdir"/usr/share/man/man3/os.3* # Compress info pages for page in heimdal hx509; do gzip -9 "$pkgdir"/usr/share/info/${page}.info done # Install the license install -d "$pkgdir"/usr/share/licenses/$pkgname install -D -m644 "$srcdir"/$pkgname-$pkgver/LICENSE \ "$pkgdir"/usr/share/licenses/$pkgname/ || return 1 } ftp() { mkdir -p $subpkgdir/usr/bin/ mv $pkgdir/usr/bin/kftp $subpkgdir/usr/bin/kftp mkdir -p $subpkgdir/usr/sbin/ mv $pkgdir/usr/sbin/kftpd $subpkgdir/usr/sbin/kftpd } telnet() { mkdir -p $subpkgdir/usr/bin/ mv $pkgdir/usr/bin/ktelnet $subpkgdir/usr/bin/ktelnet mkdir -p $subpkgdir/usr/sbin/ mv $pkgdir/usr/sbin/ktelnetd $subpkgdir/usr/sbin/ktelnetd } su() { mkdir -p $subpkgdir/usr/bin/ mv $pkgdir/usr/bin/ksu $subpkgdir/usr/bin/ksu } rsh() { mkdir -p $subpkgdir/usr/bin/ mv $pkgdir/usr/bin/krsh $subpkgdir/usr/bin/krsh mkdir -p $subpkgdir/usr/sbin/ mv $pkgdir/usr/sbin/krshd $subpkgdir/usr/sbin/krshd } rcp() { mkdir -p $subpkgdir/usr/bin/ mv $pkgdir/usr/bin/krcp $subpkgdir/usr/bin/krcp } pagsh() { mkdir -p $subpkgdir/usr/bin/ mv $pkgdir/usr/bin/pagsh $subpkgdir/usr/bin/pagsh } kf() { mkdir -p $subpkgdir/usr/bin/ mv $pkgdir/usr/bin/kf $subpkgdir/usr/bin/kf } md5sums="4ce17deae040a3519e542f48fd901f21 heimdal-1.3.1.tar.gz 98e28f11f906c967aac22d6184102c9e 001_all_heimdal-no_libedit.patch 6d5571bdedba2e2423b90bccdbac2c0a 002_all_heimdal-fPIC.patch 2feec3924ee5230b54175b4d4000c872 003_all_heimdal-rxapps.patch 45aeb207f360f9f4e9e0fabc8bfeecbc 005_all_heimdal-suid_fix.patch 1b8665b771c4eb6b56ea8582c96e56e3 013_all_heimdal-pthread-lib.patch 8208ae8c0b6ff5ab4f64af1693e9e396 014_all_heimdal-path.patch e73205200f9641b5d969427ffb04282a 100-check-com_err-pthread.patch 7ebff9a320f18ed62f5fcb68c8fc18b8 heimdal-c++-safe-krb5_cccol_cursor.patch 248ab80b44568171e432a23524f4fe39 heimdal-locate_plugin-header.patch"