From 368a6d9705b38dcb5b3c29a80aec261b25e6d602 Mon Sep 17 00:00:00 2001
From: Cecil Hugh Watson <knoppmyth@gmail.com>
Date: Sat, 4 Sep 2010 16:01:01 -0700
Subject: heimdal:Bumped/Updated for LinHES 7.

---
 .../heimdal/001_all_heimdal-no_libedit.patch       |  10 ++
 abs/core-testing/heimdal/002_all_heimal-fPIC.patch |  12 ++
 .../heimdal/003_all_heimdal-rxapps.patch           |  22 ++++
 .../heimdal/005_all_heimdal-suid_fix.patch         |  20 ++++
 .../heimdal/012_all_heimdal-berkdb.patch           | 124 +++++++++++++++++++++
 .../heimdal/013_all_heimdal-pthread-lib.patch      |  11 ++
 .../heimdal/014_all_heimdal-path.patch             |  50 +++++++++
 abs/core-testing/heimdal/PKGBUILD                  |  96 +++++++++-------
 8 files changed, 304 insertions(+), 41 deletions(-)
 create mode 100644 abs/core-testing/heimdal/001_all_heimdal-no_libedit.patch
 create mode 100644 abs/core-testing/heimdal/002_all_heimal-fPIC.patch
 create mode 100644 abs/core-testing/heimdal/003_all_heimdal-rxapps.patch
 create mode 100644 abs/core-testing/heimdal/005_all_heimdal-suid_fix.patch
 create mode 100644 abs/core-testing/heimdal/012_all_heimdal-berkdb.patch
 create mode 100644 abs/core-testing/heimdal/013_all_heimdal-pthread-lib.patch
 create mode 100644 abs/core-testing/heimdal/014_all_heimdal-path.patch

diff --git a/abs/core-testing/heimdal/001_all_heimdal-no_libedit.patch b/abs/core-testing/heimdal/001_all_heimdal-no_libedit.patch
new file mode 100644
index 0000000..a551bdc
--- /dev/null
+++ b/abs/core-testing/heimdal/001_all_heimdal-no_libedit.patch
@@ -0,0 +1,10 @@
+--- cf/krb-readline.m4	2005-06-16 18:28:32.000000000 +0200
++++ cf/krb-readline.m4	2005-06-27 23:17:06.000000000 +0200
+@@ -6,7 +6,6 @@
+ dnl el_init
+ 
+ AC_DEFUN([KRB_READLINE],[
+-AC_FIND_FUNC_NO_LIBS(el_init, edit, [], [], [$LIB_tgetent])
+ if test "$ac_cv_func_el_init" = yes ; then
+ 	AC_CACHE_CHECK(for four argument el_init, ac_cv_func_el_init_four,[
+ 		AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h>
diff --git a/abs/core-testing/heimdal/002_all_heimal-fPIC.patch b/abs/core-testing/heimdal/002_all_heimal-fPIC.patch
new file mode 100644
index 0000000..c67dbae
--- /dev/null
+++ b/abs/core-testing/heimdal/002_all_heimal-fPIC.patch
@@ -0,0 +1,12 @@
+--- lib/editline/Makefile.am	2005-06-16 18:28:44.000000000 +0200
++++ lib/editline/Makefile.am	2005-06-27 23:21:02.000000000 +0200
+@@ -41,6 +41,9 @@
+ 
+ EXTRA_DIST = $(man_MANS)
+ 
++$(libeditline_la_OBJECTS): %.lo: %.c
++	$(LTCOMPILE) -fPIC -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
++
+ snprintf.c:
+ 	$(LN_S) $(srcdir)/../roken/snprintf.c .
+ strdup.c:
diff --git a/abs/core-testing/heimdal/003_all_heimdal-rxapps.patch b/abs/core-testing/heimdal/003_all_heimdal-rxapps.patch
new file mode 100644
index 0000000..40fc05f
--- /dev/null
+++ b/abs/core-testing/heimdal/003_all_heimdal-rxapps.patch
@@ -0,0 +1,22 @@
+--- appl/kx/rxtelnet.in	2005-06-16 18:29:10.000000000 +0200
++++ appl/kx/rxtelnet.in	2005-06-27 23:21:34.000000000 +0200
+@@ -2,7 +2,7 @@
+ # $Id: rxtelnet.in,v 1.31 2004/03/07 17:22:06 lha Exp $
+ #
+ usage="Usage: $0 [-l username] [-k] [-fF] [-t args_to_telnet] [-x args_to_xterm] [-K args_to_kx] [-w term_emulator] [-b telnet_binary] [-n] [-v] [-h | --help] [--version] host [port]"
+-binary=telnet
++binary=ktelnet
+ term=
+ kx_args=-P
+ while true
+--- appl/kx/rxterm.in	2005-06-16 18:29:10.000000000 +0200
++++ appl/kx/rxterm.in	2005-06-27 23:21:55.000000000 +0200
+@@ -2,7 +2,7 @@
+ # $Id: rxterm.in,v 1.23 2002/03/18 17:37:34 joda Exp $
+ #
+ usage="Usage: $0 [-l username] [-k] [-f] [-r rsh_args] [-x xterm_args] [-K kx_args] [-w term_emulator] [-b rsh_binary][-v] [-h | --help] [--version] host"
+-binary=rsh
++binary=krsh
+ term=xterm
+ while true
+ do
diff --git a/abs/core-testing/heimdal/005_all_heimdal-suid_fix.patch b/abs/core-testing/heimdal/005_all_heimdal-suid_fix.patch
new file mode 100644
index 0000000..35a9ed9
--- /dev/null
+++ b/abs/core-testing/heimdal/005_all_heimdal-suid_fix.patch
@@ -0,0 +1,20 @@
+--- appl/su/Makefile.am	2005-06-16 18:27:46.000000000 +0200
++++ appl/su/Makefile.am	2005-06-27 23:25:21.000000000 +0200
+@@ -7,6 +7,7 @@
+ bin_PROGRAMS = su
+ bin_SUIDS = su
+ su_SOURCES = su.c supaths.h
++su_LDFLAGS = -Wl,-z,now
+ man_MANS = su.1
+ 
+ LDADD = $(LIB_kafs) \
+--- appl/otp/Makefile.am	2005-06-16 18:28:46.000000000 +0200
++++ appl/otp/Makefile.am	2005-06-27 23:25:40.000000000 +0200
+@@ -8,6 +8,7 @@
+ bin_SUIDS = otp
+ otp_SOURCES = otp.c otp_locl.h
+ otpprint_SOURCES = otpprint.c otp_locl.h
++otp_LDFLAGS = -Wl,-z,now
+ 
+ man_MANS = otp.1  otpprint.1
+ 
diff --git a/abs/core-testing/heimdal/012_all_heimdal-berkdb.patch b/abs/core-testing/heimdal/012_all_heimdal-berkdb.patch
new file mode 100644
index 0000000..46762c2
--- /dev/null
+++ b/abs/core-testing/heimdal/012_all_heimdal-berkdb.patch
@@ -0,0 +1,124 @@
+Binary files heimdal-0.7-old/cf/.find-func-no-libs2.m4.swp and heimdal-0.7/cf/.find-func-no-libs2.m4.swp differ
+Index: heimdal/cf/db.m4
+===================================================================
+--- heimdal.orig/cf/db.m4
++++ heimdal/cf/db.m4
+@@ -18,24 +18,13 @@ db_type=unknown
+ 
+ if test "$enable_berkeley_db" != no; then
+ 
+-  AC_CHECK_HEADERS([				\
+-	db4/db.h				\
+-	db3/db.h				\
+-	db.h					\
+-	db_185.h				\
+-  ])
++  AC_CHECK_HEADERS([db.h])
+ 
+ dnl db_create is used by db3 and db4
+ 
+-  AC_FIND_FUNC_NO_LIBS(db_create, db4 db3 db, [
++  AC_FIND_FUNC_NO_LIBS(db_create, db, [
+   #include <stdio.h>
+-  #ifdef HAVE_DB4_DB_H
+-  #include <db4/db.h>
+-  #elif defined(HAVE_DB3_DB_H)
+-  #include <db3/db.h>
+-  #else
+   #include <db.h>
+-  #endif
+   ],[NULL, NULL, 0])
+ 
+   if test "$ac_cv_func_db_create" = "yes"; then
+@@ -50,17 +39,9 @@ dnl db_create is used by db3 and db4
+ 
+ dnl dbopen is used by db1/db2
+ 
+-    AC_FIND_FUNC_NO_LIBS(dbopen, db2 db, [
++    AC_FIND_FUNC_NO_LIBS(dbopen, db, [
+     #include <stdio.h>
+-    #if defined(HAVE_DB2_DB_H)
+-    #include <db2/db.h>
+-    #elif defined(HAVE_DB_185_H)
+-    #include <db_185.h>
+-    #elif defined(HAVE_DB_H)
+     #include <db.h>
+-    #else
+-    #error no db.h
+-    #endif
+     ],[NULL, 0, 0, 0, NULL])
+ 
+     if test "$ac_cv_func_dbopen" = "yes"; then
+Index: heimdal/lib/hdb/db.c
+===================================================================
+--- heimdal.orig/lib/hdb/db.c
++++ heimdal/lib/hdb/db.c
+@@ -37,11 +37,7 @@ RCSID("$Id: db.c 20215 2007-02-09 21:59:
+ 
+ #if HAVE_DB1
+ 
+-#if defined(HAVE_DB_185_H)
+-#include <db_185.h>
+-#elif defined(HAVE_DB_H)
+ #include <db.h>
+-#endif
+ 
+ static krb5_error_code
+ DB_close(krb5_context context, HDB *db)
+Index: heimdal/lib/hdb/db3.c
+===================================================================
+--- heimdal.orig/lib/hdb/db3.c
++++ heimdal/lib/hdb/db3.c
+@@ -37,13 +37,7 @@ RCSID("$Id: db3.c 21610 2007-07-17 07:10
+ 
+ #if HAVE_DB3
+ 
+-#ifdef HAVE_DB4_DB_H
+-#include <db4/db.h>
+-#elif defined(HAVE_DB3_DB_H)
+-#include <db3/db.h>
+-#else
+ #include <db.h>
+-#endif
+ 
+ static krb5_error_code
+ DB_close(krb5_context context, HDB *db)
+Index: heimdal/lib/roken/getcap.c
+===================================================================
+--- heimdal.orig/lib/roken/getcap.c
++++ heimdal/lib/roken/getcap.c
+@@ -38,11 +38,13 @@
+ #include "roken.h"
+ RCSID("$Id: getcap.c 16561 2006-01-13 14:25:32Z lha $");
+ 
++#if defined(HAVE_DBOPEN) && defined(HAVE_DB_H)
++#define USE_DB
++#endif
++
+ #include <sys/types.h>
+ #include <ctype.h>
+-#if defined(HAVE_DB_185_H)
+-#include <db_185.h>
+-#elif defined(HAVE_DB_H)
++#ifdef USE_DB
+ #include <db.h>
+ #endif
+ #include <errno.h>	
+Index: heimdal/lib/roken/ndbm_wrap.c
+===================================================================
+--- heimdal.orig/lib/roken/ndbm_wrap.c
++++ heimdal/lib/roken/ndbm_wrap.c
+@@ -37,13 +37,7 @@ RCSID("$Id: ndbm_wrap.c 21634 2007-07-17
+ #endif
+ 
+ #include "ndbm_wrap.h"
+-#if defined(HAVE_DB4_DB_H)
+-#include <db4/db.h>
+-#elif defined(HAVE_DB3_DB_H)
+-#include <db3/db.h>
+-#else
+ #include <db.h>
+-#endif
+ 
+ #include <stdio.h>
+ #include <stdlib.h>
diff --git a/abs/core-testing/heimdal/013_all_heimdal-pthread-lib.patch b/abs/core-testing/heimdal/013_all_heimdal-pthread-lib.patch
new file mode 100644
index 0000000..19f8794
--- /dev/null
+++ b/abs/core-testing/heimdal/013_all_heimdal-pthread-lib.patch
@@ -0,0 +1,11 @@
+--- heimdal-0.7.1/cf/pthreads.m4.old	2005-09-09 12:12:28.000000000 +0000
++++ heimdal-0.7.1/cf/pthreads.m4	2005-09-17 22:23:23.000000000 +0000
+@@ -32,7 +32,7 @@
+ 	2.*)
+ 		native_pthread_support=yes
+ 		PTHREADS_CFLAGS=-pthread
+-		PTHREADS_LIBS=-pthread
++		PTHREADS_LIBS=-lpthread
+ 		;;
+ 	esac
+ 	;;
diff --git a/abs/core-testing/heimdal/014_all_heimdal-path.patch b/abs/core-testing/heimdal/014_all_heimdal-path.patch
new file mode 100644
index 0000000..36a86f1
--- /dev/null
+++ b/abs/core-testing/heimdal/014_all_heimdal-path.patch
@@ -0,0 +1,50 @@
+--- appl/rcp/rcp.c.old	2006-05-03 13:31:59.398493625 +0200
++++ appl/rcp/rcp.c	2006-05-03 13:32:04.494485981 +0200
+@@ -34,7 +34,7 @@
+ #include "rcp_locl.h"
+ #include <getarg.h>
+ 
+-#define RSH_PROGRAM "rsh"
++#define RSH_PROGRAM "krsh"
+ 
+ struct  passwd *pwd;
+ uid_t	userid;
+--- appl/rcp/rcp_locl.h.old	2006-05-03 02:30:31.602025409 +0200
++++ appl/rcp/rcp_locl.h	2006-05-03 02:30:35.886018983 +0200
+@@ -64,4 +64,4 @@
+ #define	_PATH_CP	"/bin/cp"
+ #endif
+ #undef _PATH_RSH
+-#define	_PATH_RSH	BINDIR "/rsh"
++#define	_PATH_RSH	BINDIR "/krsh"
+--- appl/telnet/telnetd/telnetd.h.old	2006-05-03 02:23:14.582680939 +0200
++++ appl/telnet/telnetd/telnetd.h	2006-05-03 02:23:23.746667193 +0200
+@@ -192,7 +192,7 @@
+ #endif
+ 
+ #undef _PATH_LOGIN
+-#define _PATH_LOGIN	BINDIR "/login"
++#define _PATH_LOGIN	BINDIR "/klogin"
+ 
+ /* fallbacks */
+ 
+--- appl/login/shadow.c.old	2006-05-05 06:31:29.517138115 +0200
++++ appl/login/shadow.c	2006-05-05 06:32:26.433052741 +0200
+@@ -38,7 +38,7 @@
+ #ifdef HAVE_SHADOW_H
+ 
+ #ifndef _PATH_CHPASS
+-#define _PATH_CHPASS "/usr/bin/passwd"
++#define _PATH_CHPASS "/usr/bin/kpasswd"
+ #endif
+ 
+ static int
+@@ -52,7 +52,7 @@
+         printf("fork /bin/passwd");
+         exit(1);
+     case 0:
+-        execlp(_PATH_CHPASS, "passwd", who->pw_name, (char *) 0);
++        execlp(_PATH_CHPASS, "kpasswd", who->pw_name, (char *) 0);
+         exit(1);
+     default:
+         waitpid(pid, &status, 0);
diff --git a/abs/core-testing/heimdal/PKGBUILD b/abs/core-testing/heimdal/PKGBUILD
index 06dd0cd..2074973 100644
--- a/abs/core-testing/heimdal/PKGBUILD
+++ b/abs/core-testing/heimdal/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 21345 2008-12-12 02:52:37Z allan $
+# $Id: PKGBUILD 81228 2010-05-27 15:14:39Z allan $
 # Maintainer: Allan McRae <allan@archlinux.org>
 # Contributor: Jan de Groot <jgc@archlinux.org>
 
@@ -7,86 +7,100 @@
 #
 
 pkgname=heimdal
-pkgver=1.2.1
-pkgrel=2
+pkgver=1.3.3
+pkgrel=1
 pkgdesc="Implementation of Kerberos V5 libraries"
 arch=('i686' 'x86_64')
 url="http://www.h5l.org/"
 license=('custom')
-depends=('db>=4.7' 'openssl' 'e2fsprogs')
+depends=('db' 'openssl' 'sqlite3' 'e2fsprogs')
 backup=(etc/krb5.conf)
 options=('!libtool' '!emptydirs')
-install=$pkgname.install
-source=(http://www.h5l.org/dist/src/${pkgname}-${pkgver}.tar.gz \
-	002_all_heimdal-no_libedit.patch \
-	003_all_heimdal-fPIC.patch \
-	004_all_heimdal-rxapps.patch \
-	heimdal-kdc.rc \
-	kadmind.rc \
+install=heimdal.install
+source=(http://www.h5l.org/dist/src/${pkgname}-${pkgver}.tar.gz
+	001_all_heimdal-no_libedit.patch
+	002_all_heimal-fPIC.patch
+	003_all_heimdal-rxapps.patch
+	005_all_heimdal-suid_fix.patch
+	012_all_heimdal-berkdb.patch
+	013_all_heimdal-pthread-lib.patch
+	014_all_heimdal-path.patch
+	heimdal-kdc.rc
+	kadmind.rc
 	kpasswd.rc)
-md5sums=('6e5028077e2a6b101a4a72801ba71b9e'
-         '1199c4a4a38e9c2b2c0a99bd5781767a'
-         '3d0262aa218e1611500de735d3581e28'
-         '0fe81cb1e33b2a2e60edaf47dfdfe4de'
+md5sums=('963c09f1b14c41660be70b55fae9f163'
+         '98e28f11f906c967aac22d6184102c9e'
+         '6d5571bdedba2e2423b90bccdbac2c0a'
+         '2feec3924ee5230b54175b4d4000c872'
+         '45aeb207f360f9f4e9e0fabc8bfeecbc'
+         '56f5d10d0ec40f2fda82ef144ffac1e0'
+         '1b8665b771c4eb6b56ea8582c96e56e3'
+         '8208ae8c0b6ff5ab4f64af1693e9e396'
          'e59650992b9541a30dfce727a194f6e0'
          '1f2f86a67bbfddb7af581d35fdca9627'
          'f8f1eca95b9d3f2b4ebf2417b71b81cf')
 
 build() {
-  [ -e /usr/lib/libasn1.so ] && echo "## remove old heimdal pkg first ##" && return 1
-
   cd ${srcdir}/heimdal-${pkgver}
-  patch -Np0 -i ${srcdir}/002_all_heimdal-no_libedit.patch || return 1
-  patch -Np0 -i ${srcdir}/003_all_heimdal-fPIC.patch || return 1
-  patch -Np0 -i ${srcdir}/004_all_heimdal-rxapps.patch || return 1
+  patch -Np0 -i ${srcdir}/001_all_heimdal-no_libedit.patch || return 1
+  patch -Np0 -i ${srcdir}/002_all_heimal-fPIC.patch || return 1
+  patch -Np0 -i ${srcdir}/003_all_heimdal-rxapps.patch || return 1
+  patch -Np0 -i ${srcdir}/005_all_heimdal-suid_fix.patch || return 1
+  patch -Np1 -i ${srcdir}/012_all_heimdal-berkdb.patch || return 1
+  patch -Np1 -i ${srcdir}/013_all_heimdal-pthread-lib.patch || return 1
+  patch -Np0 -i ${srcdir}/014_all_heimdal-path.patch || return 1
 
-  sed -i -e 's|var/heimdal|var/lib/heimdal|g' configure.in configure \
+  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
 
+  libtoolize --force || return 1
+  aclocal -I cf || return 1
+  autoconf || return 1
+  automake || return 1
+
   ./configure --prefix=/usr --enable-shared=yes --without-x \
-	--sysconfdir=/etc  --mandir=/usr/share/man \
+	--sysconfdir=/etc --mandir=/usr/share/man \
 	--datadir=/var/lib/heimdal \
 	--localstatedir=/var/lib/heimdal \
 	--with-openssl=/usr \
 	--with-readline-lib=/usr/lib \
 	--with-readline-include=/usr/include/readline \
-	--libexecdir=/usr/sbin --with-berkeley-db \
-	--disable-krb4
+	--with-sqlite3-lib=/usr/lib \
+	--with-sqlite3-include=/usr/include \
+	--libexecdir=/usr/sbin
 	
   make || return 1
   make DESTDIR=${pkgdir} install || 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
-    mv ${pkgdir}/usr/sbin/${i} ${pkgdir}/usr/sbin/k${i}
+    mv ${pkgdir}/usr/share/man/man8/{,k}${i}.8 || return 1
+    mv ${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
+      mv ${pkgdir}/usr/share/man/man1/{,k}${i}.1 || return 1
     fi
-    mv ${pkgdir}/usr/bin/${i} ${pkgdir}/usr/bin/k${i}
+    mv ${pkgdir}/usr/bin/{,k}${i} || return 1
   done
   rm -rf ${pkgdir}/usr/share/man/cat{1,3,5,8}
   
   # Arch could be a KDC too
-  mkdir -p ${pkgdir}/etc/rc.d
-  install -m644 ${srcdir}/heimdal-${pkgver}/krb5.conf ${pkgdir}/etc
+  install -d ${pkgdir}/etc/rc.d
+  install -m644 ${srcdir}/heimdal-${pkgver}/krb5.conf ${pkgdir}/etc/ || return 1
   for i in heimdal-kdc kadmind kpasswd; do
-    install -m755 ${srcdir}/${i}.rc ${pkgdir}/etc/rc.d/${i}
+    install -m755 ${srcdir}/${i}.rc ${pkgdir}/etc/rc.d/${i} || return 1
   done
 
-  # Remove conflicts 
-  rm ${pkgdir}/usr/share/man/man5/ftpusers.5*		# man-pages
-  rm ${pkgdir}/usr/share/info/dir
-
-  # Compress info pages
-  for page in heimdal hx509; do
-    gzip -9 ${pkgdir}/usr/share/info/${page}.info
-  done
+  # Remove conflicts
+  rm ${pkgdir}/usr/share/man/man5/ftpusers.5*		          # man-pages
+  rm ${pkgdir}/usr/share/man/man3/{DES,DH,EVP,OpenSSL,RAND,RSA}*  # openssl (a bit overzealous...)
+  rm ${pkgdir}/usr/share/man/man3/os.3*                           # erlang
 
   # Install the license
-  install -D -m644 ${srcdir}/${pkgname}-${pkgver}/LICENSE \
-  	${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+  install -Dm644 ${srcdir}/${pkgname}-${pkgver}/LICENSE \
+  	${pkgdir}/usr/share/licenses/${pkgname}/LICENSE || return 1
 }
-- 
cgit v0.12

