# 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 = ./server

               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

SRCS = disserve.c atom.c dispatch.c acl.c acl_core.c core.c coreutil.c \
	recover.c expunge.c glue.c rpproc.c

COMOBJS	= disserve.o atom.o dispatch.o acl.o acl_core.o core.o coreutil.o
RECOBJS = recover.o core.o coreutil.o atom.o acl.o glue.o
EXPOBJS = expunge1.o core.o coreutil.o atom.o acl.o acl_core.o glue.o
EXP2OBJS= expunge2.o dcache.o dfile.o

DEPLIBS	= ../libds/libds.a $(ETDIR)/dsc_et.o $(ETDIR)/rpc_et.o \
	../usp/libusp.a $(COMERRDEP)
LIBS = $(ZEPHYRLIB) -ldsk $(KRBLIB) $(DESLIB) -lusp -lcom_err

INCLUDES = -I$(UTILINCDIR) -I../include -I../ets
DEFINES	= $(ZEPHYRDEF) -DUSPRPC
LDFLAGS	= -L../libds -L../usp -L$(UTILLIBDIR) $(PANSS_LDOPTS)

all: disserve discussd disdebug recover expunge

disserve:  $(COMOBJS) rpproc.nk.o  $(DEPLIBS)
	 $(RM) $@
	$(CC) -o $@  $(COMOBJS) rpproc.nk.o $(LDOPTIONS)  $(LDLIBS)  $(LIBS) $(EXTRA_LOAD_FLAGS)

clean::
	$(RM) disserve

discussd:  $(COMOBJS) rpproc.k.o  $(DEPLIBS)
	 $(RM) $@
	$(CC) -o $@  $(COMOBJS) rpproc.k.o $(LDOPTIONS)  $(LDLIBS)  $(LIBS) $(EXTRA_LOAD_FLAGS)

clean::
	$(RM) discussd

disdebug:  $(COMOBJS) rpproc.debug.o  $(DEPLIBS)
	 $(RM) $@
	$(CC) -o $@  $(COMOBJS) rpproc.debug.o $(LDOPTIONS)  $(LDLIBS)  $(LIBS) $(EXTRA_LOAD_FLAGS)

clean::
	$(RM) disdebug

recover:  $(RECOBJS)  $(DEPLIBS)
	 $(RM) $@
	$(CC) -o $@  $(RECOBJS) $(LDOPTIONS)  $(LDLIBS)  $(LIBS) $(EXTRA_LOAD_FLAGS)

clean::
	$(RM) recover

expunge:  $(EXPOBJS)  $(DEPLIBS)
	 $(RM) $@
	$(CC) -o $@  $(EXPOBJS) $(LDOPTIONS)  $(LDLIBS)  $(LIBS) $(EXTRA_LOAD_FLAGS)

clean::
	$(RM) expunge

expunge+ : $(EXP2OBJS) $(COMERRDEP)
	$(CXX) -o expunge+ $(EXP2OBJS) -lcom_err

install:: discussd
	$(INSTALL) -c $(INSTPGMFLAGS)  -o discuss discussd  $(DS_SERVERDIR)

install:: disserve
	$(INSTALL) -c $(INSTPGMFLAGS)  -o discuss -m 4755 disserve  $(DS_SERVERDIR)

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

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

installclient: disserve
	$(INSTALL) -c $(INSTPGMFLAGS) disserve $(DESTDIR)/disserve-fs

# Magic dependencies and build rules.

# I could make a macro for this, but it probably isn't necessary.
rpproc.k.o: rpproc.c
	rm -f rpproc.k.o rpproc.o
	${CC} $(CFLAGS) -DINETD -DKERBEROS -c rpproc.c
	mv rpproc.o rpproc.k.o

rpproc.nk.o: rpproc.c
	rm -f rpproc.o rpproc.nk.o
	${CC} $(CFLAGS) -DSUBPROC -c rpproc.c
	mv rpproc.o rpproc.nk.o

rpproc.debug.o: rpproc.c
	rm -f rpproc.debug.o rpproc.o
	${CC} $(CFLAGS) -DKERBEROS -c rpproc.c
	mv rpproc.o rpproc.debug.o

expunge1.o : expunge.c
	rm -f expunge.o expunge1.o
	${CC} $(CFLAGS) -c expunge.c
	mv -f expunge.o expunge1.o

# C++ stuff.  Should be moved to imake include files.
CXX = CC
CXXFLAGS = $(CFLAGS)

.SUFFIXES: .o .cc

.cc.o : ; rm -f $*.o $*.C ; ln -s $*.cc $*.C ; ${CXX} ${CXXFLAGS} -c $*.C

expunge2.o : expunge.cc dsrv.h
	rm -f expunge2.o expunge.C expunge.o
	ln -s expunge.cc expunge.C
	${CXX} $(CXXFLAGS) -c expunge.C
	mv -f expunge.o expunge2.o

dcache.o : dcache.cc dsrv.h
dfile.o : dfile.cc dsrv.h

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

disserve.o: /usr/include/stdio.h /usr/include/ansi_compat.h
disserve.o: /usr/include/syslog.h
atom.o: ../include/atom.h /usr/include/sys/types.h /usr/include/ansi_compat.h
atom.o: /usr/include/sys/stat.h /usr/include/sys/file.h
dispatch.o: .././include/rpc.h /usr/include/stdio.h
dispatch.o: /usr/include/ansi_compat.h .././include/usp.h
dispatch.o: .././include/usp_et.h .././include/rpc_et.h
dispatch.o: .././include/discuss/interface.h .././include/discuss/types.h
dispatch.o: .././include/discuss/tfile.h .././include/discuss/acl.h
dispatch.o: .././include/ansi.h
acl.o: /usr/include/stdio.h /usr/include/ansi_compat.h /usr/include/strings.h
acl.o: /usr/include/ctype.h .././include/discuss/discuss.h
acl.o: .././include/discuss/mit-sipb-copyright.h .././include/discuss/types.h
acl.o: .././include/discuss/tfile.h .././include/discuss/dsc_et.h
acl.o: .././include/discuss/acl.h .././include/discuss/interface.h
acl.o: .././include/discuss/dsname.h .././include/internal.h
acl_core.o: .././include/discuss/types.h .././include/discuss/dsc_et.h
acl_core.o: .././include/discuss/acl.h .././include/internal.h
acl_core.o: /usr/include/sys/types.h /usr/include/ansi_compat.h
acl_core.o: /usr/include/sys/file.h /usr/include/errno.h /usr/include/stdio.h
acl_core.o: /usr/include/sys/param.h /usr/include/machine/param.h
acl_core.o: /usr/include/sys/signal.h /usr/include/sys/smp_lock.h
acl_core.o: /usr/include/string.h .././include/ansi.h
core.o: .././include/discuss/types.h .././include/discuss/dsc_et.h
core.o: .././include/discuss/interface.h mtg.h .././include/discuss/tfile.h
core.o: .././include/atom.h .././include/discuss/acl.h
core.o: .././include/internal.h /usr/include/errno.h /usr/include/sys/types.h
core.o: /usr/include/ansi_compat.h /usr/include/sys/file.h
core.o: /usr/include/sys/stat.h /usr/include/sys/param.h
core.o: /usr/include/machine/param.h /usr/include/sys/signal.h
core.o: /usr/include/sys/smp_lock.h /usr/include/string.h
coreutil.o: .././include/discuss/types.h .././include/discuss/dsc_et.h
coreutil.o: .././include/atom.h mtg.h .././include/discuss/tfile.h
coreutil.o: .././include/discuss/acl.h .././include/internal.h
coreutil.o: .././include/ansi.h /usr/athena/include/zephyr/zephyr.h
coreutil.o: /usr/athena/include/zephyr/zephyr_err.h
coreutil.o: /usr/athena/include/zephyr/zephyr_conf.h
coreutil.o: /usr/athena/include/zephyr/mit-copyright.h
coreutil.o: /usr/athena/include/zephyr/zephyr_paths.h /usr/include/errno.h
coreutil.o: /usr/include/sys/types.h /usr/include/ansi_compat.h
coreutil.o: /usr/include/sys/time.h /usr/include/stdio.h
coreutil.o: /usr/include/varargs.h /usr/athena/include/krb.h
coreutil.o: /usr/athena/include/mit-copyright.h /usr/athena/include/des.h
coreutil.o: /usr/include/netinet/in.h /usr/include/netdb.h
coreutil.o: /usr/include/sys/file.h /usr/include/sys/stat.h
coreutil.o: /usr/include/string.h
recover.o: /usr/include/stdio.h /usr/include/ansi_compat.h
recover.o: /usr/include/strings.h /usr/include/sys/types.h
recover.o: /usr/include/sys/file.h /usr/include/sys/stat.h
recover.o: .././include/discuss/types.h .././include/discuss/dsc_et.h
recover.o: .././include/discuss/tfile.h .././include/discuss/interface.h
recover.o: mtg.h
expunge.o: /usr/include/stdio.h /usr/include/ansi_compat.h
expunge.o: /usr/include/strings.h /usr/include/ctype.h
expunge.o: /usr/include/sys/types.h /usr/include/sys/file.h
expunge.o: /usr/include/sys/stat.h .././include/discuss/types.h
expunge.o: .././include/discuss/dsc_et.h .././include/discuss/tfile.h
expunge.o: .././include/discuss/interface.h .././include/discuss/acl.h mtg.h
rpproc.o: /usr/include/sys/ioctl.h /usr/include/ansi_compat.h
rpproc.o: /usr/include/sys/ttydev.h /usr/include/fcntl.h
rpproc.o: /usr/include/sys/file.h /usr/include/sys/types.h
rpproc.o: /usr/include/sys/socket.h /usr/include/stdio.h
rpproc.o: /usr/include/netinet/in.h /usr/include/sys/stat.h
rpproc.o: /usr/include/netdb.h /usr/include/errno.h /usr/include/pwd.h
rpproc.o: /usr/include/string.h .././include/discuss/tfile.h
rpproc.o: .././include/rpc.h .././include/usp.h .././include/usp_et.h
rpproc.o: .././include/rpc_et.h .././include/discuss/types.h
rpproc.o: .././include/config.h
