COMM
COMM  Copyright (C) 1990-1999 by CERN/CN/SW/CU
COMM  All rights reserved
COMM
COMM       @(#)Imakefile	1.12 04/02/99 CERN IT-PDP/DM Jean-Philippe Baud
 
COMM 		 Make tms daemon programs. 

#if apollo
LIBS =  ../lib/libshift.a
#else
#if sgi
#if OSMajorVersion >= 6
LIBS = -L../lib -lshift
#else
LIBS = -L../lib -lshift -lsun
#endif
#else
#if linux
LIBS = -L../lib -lshift -lnsl
#else
#if sun
#if SOLARIS
LIBS = -L../lib -lshift -lsocket -lnsl
#else
LIBS = -L../lib -lshift -lkvm
#endif
#else
#if _WIN32
LIBS = ..\lib\shift.lib wsock32.lib advapi32.lib
#else
LIBS = -L../lib -lshift
#endif
#endif
#endif
#endif
#endif
NOTMS = FileName(OperatorDir,notms)
NOTMSD = FileName(OperatorDir,notmsdaemon)
OPSDIR = OperatorDir
OPSGRP = OperatorGid
SPOOL = TmsSpool
SYSTEM = SystemIdForTms
#if cray
CRAYMSG = msg.o
TAPEINC = /usr/include/tapereq.h
#else
FINDPGRP = findpgrp.Osuf
TAPEINC = ../tape/tape.h
#endif

COMM######################### FLAGS ##############################

DFLAGS = -DLOGFILE=\"$(SPOOL)/tms_log\"	 \
	 -DREQFILE=\"$(SPOOL)/tms_req\"	 \
	 -DREQPIPE=\"$(SPOOL)/cmd_pipe\" \
	 -DNOTMS=\"$(NOTMS)\"	 \
	 -DNOTMSD=\"$(NOTMSD)\"	 \
	 -DSYSTEM=\"$(SYSTEM)\"		 \
	 -DTAPEINC=\"$(TAPEINC)\"

CFLAGS = $(DFLAGS)

COMM######################### DEPENDENCY LIBRARIES ###############
 
GLOBLIB = DepLibraryTargetName(lib,shift)

COMM######################### RULES ##############################

MANPAGES = $(MANDIR)/tmsreq.$(MANSUFFIX) $(MANDIR)/tmstat.$(MANSUFFIX)

PROGS  = ProgramTargetName(notms) \
	 ProgramTargetName(tmsactive) \
	 ProgramTargetName(tmsdaemon) \
	 ProgramTargetName(tmsreq) \
	 ProgramTargetName(tmstat) \
	 ProgramTargetName(tsttmsexit)

IPROGS = FileName($(BIN),ProgramTargetName(notms)) \
	 FileName($(BIN),ProgramTargetName(tmsactive)) \
	 FileName($(BIN),ProgramTargetName(tmsdaemon)) \
	 FileName($(BIN),ProgramTargetName(tmsreq)) \
	 FileName($(BIN),ProgramTargetName(tmstat)) \
	 FileName($(BIN),ProgramTargetName(tsttmsexit))

all: $(PROGS) LibraryTargetName(tms)

NormalProgramTarget(notms,notms.Osuf tmslogit.Osuf,NullParameter,NullParameter)

NormalProgramTarget(tmsactive,tmsactive.Osuf tmslogit.Osuf,$(GLOBLIB),$(LIBS))

NormalProgramTarget(tmsdaemon, \
 tmsdaemon.Osuf checkjobdied.Osuf sendrep.Osuf tmslogit.Osuf $(CRAYMSG), \
 $(GLOBLIB),$(LIBS))

NormalProgramTarget(tmsreq,tmsreq.Osuf send2tmsd.Osuf tmslogit.Osuf, \
 $(GLOBLIB),$(LIBS))

NormalProgramTarget(tmstat,tmstat.Osuf,NullParameter,NullParameter)

NormalProgramTarget(tsttmsexit, \
 tsttmsexit.Osuf $(FINDPGRP) send2tmsd.Osuf tmsexit.Osuf tmslogit.Osuf, \
 $(GLOBLIB),$(LIBS))

NormalLibraryTarget(tms,tmsexit.Osuf send2tmsd.Osuf tmslogit.Osuf)

MakeDepLibrary(lib,shift)

install: $(BIN) $(IPROGS) $(SPOOL)

InstallProgram(notms,$(BIN),root,$(OPSGRP),4750)

InstallProgram(tmsactive,$(BIN),root,$(OPSGRP),4750)

InstallProgram(tmsdaemon,$(BIN),root,$(OPSGRP),6750)

InstallProgram(tmsreq,$(BIN),root,bin,4755)

InstallProgram(tmstat,$(BIN),root,bin,0755)

InstallProgram(tsttmsexit,$(BIN),root,bin,4750)

MakeDir($(BIN),root,bin,0755)
MakeDir($(SPOOL),root,bin,0755)

install.man: $(MANDIR) $(MANPAGES)

MakeDir($(MANDIR),root,bin,0755)

IMANPAGE(tmsreq,$(MANDIR),$(MANSUFFIX))
IMANPAGE(tmstat,$(MANDIR),$(MANSUFFIX))

COMM###################### CLEANING RULES #######################

clean:
	-@RemoveFiles(FilesToClean)

clobber:        clean
	-@RemoveFiles($(PROGS) LibraryTargetName(tms))

Makefiles:

FORCE:

COMM####################### DEPENDENCIES ##########################

checkjobdied.Osuf:	tms.h
findpgrp.Osuf:	tms.h
msg.Osuf:	tms.h
notms.Osuf:	tms.h
send2tmsd.Osuf:	tms.h
sendrep.Osuf:	tms.h
tmsactive.Osuf:	tms.h
tmsdaemon.Osuf:	tms.h
tmsexit.Osuf:	tms.h $(TAPEINC)
tmslogit.Osuf:	tms.h
tmsreq.Osuf:	tms.h
tmstat.Osuf:	tms.h
tsttmsexit.Osuf:	tms.h $(TAPEINC)
