# Makefile generated by imake - do not edit!
# $XConsortium: imake.c,v 1.51 89/12/12 12:37:30 jim Exp $

IMAKE 		= $(IMAKESRC)/imake

DEPEND 		= $(UTILBINDIR)/makedepend
COMPILE_ET	= $(UTILBINDIR)/compile_et
MK_CMDS		= $(UTILBINDIR)/mk_cmds

CONFIGSRC 	= $(TOP)/config
CLIENTSRC 	= $(TOP)/clients
UTILSRC 	= $(TOP)/util
IMAKESRC 	= $(CONFIGSRC)
UTILBINDIR	= $(TOP)/utils/bin
UTILLIBDIR	= $(TOP)/utils/lib
UTILINCDIR	= $(TOP)/utils/include
ETDIR		= $(TOP)/ets

KRBDEF		=  	-DKERBEROS
ZEPHYRDEF	= -DZEPHYR

PANSS_CCOPTS	= -I/usr/athena/include
PANSS_LDOPTS	= -L/usr/athena/lib
KRBLIB		= 	-lkrb
DESLIB		= 	-ldes
ZEPHYRLIB	= -lzephyr

COMERRDEP	= $(UTILLIBDIR)/libcom_err.a
SSDEPLIB	= $(UTILLIBDIR)/libss.a

DESTDIR		= 	/usr/athena/bin
DS_SERVERDIR	= /usr/athena/etc
DS_SERVER	= 		$(DS_SERVERDIR)/disserve
DS_SERVERLOCAL	= 	disserve-fs
DS_SERVERNAME	= 	disserve
DS_INFODIR	= 	/usr/athena/lib/discuss/info
DS_INFODIRP	= 	/usr/athena/lib/discuss
DS_REALM	=  		ATHENA.MIT.EDU
DS_SERVICENAME	= 	discuss
DS_SERVICEPORT	= 2100
DS_DSPIPE	= 		/usr/athena/etc/dspipe
DS_DSCSETUP	= 	dsc_setup
DS_MAINSERVER	= CHARON.MIT.EDU

            SHELL = 	/bin/sh

              TOP = ../.
      CURRENT_DIR = ./libds

               AR = ar clq
  BOOTSTRAPCFLAGS =
               CC = cc

         COMPRESS = compress
              CPP = /lib/cpp $(STD_CPP_DEFINES)
    PREPROCESSCMD = cc -E $(STD_CPP_DEFINES)
          INSTALL = install
               LD = ld
             LINT = lint
      LINTLIBFLAG = -C
         LINTOPTS = -axz
               LN = ln -s
             MAKE = make
               MV = mv
               CP = cp
           RANLIB = ranlib
  RANLIBINSTFLAGS =
               RM = rm -f
     STD_INCLUDES =
  STD_CPP_DEFINES =
      STD_DEFINES =
 EXTRA_LOAD_FLAGS =
  EXTRA_LIBRARIES =
             TAGS = ctags

    PROTO_DEFINES =

     INSTPGMFLAGS =

     INSTSCRFLAGS =
     INSTBINFLAGS = -m 0755
     INSTUIDFLAGS = -m 4755
     INSTLIBFLAGS = -m 0664
     INSTINCFLAGS = -m 0444
     INSTMANFLAGS = -m 0444
     INSTDATFLAGS = -m 0444
    INSTKMEMFLAGS = -m 4755

          DESTDIR = 	/usr/athena/bin

     TOP_INCLUDES = -I$(TOP)

      CDEBUGFLAGS = -O
        CCOPTIONS = -Wf,-XNh2000 -Olimit 2000
      COMPATFLAGS =

      ALLINCLUDES = $(STD_INCLUDES) $(TOP_INCLUDES) $(INCLUDES) $(EXTRA_INCLUDES)
       ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(PROTO_DEFINES) $(PROJECT_DEFINES) $(DEFINES) $(COMPATFLAGS)
           CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(ALLDEFINES)
        LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES)
           LDLIBS = $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
        LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS) $(LDFLAGS) $(PROJECT_LDOPTS)
   LDCOMBINEFLAGS = -X -r

        MACROFILE = ultrix.cf
           RM_CMD = $(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut

    IMAKE_DEFINES =

         IRULESRC = $(CONFIGSRC)
        IMAKE_CMD = $(NEWTOP)$(IMAKE) -I$(NEWTOP)$(IRULESRC) $(IMAKE_DEFINES)

     ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/Imake.rules \
			$(IRULESRC)/Project.tmpl $(IRULESRC)/site.def \
			$(IRULESRC)/$(MACROFILE) $(EXTRA_ICONFIGFILES)

EXTRA_INCLUDES	= -I$(UTILINCDIR) $(PANSS_CCOPTS)
PROJECT_LDOPTS 	= -L$(UTILLIBDIR) $(PANSS_LDOPTS)
TOP_INCLUDES	= -I$(TOP)/include

MKSTEMPSRC	= mktemp.c
MKSTEMPOBJ	= mktemp.o

MOVE_IF_CHANGE	= $(TOP)/utils/move-if-change

.SUFFIXES: .h .c .et .ct

.et.c:
	$(COMPILE_ET) $*.et

.et.h:
	$(COMPILE_ET) $*.et

.ct.c:
	$(MK_CMDS) $*.ct

#
# Imakefile for Discuss libraries libds.a and libdsk.a.
#

INCLUDES= -I$(UTILINCDIR) -I../ets -I../utils

SRCS	= tfile.c tunix.c tnet.c stubs.c dsname.c interface.c \
	rpcall.c conv_mgr.c host.c announce.c res_module.c \
	auth_krb.c dsc_enter.c auth_dum.c tmem.c edit.c

# Object files common to libds and libdsk
COMOBJS	= tfile.o tunix.o tnet.o stubs.o dsname.o interface.o rpcall.o \
	conv_mgr.o host.o announce.o dsc_enter.o tmem.o edit.o

# Object files specific to libds or libdsk
DSKOBJS	= res_module.k.o auth_krb.o $(KRBET)
DSOBJS	= res_module.nk.o auth_dum.o

ETS 	= $(ETDIR)/rpc_et.o $(ETDIR)/usp_et.o $(ETDIR)/dsc_et.o
UP_ETS 	= ../$(ETDIR)/rpc_et.o ../$(ETDIR)/dsc_et.o

# I can't really use a GeneralExtendedLibraryTarget here, because the
# external object files have to have an extra ../ in front of them for
# the profiled version.

all:: libds.a

libds.a:  $(COMOBJS) $(DSOBJS)
	$(RM) $@
	$(AR) $@  $(COMOBJS) $(DSOBJS)  $(ETS)
	$(RANLIB) $@

all:: libdsk.a

libdsk.a:  $(COMOBJS) $(DSKOBJS)
	$(RM) $@
	$(AR) $@  $(COMOBJS) $(DSKOBJS)  $(ETS)
	$(RANLIB) $@

lintlib:: llib-lds.ln

llib-lds.ln:  $(SRCS)
	$(RM) $@
	$(LINT) $(LINTLIBFLAG)ds $(LINTFLAGS)  $(SRCS)

install:: libds.a
	$(INSTALL) -c $(INSTLIBFLAGS) libds.a   $(DSLIBDIR)
	$(RANLIB) $(RANLIBINSTFLAGS)   $(DSLIBDIR)/libds.a

install:: libdsk.a
	$(INSTALL) -c $(INSTLIBFLAGS) libdsk.a   $(DSLIBDIR)
	$(RANLIB) $(RANLIBINSTFLAGS)   $(DSLIBDIR)/libdsk.a

.c.o:
	$(RM) $@
	$(CC) -c $(CFLAGS) $*.c

# Generalizing these is insanely complicated.  Inline! :-)

res_module.k.o: res_module.c
	$(CC) $(CFLAGS) -DKERBEROS -c res_module.c
	mv res_module.o res_module.k.o

res_module.nk.o: res_module.c
	${CC} ${CFLAGS} -c res_module.c
	mv res_module.o res_module.nk.o

depend:: $(SRCS)
	$(DEPEND) -s "# DO NOT DELETE" -- $(ALLDEFINES) -- $(SRCS)

lint:
	$(LINT) $(LINTFLAGS) $(SRCS) $(LINTLIBS)
lint1:
	$(LINT) $(LINTFLAGS) $(FILE) $(LINTLIBS)

emptyrule::

clean::
	$(RM_CMD) \#*

Makefile:: $(IMAKE)

$(IMAKE):
	@(cd $(IMAKESRC); if [ -f Makefile ]; then \
	echo "checking $@ in $(IMAKESRC) first..."; $(MAKE) all; else \
	echo "bootstrapping $@ from Makefile.ini in $(IMAKESRC) first..."; \
	$(MAKE) -f Makefile.ini BOOTSTRAPCFLAGS=$(BOOTSTRAPCFLAGS); fi; \
	echo "okay, continuing in $(CURRENT_DIR)")

Makefile:: Imakefile $(ICONFIGFILES)
	$(IMAKE_CMD) -s- -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)   > Makefile.new
	mv -f Makefile.new Makefile

tags::
	$(TAGS) -w *.[ch]
	$(TAGS) -xw *.[ch] > TAGS

install::
	@echo "install in $(CURRENT_DIR) done"

install.man::
	@echo "install.man in $(CURRENT_DIR) done"

Makefiles::

includes::

# DO NOT DELETE

tfile.o: /usr/include/stdio.h /usr/include/ansi_compat.h /usr/include/errno.h
tfile.o: .././include/discuss/tfile.h /usr/include/sys/types.h
tfile.o: /usr/include/sys/stat.h
tunix.o: /usr/include/stdio.h /usr/include/ansi_compat.h
tunix.o: .././include/discuss/tfile.h /usr/include/errno.h
tunix.o: /usr/include/sys/types.h /usr/include/sys/stat.h
tnet.o: /usr/include/stdio.h /usr/include/ansi_compat.h .././include/usp.h
tnet.o: .././include/usp_et.h .././include/discuss/tfile.h
tnet.o: /usr/include/errno.h
stubs.o: .././include/discuss/interface.h .././include/discuss/types.h
stubs.o: .././include/rpc.h /usr/include/stdio.h /usr/include/ansi_compat.h
stubs.o: .././include/usp.h .././include/usp_et.h .././include/rpc_et.h
stubs.o: .././include/discuss/tfile.h .././include/discuss/acl.h
dsname.o: /usr/include/stdio.h /usr/include/ansi_compat.h
dsname.o: /usr/include/string.h /usr/include/pwd.h /usr/include/sys/types.h
dsname.o: /usr/include/sys/file.h /usr/include/sys/param.h
dsname.o: /usr/include/machine/param.h /usr/include/sys/signal.h
dsname.o: /usr/include/sys/smp_lock.h /usr/include/errno.h
dsname.o: /usr/include/assert.h .././include/discuss/dsname.h
dsname.o: .././include/discuss/dsc_et.h .././include/ansi.h
interface.o: /usr/include/assert.h /usr/include/stdio.h
interface.o: /usr/include/ansi_compat.h /usr/include/string.h
interface.o: /usr/include/errno.h .././include/discuss/tfile.h
interface.o: .././include/discuss/interface.h .././include/discuss/types.h
interface.o: .././include/discuss/acl.h .././include/discuss/dsname.h
interface.o: .././include/rpc.h .././include/usp.h .././include/usp_et.h
interface.o: .././include/rpc_et.h .././include/discuss/dsc_et.h
rpcall.o: /usr/include/sys/types.h /usr/include/ansi_compat.h
rpcall.o: /usr/include/stdio.h /usr/include/ctype.h /usr/include/strings.h
rpcall.o: /usr/include/sys/socket.h /usr/include/netinet/in.h
rpcall.o: /usr/include/netdb.h /usr/include/fcntl.h /usr/include/sys/file.h
rpcall.o: .././include/discuss/tfile.h .././include/rpc.h .././include/usp.h
rpcall.o: .././include/usp_et.h .././include/rpc_et.h .././include/config.h
conv_mgr.o: /usr/include/errno.h /usr/include/string.h .././include/rpc.h
conv_mgr.o: /usr/include/stdio.h /usr/include/ansi_compat.h
conv_mgr.o: .././include/usp.h .././include/usp_et.h .././include/rpc_et.h
host.o: /usr/include/strings.h /usr/include/netdb.h /usr/include/ctype.h
announce.o: /usr/include/stdio.h /usr/include/ansi_compat.h
announce.o: /usr/include/sys/types.h /usr/include/sys/file.h
announce.o: .././include/discuss/tfile.h .././include/discuss/interface.h
announce.o: .././include/discuss/types.h .././include/discuss/dsname.h
announce.o: .././include/discuss/dsc_et.h
res_module.o: .././include/rpc_et.h .././include/config.h .././include/ansi.h
res_module.o: /usr/include/netdb.h /usr/include/string.h /usr/include/ctype.h
auth_krb.o: /usr/include/strings.h /usr/include/ctype.h
auth_krb.o: /usr/athena/include/krb.h /usr/athena/include/mit-copyright.h
auth_krb.o: /usr/athena/include/des.h /usr/athena/include/krb_err.h
dsc_enter.o: /usr/include/stdio.h /usr/include/ansi_compat.h
dsc_enter.o: /usr/include/strings.h /usr/include/ctype.h
dsc_enter.o: /usr/include/sys/types.h /usr/include/sys/file.h
dsc_enter.o: .././include/discuss/tfile.h .././include/discuss/types.h
tmem.o: /usr/include/errno.h /usr/include/sys/types.h
tmem.o: /usr/include/ansi_compat.h /usr/include/sys/uio.h
tmem.o: .././include/discuss/tfile.h
edit.o: /usr/include/stdio.h /usr/include/ansi_compat.h
edit.o: /usr/include/sys/types.h /usr/include/sys/file.h
edit.o: /usr/include/string.h /usr/include/sys/signal.h
edit.o: /usr/include/sys/wait.h /usr/include/sys/stat.h
edit.o: /usr/include/sys/errno.h .././include/discuss/discuss.h
edit.o: .././include/discuss/mit-sipb-copyright.h
edit.o: .././include/discuss/types.h .././include/discuss/tfile.h
edit.o: .././include/discuss/dsc_et.h .././include/discuss/acl.h
edit.o: .././include/discuss/interface.h .././include/discuss/dsname.h
edit.o: ../utils/ss/ss.h ../utils/ss/mit-sipb-copyright.h
edit.o: ../utils/ss/ss_err.h .././include/globals.h
edit.o: .././include/discuss_err.h
