# Makefile for a standalone VAX tftp

LIBDIR = ../../vax/lib
CRTNB =  crtnb.o
#CRTNBT = ../ddt.vax/scb.o crtnbt.o
#DDT = ../../vax/lib/libddt.a
#DDTST = ../ddt.vax/isymt.o
#FST = ../ddt.vax/fst.o
CRTNBT = $(LIBDIR)/scb.o crtnbt.o
DDT = $(LIBDIR)/libddt.a
DDTST = $(LIBDIR)/isymt.o
FST = $(LIBDIR)/fst.o

#CFLAGS = -O -DETHER -DDEBUG -Dstandalone -I../sys/include
#CFLAGS = -DETHER -DDEBUG -Dstandalone -DNOINTR -DETHER_DEBUG -I../sys/include
#CFLAGS = -DBROKEN_NIP_SVR -DETHER -Dstandalone -DNOINTR -DINETD -I../sys/include
CFLAGS = -I../sys/include -DETHER -DINETD

OBJ = boot.o tftp.o vii.o net.o bootp.o cksum.o gets.o res_name.o str.o \
	phex.o vax.o

EOBJ =  boot.o tftp.o ether.o e_net.o bootp.o cksum.o gets.o res_name.o str.o \
	phex.o qna.o vax.o dev.o nip.o

all: etftp

etftp-ddt: $(EOBJ) crtnbt.o st.o
	ld -e start $(CRTNBT) $(EOBJ) $(DDT) $(LIBDIR)/libc.a $(DDTST) st.o -o etftp-ddt
	rm -f a.out; ln etftp-ddt a.out

tftp:	$(OBJ) 
	ld -e start $(CRTNB) $(OBJ) $(LIBDIR)/libc.a -o tftp
	rm -f a.out; ln tftp a.out

etftp:	$(EOBJ) crtnb.o
	rm -f etftp
	ld $(CRTNB) $(EOBJ) ./libc.a -o etftp
	rm -f a.out; ln etftp a.out

etftp-mop: $(EOBJ) crtnbmop.o
	ld -N -T b0000 crtnbmop.o $(EOBJ) ./libc.a -o etftp-mop

bootpd: bootpd.o
	cc -o bootpd bootpd.o
	
hello:	hello.o phex.o $(CRTNB)
	ld -e start $(LIBDIR)/scb.o $(CRTNB) hello.o phex.o ./libc.a -o hello

b.out: $(OBJ) crtnb.o
	ld -N -o b.out $(CRTNB) $(OBJ) $(LIBDIR)/libc.a

bootnet: b.out
	strip b.out;dd if=b.out of=bootnet ibs=32 skip=1

tftp-ddt: $(OBJ) crtnbt.o
	ld -e start $(CRTNBT) $(OBJ) $(DDT) ../ddt.vax/libc.a $(DDTST) st.o

st.s: a.out
	nm -gn a.out | ../../vax/bin/mksymt > st.s

#a.out:	$(OBJ)
#	ld -e start $(CRTNBT) $(OBJ) $(DDT) ./libc.a $(DDTST) $(FST)

nits:
	lint -hbun $(CFLAGS) qna.c
