# Makefile for simh-2.3d/Debian. (c) 1998 Edward Brocklesby.
# ejb@klamath.demon.co.uk
#
# This file is distributed under the license terms of the simh pacakage.
#
# This file is derived from the file simh_doc.txt. This file is 
# based in part on the original work of Robert M. Supnik.

ALLSRC=	scp.c \
	scp_tty.c
ALLOBJ=	${ALLSRC:.c=.o}

PDP1SRC=	pdp1_cpu.c    \
		pdp1_lp.c     \
		pdp1_stddev.c \
		pdp1_sys.c
PDP1OBJ=	${PDP1SRC:.c=.o}
		
PDP18BSRC= 	pdp18b_cpu.c    \
		pdp18b_drm.c    \
		pdp18b_lp.c     \
		pdp18b_mt.c     \
		pdp18b_rf.c     \
		pdp18b_stddev.c \
		pdp18b_sys.c    \
		pdp18b_rp.c

NOVASRC=	nova_clk.c \
		nova_cpu.c \
		nova_dkp.c \
		nova_dsk.c \
		nova_lp.c  \
		nova_mta.c \
		nova_pt.c  \
		nova_sys.c \
		nova_tt.c
NOVAOBJ=	${NOVASRC:.c=.o}

PDP8SRC=	pdp8_clk.c \
		pdp8_cpu.c \
		pdp8_lp.c  \
		pdp8_mt.c  \
		pdp8_pt.c  \
		pdp8_rf.c  \
		pdp8_rk.c  \
		pdp8_rx.c  \
		pdp8_sys.c \
		pdp8_tt.c 
PDP8OBJ=	${PDP8SRC:.c=.o}

PDP11SRC=	pdp11_cis.c   \
		pdp11_cpu.c   \
		pdp11_fp.c    \
		pdp11_lp.c    \
		pdp11_rk.c    \
		pdp11_rl.c    \
		pdp11_rp.c    \
		pdp11_rx.c    \
		pdp11_stddev.c \
		pdp11_sys.c    \
		pdp11_tm.c
PDP11OBJ=	${PDP11SRC:.c=.o}

IBMSRC=	i1401_cd.c  \
	i1401_cpu.c \
	i1401_iq.c  \
	i1401_lp.c  \
	i1401_mt.c  \
	i1401_sys.c
IBMOBJ=	${IBMSRC:.c=.o}

LDFLAGS=	-lm

all: pdp1 pdp4 pdp7 pdp8 pdp9 pdp11 pdp15 nova i1401

pdp1: ${ALLOBJ} ${PDP1OBJ}
	cc ${ALLOBJ} ${PDP1OBJ} ${LDFLAGS} -o pdp1

pdp4: ${ALLOBJ}
	cc  ${ALLOBJ} ${PDP18BSRC} ${LDFLAGS} -DPDP4 -o pdp4

pdp7: ${ALLOBJ}
	cc ${ALLOBJ} ${PDP18BSRC} ${LDFLAGS} -DPDP7 -o pdp7

pdp8: ${ALLOBJ} ${PDP8OBJ}
	cc ${ALLOBJ} ${PDP8OBJ} ${LDFLAGS} -o pdp8

pdp9: ${ALLOBJ}
	cc ${ALLOBJ} ${PDP18BSRC} ${LDFLAGS} -DPDP9 -o pdp9 

pdp11: ${ALLOBJ} ${PDP11OBJ}
	cc ${ALLOBJ} ${PDP11OBJ} ${LDFLAGS} -o pdp11

pdp15: ${ALLOBJ}
	cc ${ALLOBJ} ${PDP18BSRC} ${LDFLAGS} -DPDP15 -o pdp15

nova: ${ALLOBJ} ${NOVAOBJ}
	cc ${ALLOBJ} ${NOVAOBJ} ${LDFLAGS} -o nova

i1401: ${ALLOBJ} ${IBMOBJ}
	cc ${ALLOBJ} ${IBMOBJ} ${LDFLAGS} -o i1401

clean:
	rm -f *.o *core pdp1 pdp4 pdp7 pdp8 pdp9 pdp11 pdp15 nova i1401

install:
	mkdir $(DESTDIR)/doc
	mkdir $(DESTDIR)/bin
	install -c -o root -g root -m 755 pdp1 pdp4 pdp7 pdp8 pdp9 pdp11 pdp15 nova i1401 $(DESTDIR)/bin/
	install -c -o root -g root -m 755 simh_doc.txt $(DESTDIR)/doc
