This commit was manufactured by cvs2svn to create tag
[krb5.git] / src / Makefile.in
index 8f8fc00901b62aee73fc1acbe8eb5c66291e36f5..3a94a769e8ef9bd43ca8d00a27d005cc9eef035d 100644 (file)
@@ -1,25 +1,34 @@
+datadir=@datadir@
+
 thisconfigdir=.
 myfulldir=.
 mydir=.
-MY_SUBDIRS=util include lib @krb524@ kdc kadmin slave clients appl tests \
+SUBDIRS=util include lib @krb524@ kdc kadmin slave clients appl tests \
        config-files gen-manpages
 BUILDTOP=$(REL)$(C)
 LOCALINCLUDES = -I$(srcdir) 
 
-##DOS##BUILDTOP = .
-
 SRCS =  
 HDRS = 
 
 DISTFILES = $(SRCS) $(HDRS) COPYING COPYING.LIB ChangeLog Makefile.in
 
-all-unix::
+all-unix:: krb5-config
 
-all-mac::
+# Lots of things will start to depend on the thread support, which
+# needs autoconf.h, but building "all" in include requires that util/et
+# have been built first.  Until we can untangle this, let's just check
+# that autoconf.h is up to date before going into any of the subdirectories.
+all-prerecurse: update-autoconf-h
+update-autoconf-h:
+       (cd include && $(MAKE) krb5/autoconf.h)
 
-all-windows:: Makefile-windows
+all-windows:: maybe-awk Makefile-windows
+       @echo Making autoconf.h in include\krb5
+       cd include\krb5
+       $(MAKE) -$(MFLAGS) autoconf.h
        @echo Making in util
-       cd util
+       cd ..\..\util
        $(MAKE) -$(MFLAGS)
        @echo Making in include
        cd ..\include
@@ -33,7 +42,13 @@ all-windows:: Makefile-windows
        @echo Making in clients
        cd ..\clients
        $(MAKE) -$(MFLAGS)
-       cd ..
+       @echo Making in appl\gss-sample
+       cd ..\appl\gss-sample
+       $(MAKE) -$(MFLAGS)
+       @echo Making in appl\gssftp\ftp
+       cd ..\..\appl\gssftp\ftp
+       $(MAKE) -$(MFLAGS)
+       cd ..\..\..
 
 world::
        date
@@ -44,7 +59,10 @@ INSTALLMKDIRS = $(KRB5ROOT) $(KRB5MANROOT) $(KRB5OTHERMKDIRS) \
                $(ADMIN_BINDIR) $(SERVER_BINDIR) $(CLIENT_BINDIR) \
                $(ADMIN_MANDIR) $(SERVER_MANDIR) $(CLIENT_MANDIR) \
                $(FILE_MANDIR) $(KRB5_LIBDIR) $(KRB5_INCDIR) \
-               $(KRB5_INCSUBDIRS)
+               $(KRB5_INCSUBDIRS) $(datadir) $(EXAMPLEDIR)
+
+install-strip:
+       $(MAKE) install INSTALL_STRIP=-s
 
 install-recurse: install-mkdirs
 
@@ -53,6 +71,13 @@ install-mkdirs:
                $(srcdir)/config/mkinstalldirs $(DESTDIR)$$i; \
        done
 
+install-headers-mkdirs:
+       $(srcdir)/config/mkinstalldirs $(DESTDIR)$(KRB5_INCDIR)
+       $(srcdir)/config/mkinstalldirs $(DESTDIR)$(KRB5_INCDIR)/gssapi
+       $(srcdir)/config/mkinstalldirs $(DESTDIR)$(KRB5_INCDIR)/gssrpc
+       $(srcdir)/config/mkinstalldirs $(DESTDIR)$(KRB5_INCDIR)/kerberosIV
+install-headers-prerecurse: install-headers-mkdirs
+
 # install::
 #      $(MAKE) $(MFLAGS) install.man
 
@@ -60,9 +85,8 @@ TAGS: $(SRCS)
        etags $(SRCS)
 
 clean-:: clean-windows
-clean-mac:: clean-unix
 clean-unix::
-       $(RM) *.o core
+       $(RM) *.o core krb5-config
 
 mostlyclean: clean
 
@@ -98,15 +122,6 @@ tgz-bin: pkgdir
        (cd $(PKGDIR)/install && tar cf - usr/cygnus) | $(GZIPPROG) > cns5-bin.tgz
        rm -rf $(PKGDIR)/install
 
-# Macintosh build process...
-
-# Build all things for the Mac build, which need to be built on
-# Unix first.
-unixmac:
-       (cd lib/krb5/error_tables; make -f Makefile.in unixmac)
-       (cd lib/gssapi/generic; make -f Makefile.in unixmac)
-
-
 # Microsoft Windows build process...
 #
 
@@ -126,45 +141,51 @@ config-windows:: Makefile-windows
 ##DOS##MKFDEP=$(WCONFIG_EXE) config\win-pre.in config\win-post.in
 
 WINMAKEFILES=Makefile \
+       appl\gss-sample\Makefile \
+       appl\gssftp\ftp\Makefile \
        clients\Makefile clients\kdestroy\Makefile \
        clients\kinit\Makefile clients\klist\Makefile \
-       clients\kpasswd\Makefile \
+       clients\kpasswd\Makefile clients\kvno\Makefile \
+       clients\kcpytkt\Makefile clients\kdeltkt\Makefile \
        include\Makefile include\krb5\Makefile \
+       krb524\Makefile \
        lib\Makefile lib\crypto\Makefile \
        lib\crypto\crc32\Makefile lib\crypto\des\Makefile \
        lib\crypto\dk\Makefile lib\crypto\enc_provider\Makefile \
        lib\crypto\hash_provider\Makefile \
        lib\crypto\keyhash_provider\Makefile \
        lib\crypto\raw\Makefile lib\crypto\old\Makefile \
-       lib\crypto\sha1\Makefile \
+       lib\crypto\sha1\Makefile lib\crypto\arcfour\Makefile \
        lib\crypto\md4\Makefile lib\crypto\md5\Makefile \
+       lib\crypto\yarrow\Makefile lib\crypto\aes\Makefile \
        lib\des425\Makefile \
        lib\gssapi\Makefile lib\gssapi\generic\Makefile \
        lib\gssapi\krb5\Makefile lib\gssapi\mechglue\Makefile \
        lib\krb4\Makefile lib\krb5\Makefile \
        lib\krb5\asn.1\Makefile lib\krb5\ccache\Makefile \
-       lib\krb5\ccache\file\Makefile \
-       lib\krb5\ccache\stdio\Makefile \
-       lib\krb5\ccache\memory\Makefile \
        lib\krb5\ccache\ccapi\Makefile \
        lib\krb5\error_tables\Makefile \
        lib\krb5\keytab\Makefile \
-       lib\krb5\keytab\file\Makefile \
-       lib\krb5\keytab\srvtab\Makefile \
        lib\krb5\krb\Makefile \
        lib\krb5\os\Makefile lib\krb5\posix\Makefile \
        lib\krb5\rcache\Makefile \
        util\Makefile \
        util\et\Makefile util\profile\Makefile \
+       util\support\Makefile \
        util\windows\Makefile \
        windows\Makefile windows\lib\Makefile \
        windows\cns\Makefile windows\gina\Makefile \
-       windows\gss\Makefile windows\wintel\Makefile
+       windows\gss\Makefile windows\ms2mit\Makefile \
+       windows\wintel\Makefile
 
 ##DOS##Makefile-windows:: $(MKFDEP) $(WINMAKEFILES)
 
 ##DOS##Makefile: Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
+##DOS##appl\gss-sample\Makefile: appl\gss-sample\Makefile.in $(MKFDEP)
+##DOS##        $(WCONFIG) config < $@.in > $@
+##DOS##appl\gssftp\ftp\Makefile: appl\gssftp\ftp\Makefile.in $(MKFDEP)
+##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##clients\Makefile: clients\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##clients\kdestroy\Makefile: clients\kdestroy\Makefile.in $(MKFDEP)
@@ -175,10 +196,18 @@ WINMAKEFILES=Makefile \
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##clients\kpasswd\Makefile: clients\kpasswd\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
+##DOS##clients\kvno\Makefile: clients\kvno\Makefile.in $(MKFDEP)
+##DOS##        $(WCONFIG) config < $@.in > $@
+##DOS##clients\kcpytkt\Makefile: clients\kcpytkt\Makefile.in $(MKFDEP)
+##DOS##        $(WCONFIG) config < $@.in > $@
+##DOS##clients\kdeltkt\Makefile: clients\kdeltkt\Makefile.in $(MKFDEP)
+##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##include\Makefile: include\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##include\krb5\Makefile: include\krb5\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
+##DOS##krb524\Makefile: krb524\Makefile.in $(MKFDEP)
+##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\Makefile: lib\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\crypto\Makefile: lib\crypto\Makefile.in $(MKFDEP)
@@ -197,10 +226,16 @@ WINMAKEFILES=Makefile \
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\crypto\sha1\Makefile: lib\crypto\sha1\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
+##DOS##lib\crypto\arcfour\Makefile: lib\crypto\arcfour\Makefile.in $(MKFDEP)
+##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\crypto\md4\Makefile: lib\crypto\md4\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\crypto\md5\Makefile: lib\crypto\md5\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
+##DOS##lib\crypto\yarrow\Makefile: lib\crypto\yarrow\Makefile.in $(MKFDEP)
+##DOS##        $(WCONFIG) config < $@.in > $@
+##DOS##lib\crypto\aes\Makefile: lib\crypto\aes\Makefile.in $(MKFDEP)
+##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\crypto\old\Makefile: lib\crypto\old\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\crypto\raw\Makefile: lib\crypto\raw\Makefile.in $(MKFDEP)
@@ -223,22 +258,12 @@ WINMAKEFILES=Makefile \
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\krb5\ccache\Makefile: lib\krb5\ccache\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
-##DOS##lib\krb5\ccache\file\Makefile: lib\krb5\ccache\file\Makefile.in $(MKFDEP)
-##DOS##        $(WCONFIG) config < $@.in > $@
-##DOS##lib\krb5\ccache\stdio\Makefile: lib\krb5\ccache\stdio\Makefile.in $(MKFDEP)
-##DOS##        $(WCONFIG) config < $@.in > $@
-##DOS##lib\krb5\ccache\memory\Makefile: lib\krb5\ccache\memory\Makefile.in $(MKFDEP)
-##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\krb5\ccache\ccapi\Makefile: lib\krb5\ccache\ccapi\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\krb5\error_tables\Makefile: lib\krb5\error_tables\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\krb5\keytab\Makefile: $$@.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
-##DOS##lib\krb5\keytab\file\Makefile: $$@.in $(MKFDEP)
-##DOS##        $(WCONFIG) config < $@.in > $@
-##DOS##lib\krb5\keytab\srvtab\Makefile: $$@.in $(MKFDEP)
-##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\krb5\krb\Makefile: lib\krb5\krb\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##lib\krb5\os\Makefile: lib\krb5\os\Makefile.in $(MKFDEP)
@@ -253,19 +278,23 @@ WINMAKEFILES=Makefile \
 ##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##util\profile\Makefile: util\profile\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
+##DOS##util\support\Makefile: util\support\Makefile.in $(MKFDEP)
+##DOS##        $(WCONFIG) config < $@.in > $@
 ##DOS##util\windows\Makefile: util\windows\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
-##DOS##windows\Makefile:  windows\Makefile.in $(MKFDEP)
+##DOS##windows\Makefile: windows\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
-##DOS##windows\lib\Makefile:  windows\lib\Makefile.in $(MKFDEP)
+##DOS##windows\lib\Makefile: windows\lib\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
-##DOS##windows\cns\Makefile:  windows\cns\Makefile.in $(MKFDEP)
+##DOS##windows\cns\Makefile: windows\cns\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
-##DOS##windows\gina\Makefile:  windows\gina\Makefile.in $(MKFDEP)
+##DOS##windows\gina\Makefile: windows\gina\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
-##DOS##windows\gss\Makefile:  windows\gss\Makefile.in $(MKFDEP)
+##DOS##windows\gss\Makefile: windows\gss\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
-##DOS##windows\wintel\Makefile:  windows\wintel\Makefile.in $(MKFDEP)
+##DOS##windows\ms2mit\Makefile: windows\ms2mit\Makefile.in $(MKFDEP)
+##DOS##        $(WCONFIG) config < $@.in > $@
+##DOS##windows\wintel\Makefile: windows\wintel\Makefile.in $(MKFDEP)
 ##DOS##        $(WCONFIG) config < $@.in > $@
 
 clean-windows:: Makefile-windows
@@ -284,7 +313,13 @@ clean-windows:: Makefile-windows
        @echo Making clean in clients
        cd ..\clients
        $(MAKE) -$(MFLAGS) clean
-       cd ..
+       @echo Making in appl\gss-sample
+       cd ..\appl\gss-sample
+       $(MAKE) -$(MFLAGS) clean
+       @echo Making in appl\gssftp\ftp
+       cd ..\..\appl\gssftp\ftp
+       $(MAKE) -$(MFLAGS) clean
+       cd ..\..\..
        @echo Making clean in root
 
 #
@@ -300,32 +335,25 @@ ren2long:
 ZIP=zip
 FILES= ./* \
        clients/* clients/kdestroy/* clients/kinit/* clients/klist/* \
-       clients/kpasswd/* \
+       clients/kpasswd/* clients/kcpytkt/* clients/kdeltkt/* \
        config/* include/* include/kerberosIV/* \
-       include/krb5/* include/krb5/stock/* include/sys/* lib/* \
+       include/krb5/* include/krb5/stock/* include/sys/* krb524/* lib/* \
        lib/crypto/* lib/crypto/crc32/* lib/crypto/des/* lib/crypto/dk/* \
        lib/crypto/enc_provider/* lib/crypto/hash_provider/* \
        lib/crypto/keyhash_provider/* lib/crypto/old/* lib/crypto/raw/* \
-       lib/crypto/sha1/* lib/crypto/md4/* lib/crypto/md5/* \
+       lib/crypto/sha1/* lib/crypto/arcfour/* lib/crypto/md4/* \
+       lib/crypto/md5/* lib/crypto/yarrow/* \
        lib/des425/* lib/gssapi/* lib/gssapi/generic/* lib/gssapi/krb5/* \
        lib/gssapi/mechglue/* lib/krb4/* \
        lib/krb5/* lib/krb5/asn.1/* lib/krb5/krb/* \
-       lib/krb5/ccache/* lib/krb5/ccache/file/* lib/krb5/ccache/memory/* \
-       lib/krb5/ccache/stdio/* lib/krb5/ccache/ccapi/* \
+       lib/krb5/ccache/* lib/krb5/ccache/ccapi/* \
        lib/krb5/error_tables/* \
        lib/krb5/keytab/* lib/krb5/keytab/file/* lib/krb5/keytab/srvtab/* \
        lib/krb5/os/* lib/krb5/posix/* lib/krb5/rcache/* \
        util/* util/et/* util/profile/*
 
 WINFILES= util/windows/* windows/* windows/lib/* windows/cns/* \
-       windows/wintel/* windows/gss/* windows/gina/*
-
-MACFILES= mac/* mac/libraries/* config/* include/* \
-       include/krb5/* include/krb5/stock/* include/sys/* \
-       ./patchlevel.h
-
-MITWINFILES= mit/windows/include/* 
-MITWINBINARYFILES= mit/windows/lib/*
+       windows/wintel/* windows/gss/* windows/gina/* windows/ms2mit/*
 
 WINBINARYFILES=        windows/*/*.ico windows/*/*.doc windows/*/*.hlp \
        windows/*/*.hpj windows/lib/*.lib
@@ -334,7 +362,7 @@ WINBINARYFILES=     windows/*/*.ico windows/*/*.doc windows/*/*.hlp \
 # Part of building the PC release has to be done on Unix. This includes
 # anything the requires awk.
 #
-AWK = gawk
+AWK = awk
 AH  = util/et/et_h.awk
 AC  = util/et/et_c.awk
 INC = include/
@@ -342,22 +370,26 @@ ET  = lib/krb5/error_tables/
 GG  = lib/gssapi/generic/
 GK  = lib/gssapi/krb5/
 PR  = util/profile/
+CE  = util/et/
 
-ETOUT =        $(INC)asn1_err.h $(ET)asn1_err.c \
+ETOUT =        \
+       $(INC)asn1_err.h $(ET)asn1_err.c \
        $(INC)kdb5_err.h $(ET)kdb5_err.c \
        $(INC)krb5_err.h $(ET)krb5_err.c \
        $(INC)kv5m_err.h $(ET)kv5m_err.c \
-       $(INC)adm_err.h $(ET)adm_err.c \
+       $(INC)krb524_err.h $(ET)krb524_err.c \
+       $(INC)/kerberosIV/kadm_err.h lib/krb4/kadm_err.c \
        $(INC)/kerberosIV/krb_err.h lib/krb4/krb_err.c \
        $(PR)prof_err.h $(PR)prof_err.c \
        $(GG)gssapi_err_generic.h $(GG)gssapi_err_generic.c \
-       $(GK)gssapi_err_krb5.h $(GK)gssapi_err_krb5.c
+       $(GK)gssapi_err_krb5.h $(GK)gssapi_err_krb5.c \
+       lib/krb4/krb_err_txt.c
 
 HOUT = $(INC)krb5.h $(GG)gssapi.h $(PR)profile.h
 
 CLEANUP= Makefile $(ETOUT) $(HOUT) \
        include/profile.h include/krb5/osconf.h \
-       winfile.list macfile.list
+       winfile.list
 
 
 kerbsrc.win: kerbsrc.zip
@@ -365,20 +397,11 @@ kerbsrc.win: kerbsrc.zip
 winfile.list:
        echo $(FILES) $(WINFILES) | tr ' ' \\012 | \
                sed -f config/winexclude.sed > winfile.list
-       if test -d mit ; then \
-               echo $(MITWINFILES) | tr ' ' \\012 | \
-               sed -f config/winexclude.sed >> winfile.list ; \
-       fi
-
-MAC_SUBDIRS = lib util
-macfile.list:
-       /bin/sh mac/macfiles.sh $(MAC_SUBDIRS) > macfile.list
-       find $(MACFILES) -prune -type f -print | \
-               sed -f config/winexclude.sed >> macfile.list
 
 dos-Makefile:
        cat config/win-pre.in Makefile.in config/win-post.in | \
-               sed -e "s/^##DOS##//" -e "s/^##DOS//" > Makefile
+               sed -e "s/^##DOS##//" -e "s/^##DOS//" > Makefile.tmp
+       mv Makefile.tmp Makefile
 
 prep-windows: dos-Makefile awk-windows-mac
 
@@ -395,9 +418,6 @@ kerbsrc.zip: dos-Makefile awk-windows-mac winfile.list
        rm -f kerbsrc.zip
        $(ZIP) -@Dl kerbsrc.zip < winfile.list
        $(ZIP) -D kerbsrc.zip $(WINBINARYFILES)
-       if test -d mit ; then \
-               $(ZIP) -rD kerbsrc.zip $(MITWINBINARYFILES) ; \
-       fi
        rm -f $(CLEANUP)
 
 kerbsrc-nt.zip: kerbsrc-nt-is-obsolete
@@ -408,45 +428,6 @@ kerbsrc-nt-is-obsolete:
        @echo "anymore, so what was kerbsrc-nt.zip is now kerbsrc.zip."
        @echo " "
 
-Macfile: macfile.list 
-       rm -f Macfile
-       sed -e 's|/|:|g' -e 's/^/:/' -e '/:.:/d' -e '/:mac:/d' macfile.list > macfile.maclist
-       grep '\.c$$' macfile.maclist > macsrcsgss
-       grep -v ':gssapi:' macsrcsgss > macsrcsk5
-       echo SRCS = `cat macsrcsgss` >> Macfile
-       echo SRCDIRS = `sed -n -e 's/\(.*:\)[^:]*\.c$$/ \1/p' macfile.maclist | sort -u` >> Macfile
-       echo GSSOBJS68K = `sed -e 's/$$/.68K.o/' -e 's/.*://' \
-               -e 's/^/:bin:68K:/' macsrcsgss` >> Macfile
-       echo GSSOBJS68KCFM = `sed -e 's/$$/.CFM68.o/' -e 's/.*://' \
-               -e 's/^/:bin:CFM-68K:/' macsrcsgss` >> Macfile
-       echo GSSOBJSPPC = `sed -e 's/$$/.PPC.o/' -e 's/.*://' \
-               -e 's/^/:bin:PPC:/' macsrcsgss` >> Macfile
-       echo K5OBJS68K = `sed -e 's/$$/.68K.o/' -e 's/.*://' \
-               -e 's/^/:bin:68K:/' macsrcsk5` >> Macfile
-       echo K5OBJS68KCFM = `sed -e 's/$$/.CFM68.o/' -e 's/.*://' \
-               -e 's/^/:bin:CFM-68K:/' macsrcsk5` >> Macfile
-       echo K5OBJSPPC = `sed -e 's/$$/.PPC.o/' -e 's/.*://' \
-               -e 's/^/:bin:PPC:/' macsrcsk5` >> Macfile
-       echo INCLUDES = `sed -n -e 's/\(.*:\)[^:]*\.h$$/-i \1/p' macfile.maclist | sort -u` >> Macfile
-       echo "" >> Macfile
-       tr '@/:\\' '\245:\304\266'< mac/Makefile.tmpl >> Macfile
-
-mac-bin-dirs:
-       rm -rf bin
-       mkdir bin bin/68K bin/CFM-68K bin/PPC
-       sh mac/mkbindirs.sh bin/68K $(MAC_SUBDIRS)
-       sh mac/mkbindirs.sh bin/CFM-68K $(MAC_SUBDIRS)
-       sh mac/mkbindirs.sh bin/PPC $(MAC_SUBDIRS)
-
-kerbsrc.mac.tar: awk-windows-mac macfile.list mac-bin-dirs Macfile
-       cp mac/libraries/autoconf.h include/autoconf.h
-       mv Macfile Makefile
-       tar cvf kerbsrc.mac.tar Makefile include/autoconf.h bin \
-               `cat macfile.list`
-       rm -f $(CLEANUP)
-       rm -rf bin
-       rm -f include/autoconf.h Makefile macsrc* macfile.maclist
-
 $(INC)asn1_err.h: $(AH) $(ET)asn1_err.et
        $(AWK) -f $(AH) outfile=$@ $(ET)asn1_err.et
 $(INC)kdb5_err.h: $(AH) $(ET)kdb5_err.et
@@ -455,8 +436,10 @@ $(INC)krb5_err.h: $(AH) $(ET)krb5_err.et
        $(AWK) -f $(AH) outfile=$@ $(ET)krb5_err.et
 $(INC)kv5m_err.h: $(AH) $(ET)kv5m_err.et
        $(AWK) -f $(AH) outfile=$@ $(ET)kv5m_err.et
-$(INC)adm_err.h: $(AH) $(ET)adm_err.et
-       $(AWK) -f $(AH) outfile=$@ $(ET)adm_err.et
+$(INC)krb524_err.h: $(AH) $(ET)krb524_err.et
+       $(AWK) -f $(AH) outfile=$@ $(ET)krb524_err.et
+$(INC)/kerberosIV/kadm_err.h: $(AH) lib/krb4/kadm_err.et
+       $(AWK) -f $(AH) outfile=$@ lib/krb4/kadm_err.et
 $(INC)/kerberosIV/krb_err.h: $(AH) lib/krb4/krb_err.et
        $(AWK) -f $(AH) outfile=$@ lib/krb4/krb_err.et
 $(PR)prof_err.h: $(AH) $(PR)prof_err.et
@@ -465,6 +448,10 @@ $(GG)gssapi_err_generic.h: $(AH) $(GG)gssapi_err_generic.et
        $(AWK) -f $(AH) outfile=$@ $(GG)gssapi_err_generic.et
 $(GK)gssapi_err_krb5.h: $(AH) $(GK)gssapi_err_krb5.et
        $(AWK) -f $(AH) outfile=$@ $(GK)gssapi_err_krb5.et
+$(CE)test1.h: $(AH) $(CE)test1.et
+       $(AWK) -f $(AH) outfile=$@ $(CE)test1.et
+$(CE)test2.h: $(AH) $(CE)test2.et
+       $(AWK) -f $(AH) outfile=$@ $(CE)test2.et
 
 $(ET)asn1_err.c: $(AC) $(ET)asn1_err.et
        $(AWK) -f $(AC) outfile=$@ $(ET)asn1_err.et
@@ -474,8 +461,10 @@ $(ET)krb5_err.c: $(AC) $(ET)krb5_err.et
        $(AWK) -f $(AC) outfile=$@ $(ET)krb5_err.et
 $(ET)kv5m_err.c: $(AC) $(ET)kv5m_err.et
        $(AWK) -f $(AC) outfile=$@ $(ET)kv5m_err.et
-$(ET)adm_err.c: $(AC) $(ET)adm_err.et
-       $(AWK) -f $(AC) outfile=$@ $(ET)adm_err.et
+$(ET)krb524_err.c: $(AC) $(ET)krb524_err.et
+       $(AWK) -f $(AC) outfile=$@ $(ET)krb524_err.et
+lib/krb4/kadm_err.c: $(AC) lib/krb4/kadm_err.et
+       $(AWK) -f $(AC) outfile=$@ lib/krb4/kadm_err.et
 lib/krb4/krb_err.c: $(AC) lib/krb4/krb_err.et
        $(AWK) -f $(AC) outfile=$@ lib/krb4/krb_err.et
 $(PR)prof_err.c: $(AC) $(PR)prof_err.et
@@ -484,9 +473,17 @@ $(GG)gssapi_err_generic.c: $(AC) $(GG)gssapi_err_generic.et
        $(AWK) -f $(AC) outfile=$@ $(GG)gssapi_err_generic.et
 $(GK)gssapi_err_krb5.c: $(AC) $(GK)gssapi_err_krb5.et
        $(AWK) -f $(AC) outfile=$@ $(GK)gssapi_err_krb5.et
+$(CE)test1.c: $(AC) $(CE)test1.et
+       $(AWK) -f $(AC) outfile=$@ $(CE)test1.et
+$(CE)test2.c: $(AC) $(CE)test2.et
+       $(AWK) -f $(AC) outfile=$@ $(CE)test2.et
+
+lib/krb4/krb_err_txt.c: lib/krb4/krb_err.et
+       $(AWK) -f lib/krb4/et_errtxt.awk outfile=$@ \
+               lib/krb4/krb_err.et
 
 KRBHDEP = $(INC)krb5.hin $(INC)krb5_err.h $(INC)kdb5_err.h \
-       $(INC)kv5m_err.h $(INC)asn1_err.h
+       $(INC)kv5m_err.h $(INC)krb524_err.h $(INC)asn1_err.h
 
 $(INC)krb5.h: $(KRBHDEP)
        rm -f $@
@@ -500,24 +497,69 @@ $(GG)gssapi.h: $(GG)gssapi.hin
 
 awk-windows-mac: $(ETOUT) $(HOUT)
 
+#
+# The maybe-awk target needs to happen after AWK is defined.
+#
+
+##DOS##maybe-awk::
+##DOS##!ifdef WHICH_CMD
+##DOS##!if ![ $(WHICH_CMD) $(AWK) ]
+##DOS##maybe-awk:: awk-windows-mac
+##DOS##!endif
+##DOS##!endif
+
 clean-windows-mac:
        rm -f $(CLEANUP)
 
-KBINDIR=kbin
-
 distclean-windows:
        config\rm.bat $(CLEANUP:^/=^\)
        config\rm.bat $(WINMAKEFILES)
        config\rm.bat $(KBINDIR)\*.dll $(KBINDIR)\*.exe
        @if exist $(KBINDIR)\nul rmdir $(KBINDIR)
 
-mkbin:
-       @if not exist $(KBINDIR)\nul mkdir $(KBINDIR)
-       $(CP) lib\$(OUTPRE)*.dll $(KBINDIR)\.
-       $(CP) windows\cns\$(OUTPRE)krb5.exe $(KBINDIR)\.
-       $(CP) windows\wintel\$(OUTPRE)telnet.exe $(KBINDIR)\.
-       $(CP) windows\gss\$(OUTPRE)gss.exe $(KBINDIR)\.
-       $(CP) clients\klist\$(OUTPRE)klist.exe $(KBINDIR)\.
-       $(CP) clients\kinit\$(OUTPRE)kinit.exe $(KBINDIR)\.
-       $(CP) clients\kdestroy\$(OUTPRE)kdestroy.exe $(KBINDIR)\.
-       $(CP) clients\kpasswd\$(OUTPRE)kpasswd.exe $(KBINDIR)\.
+install-windows::
+       @if "$(KRB_INSTALL_DIR)"=="" @echo KRB_INSTALL_DIR is not defined!  Please define it.
+       @if "$(KRB_INSTALL_DIR)"=="" @dir /b \nul\nul
+       @if not exist "$(KRB_INSTALL_DIR)\$(NULL)" @echo The directory $(KRB_INSTALL_DIR) does not exist.  Please create it.
+       @if not exist "$(KRB_INSTALL_DIR)\$(NULL)" @dir /b $(KRB_INSTALL_DIR)\nul
+       @if not exist "$(KRB_INSTALL_DIR)\include\$(NULL)" @mkdir "$(KRB_INSTALL_DIR)\include"
+       @if not exist "$(KRB_INSTALL_DIR)\include\gssapi\$(NULL)" @mkdir "$(KRB_INSTALL_DIR)\include\gssapi"
+       @if not exist "$(KRB_INSTALL_DIR)\lib\$(NULL)" @mkdir "$(KRB_INSTALL_DIR)\lib"
+       @if not exist "$(KRB_INSTALL_DIR)\bin\$(NULL)" @mkdir "$(KRB_INSTALL_DIR)\bin"
+       $(CP) include\krb5.h "$(KRB_INSTALL_DIR)\include\."
+       $(CP) include\win-mac.h "$(KRB_INSTALL_DIR)\include\."
+       $(CP) include\profile.h "$(KRB_INSTALL_DIR)\include\."
+       $(CP) include\com_err.h "$(KRB_INSTALL_DIR)\include\."
+       $(CP) include\gssapi\gssapi.h "$(KRB_INSTALL_DIR)\include\gssapi\."
+       $(CP) include\gssapi\gssapi_krb5.h "$(KRB_INSTALL_DIR)\include\gssapi\."
+       $(CP) lib\$(OUTPRE)*.lib "$(KRB_INSTALL_DIR)\lib\."
+       $(CP) lib\$(OUTPRE)*.dll "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) windows\cns\$(OUTPRE)krb5.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) windows\wintel\$(OUTPRE)telnet.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) windows\gss\$(OUTPRE)gss.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) appl\gss-sample\$(OUTPRE)gss-server.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) appl\gss-sample\$(OUTPRE)gss-client.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) windows\ms2mit\$(OUTPRE)ms2mit.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) appl\gssftp\ftp\$(OUTPRE)ftp.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) clients\kvno\$(OUTPRE)kvno.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) clients\klist\$(OUTPRE)klist.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) clients\kinit\$(OUTPRE)kinit.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) clients\kdestroy\$(OUTPRE)kdestroy.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) clients\kcpytkt\$(OUTPRE)kcpytkt.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) clients\kdeltkt\$(OUTPRE)kdeltkt.exe "$(KRB_INSTALL_DIR)\bin\."
+       $(CP) clients\kpasswd\$(OUTPRE)kpasswd.exe "$(KRB_INSTALL_DIR)\bin\."
+       @if exist "$(KRB_INSTALL_DIR)\bin\krb4_32.dll" del "$(KRB_INSTALL_DIR)\bin\krb4_32.dll"
+       @if exist "$(KRB_INSTALL_DIR)\lib\krb4_32.lib" del "$(KRB_INSTALL_DIR)\lib\krb4_32.lib"
+
+install-unix:: 
+       $(INSTALL_SCRIPT) krb5-config \
+               $(DESTDIR)$(CLIENT_BINDIR)/krb5-config
+       $(INSTALL_DATA) $(srcdir)/krb5-config.M $(DESTDIR)$(CLIENT_MANDIR)/krb5-config.1
+
+krb5-config: $(srcdir)/krb5-config.in $(thisconfigdir)/config.status
+       cd $(thisconfigdir) && $(SHELL) config.status krb5-config
+
+# Test to ensure that krb5-config does not spit out things like
+# $(PURE) or $(LDFLAGS) in case someone changes config/shlib.conf
+check-unix:: krb5-config
+       $(SHELL) $(srcdir)/t_krbconf