#	Makefile,v 1.4 1994/12/31 17:16:49 jkh Exp
#
# Makefile for BDG300
#
# Basic Options:
#	-DASK_BOOT	- Ask "Boot from Network (Y/N) ?" at startup
#	-DROMSIZE	- Size of EPROM - Must be set (even for .COM files)
#	-DRELOC		- Relocation address (usually 0x90000)
#
# NS8390 Options:
#	-DINCLUDE_WD	- Include Western Digital/SMC support
#	-DINCLUDE_NE	- Include NE1000/NE2000 support
#	-DINCLUDE_3COM  - Include 3c503 support
#       -D_3COM_USE_AUI - Disable transceiver on 3c503 by default
#	-DNE_BASE	- Base I/O address for NE1000/NE2000
#       -D_3COM_BASE    - Base I/O address for 3c503
#	-DWD_DEFAULT_MEM- Default memory location for WD/SMC cards
# XXX nothing depends on this Makefile so you must run `make clean' after
# changing an option.
#

PROG=	bdg300.com bdg300.rom
# Order is very important on the SRCS line for this prog
SRCS=	start2.S misc.c bridge.c proc.c # if_de.c
OBJS1=$(SRCS:.c=.o)
OBJS=$(OBJS1:.S=.ro)
ALLSRC=	start2.S misc.c bridge.c proc.c bridge.h \
	ns8390.h ns8390.c 3c509.c 3c509.h \
	endian.h cpufunc.h \
	Makefile README makerom.c pcbridged.c pcbridgetab \
	if_de.c dc21040.h

CFLAGS=		-O -DROMSIZE=${ROMSIZE} -DRELOC=${RELOCADDR}
NS8390=	-DINCLUDE_NE -DINCLUDE_WD
#NS8390+=	-DINCLUDE_3COM -D_3COM_BASE=0x300
CLEANFILES+=	bdg300.com bdg300.rom
CLEANFILES+=	bdg509.com bdg509.rom
CLEANFILES+=	pcbridged
CLEANFILES+=	makerom tmp.com $(OBJS)
LDFLAGS+=	-N -T ${RELOCADDR} -e _start -nostdlib

ROMSIZE=16384
RELOCADDR=0x80000

# .SUFFIXES: .ro

all: $(PROG)

start2.ro: start2.S
	${CC} ${CFLAGS} -DBOOTROM -o start2.ro -c start2.S

.c.o:
	${CC} ${CFLAGS} -o $*.o -c $<

ns8390.o:	ns8390.c ns8390.h
	${CC} $(CFLAGS) $(NS8390) -o $*.o -c $<

misc.o: misc.c bridge.h

makerom: makerom.c
	${CC} -o makerom -DROMSIZE=${ROMSIZE} makerom.c

bdg300.rom:	makerom $(OBJS) ns8390.o
	${LD} ${LDFLAGS} -o bdg300.rom $(OBJS) ns8390.o
	strip bdg300.rom
	size bdg300.rom
	./makerom bdg300.rom

bdg509.rom:	makerom start2.ro ${OBJS} 3c509.o
	${LD} ${LDFLAGS} -o bdg509.rom ${OBJS} 3c509.o
	strip bdg509.rom
	size bdg509.rom
	./makerom bdg509.rom

bdg300.com:	makerom start2.ro $(OBJS) ns8390.o
	${LD} ${LDFLAGS} -o tmp.com ${OBJS} ns8390.o
	strip tmp.com
	size tmp.com
	dd ibs=32 skip=1 if=tmp.com of=bdg300.com

bdg509.com:	start2.o ${SRCS:N*.h:R:S/$/.o/g} 3c509.o
	${LD} ${LDFLAGS} -o bdg509.com ${OBJS} 3c509.o
	strip tmp.com
	size tmp.com
	dd ibs=32 skip=1 if=tmp.com of=bdg509.com

pcbridged: pcbridged.c
	$(CC) -o pcbridged pcbridged.c

bdg.tgz: $(ALLSRC)
	- rm bdg.tgz*
	tar cvf - $(ALLSRC) | gzip -9 > bdg.tgz
clean:
	- rm $(CLEANFILES)

#
# end of makefile
