.SUFFIXES: .c .o

CC           = cc
FF           = f77
BIN_PATH     = ../bin
MAN_PATH     = ../Man
BINSTALL     = cp
SINSTALL     = cp
RANLIB       = touch
AR           = ar r
PAR          =

PMF  = p-worker.o p-timer.o p-spawn.o              \
       p-wait.o p-ready.o p-ppp.o p-dsa.o          \
       p-error.o p-signal.o p-globals.o            \
       p-fibre.o p-util.o p-interface.o            \
       p-init.o p-pointer.o p-sdbx.o

SRT0 = p-srt0.o

INCL = world.h conf.h locks.h fibre.h process.h arrays.h interface.h

.c.o:
	${CC} -c $*.c
#${CC} -DDSA_DEBUG -c $*.c

local: libsisal.a

all: libsisal.a

libsisal.a:${PAR} ${PMF} srt0
	${AR} libsisal.a ${PMF}

srt0: ${SRT0}

clean:
	rm -f ${PMF}
	rm -f ${SRT0}
	rm -f libsisal.a
	rm -f mlib.o

cray:
	${FF} -c -Zp -Wd"-dc" -Wf"-astack" mlib.f
	${AR} libsisal.a mlib.o

alliant:
	${FF} -Ogicv -AS -recursive -c mlib.f
	${AR} libsisal.a mlib.o

sgi:
	${FF} -c -O mlib.f
	${AR} libsisal.a mlib.o

other:
	${FF} -c mlib.f
	${AR} libsisal.a mlib.o

install:
	${SINSTALL} p-srt0.o ${BIN_PATH}/p-srt0.o
	${SINSTALL} libsisal.a ${BIN_PATH}/libsisal.a
	${RANLIB}   ${BIN_PATH}/libsisal.a
	${SINSTALL} conf.h ${BIN_PATH}/conf.h
	${SINSTALL} locks.h ${BIN_PATH}/locks.h
	${SINSTALL} process.h ${BIN_PATH}/process.h
	${SINSTALL} fibre.h ${BIN_PATH}/fibre.h
	${SINSTALL} arrays.h ${BIN_PATH}/arrays.h
	${SINSTALL} interface.h ${BIN_PATH}/interface.h
	${SINSTALL} world.h ${BIN_PATH}/world.h

${PMF}:   ${INCL}
${SRT0}:  ${INCL}
