#	From: @(#)Makefile	5.1 (Berkeley) 6/25/90
#	$Id: Makefile,v 1.6 1994/07/20 19:31:53 g89r4222 Exp $

SUBDIR=	include

# Make des first, if exists. If it doesn't exist, check libdes

.if exists(des)
SUBDIR+= des compile_et acl ext_srvtab include kdb kdb_destroy kdb_edit \
	 kdb_init kdb_util kdestroy kerberos kinit klist krb ksrvtgt \
	 kstash man register registerd kpasswdd make_keypair
.else
.if exists(/usr/lib/libdes.a)
SUBDIR+= compile_et acl ext_srvtab include kdb kdb_destroy kdb_edit \
	 kdb_init kdb_util kdestroy kerberos kinit klist krb ksrvtgt \
	 kstash man register registerd kpasswdd make_keypair
.else
SUBDIR=
.endif
.endif

kincludes:
	(cd include; make depend all install)

prelim:
	(cd compile_et; make clean depend all)

klib: prelim
	(cd des; make clean depend all install )
	(cd krb; make clean depend all install )
	(cd kdb; make clean depend all install )
	(cd acl; make clean depend all install )

SDIR= ${.CURDIR}/..

kprog:
	(cd ${SDIR}/bin/rcp ; make -DNOMAN clean depend all install )
	(cd ${SDIR}/libexec/rlogind ; make -DNOMAN clean depend all install )
	(cd ${SDIR}/libexec/rshd ; make -DNOMAN clean depend all install )
	(cd ${SDIR}/usr.bin/login ; make -DNOMAN clean depend all install )
	(cd ${SDIR}/usr.bin/passwd ; make -DNOMAN clean depend all install )
	(cd ${SDIR}/usr.bin/rlogin ; make -DNOMAN clean depend all install )
	(cd ${SDIR}/usr.bin/rsh ; make -DNOMAN clean depend all install )
	(cd ${SDIR}/usr.bin/su ; make -DNOMAN clean depend all install )

kworld: cleandir obj kincludes klib depend all install kprog

# stuff for building release kits
ZIPNSPLIT=	gzip --no-name -9 -c | split -b 240640 -
KRBDIRS=	bin usr usr/bin usr/sbin usr/lib usr/share
KRBDIRS+=	usr/share/man usr/share/man/man1 usr/share/man/man3
KRBDIRS+=	usr/share/man/man5 usr/share/man/man8
KRBDIRS+=	usr/libexec usr/include usr/include/kerberosIV
BINOWN=		bin
GRPOWN=		bin
LIBCRYPTA=	libcrypt.a
LIBCRYPTPA=	libcrypt_p.a
LIBCRYPTSO=	libcrypt.so.1.1

.if defined(DESTDIR) && defined(RELEASEDIR)
.if exists(${DESTDIR}) && exists(${RELEASEDIR})

releasedirs:
.if !exists(${RELEASEDIR}/tarballs)
	mkdir ${RELEASEDIR}/tarballs
.endif
.if !exists(${RELEASEDIR}/tarballs/krbdist)
	mkdir ${RELEASEDIR}/tarballs/krbdist
.endif

# We need a hack to have libcrypt in DESTDIR
# but we don't want it in the tarball
kbintarball: releasedirs
	rm -rf ${RELEASEDIR}/tmpkrb
	mkdir ${RELEASEDIR}/tmpkrb
	chmod 755 ${RELEASEDIR}/tmpkrb
	for i in ${KRBDIRS}; do \
		cd ${RELEASEDIR}/tmpkrb; \
		mkdir $$i; \
		chown ${BINOWN}.${GRPOWN} $$i; \
		chmod 755 $$i; \
	done
	DESTDIR=${RELEASEDIR}/tmpkrb; export DESTDIR; \
	NOMAN=noman; export NOMAN; \
	(cd ${.CURDIR}/../lib/libcrypt ; make cleandir depend all install )
	DESTDIR=${RELEASEDIR}/tmpkrb; export DESTDIR; \
	make kworld
	(cd ${RELEASEDIR}/tmpkrb ; \
		tar --exclude ${LIBCRYPTA} --exclude ${LIBCRYPTPA} \
		--exclude ${LIBCRYPTSO} -cf - . | \
		${ZIPNSPLIT} ${RELEASEDIR}/tarballs/krbdist/krb_tgz.)
	rm -rf ${RELEASEDIR}/tmpkrb

ksrctarball: releasedirs
	make clean cleandir
	(cd ${DESTDIR}; \
		tar --exclude CVS -cf - usr/src/kerberosIV | \
		${ZIPNSPLIT} ${RELEASEDIR}/tarballs/krbdist/kerberos.)

.else
kbintarball ksrctarball:
	echo "Destination dirs not defined !!!!!"
.endif

.endif

.include <bsd.subdir.mk>
