head	1.24;
access;
symbols
	RELENG_4_11_0_RELEASE:1.23.2.2
	RELENG_4_11:1.23.2.2.0.16
	RELENG_4_11_BP:1.23.2.2
	RELENG_4_10_0_RELEASE:1.23.2.2
	RELENG_4_10:1.23.2.2.0.14
	RELENG_4_10_BP:1.23.2.2
	RELENG_4_9_0_RELEASE:1.23.2.2
	RELENG_4_9:1.23.2.2.0.12
	RELENG_4_9_BP:1.23.2.2
	RELENG_4_8_0_RELEASE:1.23.2.2
	RELENG_4_8:1.23.2.2.0.10
	RELENG_4_8_BP:1.23.2.2
	RELENG_4_7_0_RELEASE:1.23.2.2
	RELENG_4_7:1.23.2.2.0.8
	RELENG_4_7_BP:1.23.2.2
	RELENG_4_6_2_RELEASE:1.23.2.2
	RELENG_4_6_1_RELEASE:1.23.2.2
	RELENG_4_6_0_RELEASE:1.23.2.2
	RELENG_4_6:1.23.2.2.0.6
	RELENG_4_6_BP:1.23.2.2
	RELENG_4_5_0_RELEASE:1.23.2.2
	RELENG_4_5:1.23.2.2.0.4
	RELENG_4_5_BP:1.23.2.2
	RELENG_4_4_0_RELEASE:1.23.2.2
	RELENG_4_4:1.23.2.2.0.2
	RELENG_4_4_BP:1.23.2.2
	RELENG_4_3_0_RELEASE:1.23
	RELENG_4_3:1.23.0.4
	RELENG_4_3_BP:1.23
	RELENG_4_2_0_RELEASE:1.23
	RELENG_4_1_1_RELEASE:1.23
	RELENG_4_1_0_RELEASE:1.23
	RELENG_3_5_0_RELEASE:1.22.2.1
	RELENG_4_0_0_RELEASE:1.23
	RELENG_4:1.23.0.2
	RELENG_4_BP:1.23
	RELENG_3_4_0_RELEASE:1.22.2.1
	RELENG_3_3_0_RELEASE:1.22.2.1
	RELENG_3_2_PAO:1.22.0.4
	RELENG_3_2_PAO_BP:1.22
	RELENG_3_2_0_RELEASE:1.22
	POST_VFS_BIO_NFS_PATCH:1.22
	PRE_VFS_BIO_NFS_PATCH:1.22
	POST_SMP_VMSHARE:1.22
	PRE_SMP_VMSHARE:1.22
	POST_NEWBUS:1.22
	PRE_NEWBUS:1.22
	RELENG_3_1_0_RELEASE:1.22
	RELENG_3:1.22.0.2
	RELENG_3_BP:1.22
	RELENG_2_2_8_RELEASE:1.9.2.4
	RELENG_3_0_0_RELEASE:1.19
	RELENG_2_2_7_RELEASE:1.9.2.4
	PRE_NOBDEV:1.18
	POST_DEVFS_SLICE:1.16
	PRE_DEVFS_SLICE:1.16
	RELENG_2_2_6_RELEASE:1.9.2.4
	POST_SOFTUPDATE:1.16
	PRE_SOFTUPDATE:1.16
	RELENG_2_2_5_RELEASE:1.9.2.3
	WOLLMAN_MBUF:1.12.0.2
	BP_WOLLMAN_MBUF:1.12
	RELENG_2_2_2_RELEASE:1.9.2.2
	post_smp_merge:1.9
	pre_smp_merge:1.9
	RELENG_2_2_1_RELEASE:1.9
	RELENG_2_2_0_RELEASE:1.9
	RELENG_2_1_7_RELEASE:1.7
	RELENG_2_1_6_1_RELEASE:1.7
	RELENG_2_1_6_RELEASE:1.7
	RELENG_2_2:1.9.0.2
	RELENG_2_2_BP:1.9
	RELENG_2_1_5_RELEASE:1.7
	wollman_polling:1.8.0.2
	RELENG_2_1_0_RELEASE:1.7
	RELENG_2_1_0:1.7.0.4
	RELENG_2_1_0_BP:1.7
	RELENG_2_0_5_RELEASE:1.7
	RELENG_2_0_5:1.7.0.2
	RELENG_2_0_5_BP:1.7
	RELENG_2_0_5_ALPHA:1.7
	OLAH_TTCP:1.3.0.2
	RELEASE_2_0:1.3
	BETA_2_0:1.3
	ALPHA_2_0:1.2.0.2;
locks; strict;
comment	@# @;


1.24
date	2000.03.19.11.42.28;	author peter;	state dead;
branches;
next	1.23;

1.23
date	99.08.28.00.43.29;	author peter;	state Exp;
branches
	1.23.2.1;
next	1.22;

1.22
date	98.12.30.10.48.09;	author bde;	state Exp;
branches
	1.22.2.1;
next	1.21;

1.21
date	98.11.28.08.03.24;	author joerg;	state Exp;
branches;
next	1.20;

1.20
date	98.11.26.11.11.29;	author joerg;	state Exp;
branches;
next	1.19;

1.19
date	98.07.07.02.43.26;	author bde;	state Exp;
branches;
next	1.18;

1.18
date	98.06.30.11.10.24;	author phk;	state Exp;
branches;
next	1.17;

1.17
date	98.06.29.18.52.33;	author bde;	state Exp;
branches;
next	1.16;

1.16
date	98.03.07.10.48.13;	author eivind;	state Exp;
branches;
next	1.15;

1.15
date	98.02.15.21.38.18;	author eivind;	state Exp;
branches;
next	1.14;

1.14
date	97.10.07.06.40.16;	author bde;	state Exp;
branches;
next	1.13;

1.13
date	97.10.05.09.39.45;	author jkh;	state Exp;
branches;
next	1.12;

1.12
date	97.05.15.19.04.33;	author tegge;	state Exp;
branches;
next	1.11;

1.11
date	97.05.14.02.44.26;	author tegge;	state Exp;
branches;
next	1.10;

1.10
date	97.05.13.06.23.21;	author asami;	state Exp;
branches;
next	1.9;

1.9
date	96.04.03.19.01.29;	author phk;	state Exp;
branches
	1.9.2.1;
next	1.8;

1.8
date	95.10.10.21.11.22;	author ache;	state Exp;
branches;
next	1.7;

1.7
date	95.04.12.20.15.07;	author martin;	state Exp;
branches
	1.7.4.1;
next	1.6;

1.6
date	95.04.01.16.03.25;	author bde;	state Exp;
branches;
next	1.5;

1.5
date	95.03.31.06.51.31;	author jkh;	state Exp;
branches;
next	1.4;

1.4
date	94.12.31.17.16.49;	author jkh;	state Exp;
branches;
next	1.3;

1.3
date	94.11.17.12.16.01;	author jkh;	state Exp;
branches;
next	1.2;

1.2
date	94.10.28.22.13.22;	author phk;	state Exp;
branches;
next	1.1;

1.1
date	94.10.17.17.55.22;	author phk;	state Exp;
branches;
next	;

1.7.4.1
date	97.08.15.13.45.18;	author tegge;	state Exp;
branches;
next	;

1.9.2.1
date	97.05.13.06.29.09;	author asami;	state Exp;
branches;
next	1.9.2.2;

1.9.2.2
date	97.05.14.02.47.44;	author tegge;	state Exp;
branches;
next	1.9.2.3;

1.9.2.3
date	97.08.15.13.46.27;	author tegge;	state Exp;
branches;
next	1.9.2.4;

1.9.2.4
date	97.10.26.02.18.41;	author jkh;	state Exp;
branches;
next	;

1.22.2.1
date	99.08.29.16.05.15;	author peter;	state Exp;
branches;
next	;

1.23.2.1
date	2001.04.25.11.24.02;	author ru;	state Exp;
branches;
next	1.23.2.2;

1.23.2.2
date	2001.05.08.20.51.49;	author luigi;	state dead;
branches;
next	;


desc
@@


1.24
log
@Remove the old a.out-only boot loader, we don't use it any more.
The new boot1/boot2 can load a.out and elf kernels directly.
I think the sys/pc98 version can go too as the sys/boot/pc98 code
appears to be functional, but I'll leave that for the pc98 folks.

"There can be only one."
@
text
@# $FreeBSD: src/sys/i386/boot/netboot/Makefile,v 1.23 1999/08/28 00:43:29 peter Exp $
#
# Makefile for NETBOOT
#
# Basic Options:
#	-DSECURE_BOOT	- Disable 'boot>' prompt completely
#	-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.
#

### options for PCI cards
###
PCI_VENDOR=0x10ec
PCI_DEVICE=0x8029
PCI_CLASS=0x02,0x00,0x00

PROG=	nb8390.com nb3c509.com nb8390.rom nb3c509.rom
# Order is very important on the SRCS line for this prog
SRCS=	start2.S main.c misc.c bootmenu.c rpc.c

BINMODE=	555
#CFLAGS=		-O2 -DNFS -DROMSIZE=${ROMSIZE} -DRELOC=${RELOCADDR} -DASK_BOOT
CFLAGS=		-O2 -DNFS -DROMSIZE=${ROMSIZE} -DRELOC=${RELOCADDR} # -DASK_BOOT
CFLAGS += -DPCI -DPCI_VENDOR=${PCI_VENDOR} -DPCI_DEVICE=${PCI_DEVICE}
CFLAGS += -DPCI_CLASS=${PCI_CLASS} -DASK_BOOT
#NS8390=		-DINCLUDE_WD -DWD_DEFAULT_MEM=0xD0000
NS8390=	-DINCLUDE_NE
#NS8390+=	-DINCLUDE_3COM -D_3COM_BASE=0x300
CLEANFILES+=	netboot.com
CLEANFILES+=	makerom start2.ro 3c509.o ns8390.o
ROMLDFLAGS=	${LDFLAGS} -aout -N -T ${RELOCADDR} -e _start -nostdlib
NOSHARED=	YES
MAN8=	netboot.8
SIZE=	size -aout
STRIP=
STRIPCMD=	strip -aout

ROMSIZE=16384
RELOCADDR=0x90000

.SUFFIXES:	.ro

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

build-tools: makerom

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

makerom: makerom.c
	${CC} ${CFLAGS} -DROMSIZE=${ROMSIZE} ${LDFLAGS} -o ${.TARGET} \
	    ${.CURDIR}/makerom.c

nb8390.rom:	makerom start2.ro ${SRCS:N*.h:R:S/$/.o/g} ns8390.o
	${LD} ${ROMLDFLAGS} -o ${.TARGET} ${OBJS:S/start2.o/start2.ro/} ns8390.o
	${STRIPCMD} ${.TARGET}
	${SIZE} ${.TARGET}
	${.OBJDIR}/makerom ${.TARGET}

nb3c509.rom:	makerom start2.ro ${SRCS:N*.h:R:S/$/.o/g} 3c509.o
	${LD} ${ROMLDFLAGS} -o ${.TARGET} ${OBJS:S/start2.o/start2.ro/} 3c509.o
	${STRIPCMD} ${.TARGET}
	${SIZE} ${.TARGET}
	${.OBJDIR}/makerom ${.TARGET}

nb8390.com:	makerom start2.ro ${SRCS:N*.h:R:S/$/.o/g} ns8390.o
	${LD} ${ROMLDFLAGS} -o ${.TARGET}.tmp ${OBJS} ns8390.o
	${STRIPCMD} ${.TARGET}.tmp
	${SIZE} ${.TARGET}.tmp
	dd ibs=32 skip=1 if=${.TARGET}.tmp of=${.TARGET}
	rm -f ${.TARGET}.tmp

nb3c509.com:	start2.o ${SRCS:N*.h:R:S/$/.o/g} 3c509.o
	${LD} ${ROMLDFLAGS} -o ${.TARGET}.tmp ${OBJS} 3c509.o
	${STRIPCMD} ${.TARGET}.tmp
	${SIZE} ${.TARGET}.tmp
	dd ibs=32 skip=1 if=${.TARGET}.tmp of=${.TARGET}
	rm -f ${.TARGET}.tmp

# This force the creation of the "machine" symlink.  These objects are
# specially handled in this file, and thus can't be taken care of in
# ../Makefile.inc
3c509.o makerom ns8390.o start2.ro: machine

.include <bsd.prog.mk>
@


1.23
log
@$Id$ -> $FreeBSD$
@
text
@d1 1
a1 1
# $FreeBSD$
@


1.23.2.1
log
@MFC: MAN[1-9] -> MAN.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/i386/boot/netboot/Makefile,v 1.23 1999/08/28 00:43:29 peter Exp $
d45 1
a45 1
MAN=	netboot.8
@


1.23.2.2
log
@MFC: nuke netboot, it is unmaintained, and ports/net/etherboot does the
same job ten times better.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/i386/boot/netboot/Makefile,v 1.23.2.1 2001/04/25 11:24:02 ru Exp $
@


1.22
log
@Rely on ../Makefile.inc to set the object format in CFLAGS and the
default for BINDIR.

Fixed some style bugs in previous aout enforcement.
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.21 1998/11/28 08:03:24 joerg Exp $
@


1.22.2.1
log
@$Id$ -> $FreeBSD$
@
text
@d1 1
a1 1
# $FreeBSD$
@


1.21
log
@Fix my breakage of `make installworld'.  However, i don't think it's right to
install all those images at all (nor to install them under /usr/mdec), given
the high degree of customization this Makefile needs in order to get images
that are actually useful for some NIC.

Submitted by:	John Hay <jhay@@mikom.csir.co.za>,
		Paul Allenby <pallenby@@mikom.csir.co.za>
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.20 1998/11/26 11:11:29 joerg Exp $
a32 1
BINDIR=		/usr/mdec
d43 1
a43 1
ROMLDFLAGS=	${LDFLAGS} -N -T ${RELOCADDR} -e _start -nostdlib
d46 1
d48 1
a48 4
STRIPCMD= strip -aout
SIZE=	size -aout
CFLAGS += -aout
LDFLAGS += -aout
@


1.20
log
@Make netboot work again.  All this depends on the object format being
a.out (by now).
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.19 1998/07/07 02:43:26 bde Exp $
d47 2
a48 1
STRIP=	strip -aout
d72 1
a72 1
	${STRIP} ${.TARGET}
d78 1
a78 1
	${STRIP} ${.TARGET}
d84 1
a84 1
	${STRIP} ${.TARGET}.tmp
d91 1
a91 1
	${STRIP} ${.TARGET}.tmp
@


1.19
log
@Added a `build-tools' target for internal tools.

Honor LDFLAGS for building internal tools.
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.18 1998/06/30 11:10:24 phk Exp $
d47 4
a50 1
STRIP=
d71 2
a72 2
	strip ${.TARGET}
	size ${.TARGET}
d77 2
a78 2
	strip ${.TARGET}
	size ${.TARGET}
d83 2
a84 2
	strip ${.TARGET}.tmp
	size ${.TARGET}.tmp
d90 2
a91 2
	strip ${.TARGET}.tmp
	size ${.TARGET}.tmp
@


1.18
log
@These are a selection of small problems and annoyances with the netboot
code. Apart from the first one, none really affect typical configurations
but are nevertheless unnecessary limitations. We use netbooted PCs as
student X-terminals and all of the below fixes have been useful. Apologies
for including them all in one PR, but some are just too silly or trivial
to send on their own!

a)     Newer SMC cards have hardware addresses starting with 00:E0.
      Netboot compares the MAC address with 00:00:C0 to determine
      if it is a WD/SMC card, so it fails to detect these.

b)     Netboot is unable to boot kzipped kernels, as it assumes that
      the kernel load address is 0x100000.

c)     Users can abort the booting process and enter arbitrary network
      addresses, or boot from a floppy disk. This can be a problem when
      netbooted machines are used in a student environment.

d)     It is not possible to set all options via bootp. For example there
      is no way to remotely force a client to boot from disk. With both
      SECURE_BOOT(patch below) and NO_TFTP defined, short of unplugging
      the eprom there is no way at all to get the client to boot locally.
      A generic solution is to allow complete netboot commands to be sent
      using bootp lines such as:
	      :T132="diskboot":
e)     The last character of netboot command names is not checked. You
      can type 'iz 10.0.0.1' and it will be interpreted as 'ip'. This
      is only important if you try to add a new command which is the
      same as an existing one except for the last character.

f)     We have a configuration where multiple servers are willing to serve
      a diskless client. The tftp config file, or the bootptab entry on
      each server must specify the root and swap filesystems as 'ip:/fs'
      even though 'ip' will usually be the responding server's IP address.
      It would be nice if netboot could automatically prepend the server's
      IP address to an entry specified as just '/fs', so that multiple
      servers can use the same tftp or bootp configuration files. Admittedly
      this is hardly a major problem!

PR:		7098
Submitted by:	Ian Dowse <iedowse@@maths.tcd.ie>
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.17 1998/06/29 18:52:33 bde Exp $
d44 1
a44 1
LDFLAGS+=	-N -T ${RELOCADDR} -e _start -nostdlib
d57 2
d63 2
a64 1
	${CC} ${CFLAGS} -o ${.TARGET} -DROMSIZE=${ROMSIZE} ${.CURDIR}/makerom.c
d67 1
a67 1
	${LD} ${LDFLAGS} -o ${.TARGET} ${OBJS:S/start2.o/start2.ro/} ns8390.o
d73 1
a73 1
	${LD} ${LDFLAGS} -o ${.TARGET} ${OBJS:S/start2.o/start2.ro/} 3c509.o
d79 1
a79 1
	${LD} ${LDFLAGS} -o ${.TARGET}.tmp ${OBJS} ns8390.o
d86 1
a86 1
	${LD} ${LDFLAGS} -o ${.TARGET}.tmp ${OBJS} 3c509.o
@


1.17
log
@Fixed bogus dependency on `beforedepend'.  File targets should never
depend on phony targets or they would always be out of date.
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.16 1998/03/07 10:48:13 eivind Exp $
d6 1
@


1.16
log
@Make this handle -j<large>, and avoid .depend pointing at /usr/include.
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.15 1998/02/15 21:38:18 eivind Exp $
d91 1
a91 1
3c509.o makerom ns8390.o start2.ro:	beforedepend
@


1.15
log
@Make bootblock building independent of /usr/include if relative
includes are available.
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.14 1997/10/07 06:40:16 bde Exp $
a33 1

d41 1
a41 1
CLEANFILES+=	machine netboot.com
a47 6
.if exists(${.CURDIR}/../../../../include)
CFLAGS+= -nostdinc
CFLAGS+= -I${.OBJDIR} -I${.CURDIR}/../../../
CFLAGS+= -I${.CURDIR}/../../../../include
.endif

d88 4
a91 6
pre-compile:
.if !exists(${.OBJDIR}/machine)
	ln -s ${.CURDIR}/../../include ${.OBJDIR}/machine
.endif

all:	pre-compile ${PROG}
@


1.14
log
@Fixed spammed Id.
Spammed in:	rev.1.5 (long ago)
@
text
@d1 1
a1 1
#	$Id$
d34 1
d42 1
a42 1
CLEANFILES+=	netboot.com
d49 6
d95 6
@


1.13
log
@Changes to support full make parallelism (-j<n>) in the world
target.
Reviewed by:	<many different folks>
Submitted by:	Nickolay N. Dudorov" <nnd@@nnd.itfs.nsk.su>
@
text
@d1 1
a1 1
#	Makefile,v 1.4 1994/12/31 17:16:49 jkh Exp
@


1.12
log
@Update netboot manual page.
Submitted by:	Luigi Rizzo <luigi@@iet.unipi.it>
@
text
@d75 5
a79 4
	${LD} ${LDFLAGS} -o netboot.com ${OBJS} ns8390.o
	strip netboot.com
	size netboot.com
	dd ibs=32 skip=1 if=netboot.com of=${.TARGET}
d82 5
a86 4
	${LD} ${LDFLAGS} -o netboot.com ${OBJS} 3c509.o
	strip netboot.com
	size netboot.com
	dd ibs=32 skip=1 if=netboot.com of=${.TARGET}
@


1.11
log
@Bring in some improved bootp support for netboot submitted by Luigi:
      - TFTP is not needed any longer.
Add some other improvements:
      - swapsize is now detected if no value was specified.
      - resvport is used by default
      - merged code for setting/showing mount options for root/swap.
Submitted by:   Luigi Rizzo <luigi@@labinfo.iet.unipi.it>
@
text
@d45 1
a45 1
NOMAN=
@


1.10
log
@Add ${CFLAGS} to makerom command line.  Note: don't add ${LDFLAGS} here,
it has a bunch of extra stuff defined above.

While I'm here, change "$(CFLAGS)" to "${CFLAGS}" to make all the rules
uniform.
@
text
@a38 1
#NS8390=		-DINCLUDE_WD -DWD_DEFAULT_MEM=0xD0000
@


1.9
log
@Improvementss to netboot
Initial but not yet functional PCI support.

Reviewed by:	phk
Submitted by:	Luigi Rizzo <luigi@@labinfo.iet.unipi.it>
@
text
@d58 1
a58 1
	${CC} $(CFLAGS) $(NS8390) -o ${.TARGET} -c $<
d61 1
a61 1
	${CC} -o ${.TARGET} -DROMSIZE=${ROMSIZE} ${.CURDIR}/makerom.c
@


1.9.2.1
log
@Merge 1.10.
@
text
@d58 1
a58 1
	${CC} ${CFLAGS} $(NS8390) -o ${.TARGET} -c $<
d61 1
a61 1
	${CC} ${CFLAGS} -o ${.TARGET} -DROMSIZE=${ROMSIZE} ${.CURDIR}/makerom.c
@


1.9.2.2
log
@Merge from current: improved bootp support for netboot.
Submitted by:	Luigi Rizzo <luigi@@labinfo.iet.unipi.it>
@
text
@d39 1
@


1.9.2.3
log
@MFC: Add the netboot manual page.
@
text
@d45 1
a45 1
MAN8=	netboot.8
@


1.9.2.4
log
@MFC: parallelization changes.
@
text
@d75 4
a78 5
	${LD} ${LDFLAGS} -o ${.TARGET}.tmp ${OBJS} ns8390.o
	strip ${.TARGET}.tmp
	size ${.TARGET}.tmp
	dd ibs=32 skip=1 if=${.TARGET}.tmp of=${.TARGET}
	rm -f ${.TARGET}.tmp
d81 4
a84 5
	${LD} ${LDFLAGS} -o ${.TARGET}.tmp ${OBJS} 3c509.o
	strip ${.TARGET}.tmp
	size ${.TARGET}.tmp
	dd ibs=32 skip=1 if=${.TARGET}.tmp of=${.TARGET}
	rm -f ${.TARGET}.tmp
@


1.8
log
@Add -fno-strength-reduce to neutralize possible bad effect of -O2
specified directly
@
text
@d22 6
d34 8
a41 5
CFLAGS=         -O2 -fno-strength-reduce \
		-DNFS -DROMSIZE=${ROMSIZE} -DRELOC=${RELOCADDR} -DASK_BOOT
NS8390=		-DINCLUDE_WD -DWD_DEFAULT_MEM=0xD0000
NS8390+=	-DINCLUDE_NE -DNE_BASE=0x320
NS8390+=	-DINCLUDE_3COM -D_3COM_BASE=0x300
@


1.7
log
@Break netboot into device specific versions.
nb8390.[cr]om for NS8390 boards (if_ed driver)
nb3c509.[cr]om for 3c509 boards (if_ep driver)

Submitted by:	Serge Babkin (babkin@@hq.icb.chel.su)  [3c509 support]
@
text
@d28 2
a29 1
CFLAGS=		-O2 -DNFS -DROMSIZE=${ROMSIZE} -DRELOC=${RELOCADDR} -DASK_BOOT
@


1.7.4.1
log
@MFC: Add the netboot manual page.
@
text
@d36 1
a36 1
MAN8=	netboot.8
@


1.6
log
@Fix dependencies for netboot.rom.  ${OBJS} isn't valid when the
dependencies are checked - it is set much later in bsd.prog.mk.

Add a comment about broken dependencies on options.
@
text
@d5 1
a5 1
# Options:
a6 1
#	-DSMALL_ROM	- Compile for 8K ROMS
d9 2
a13 1
#	-DINCLUDE_3C509 - Include 3c509 support
d22 1
a22 1
PROG=	netboot.com
d24 1
a24 1
SRCS=	start2.S main.c misc.c ether.c bootmenu.c rpc.c
d29 5
a33 7
CFLAGS+=	-DINCLUDE_WD -DWD_DEFAULT_MEM=0xD0000
CFLAGS+=	-DINCLUDE_NE -DNE_BASE=0x320
CFLAGS+=	-DINCLUDE_3COM -D_3COM_BASE=0x300
CFLAGS+=	-DINCLUDE_3C509
CLEANFILES+=	netboot.com.nohdr netboot.com.strip
CLEANFILES+=	netboot.rom.nohdr netboot.rom.strip netboot.rom
CLEANFILES+=	makerom start2.ro
d47 3
d53 2
a54 5
netboot.rom:	makerom start2.ro ${SRCS:N*.h:R:S/$/.o/g}
	${LD} ${LDFLAGS} -o ${.TARGET} ${OBJS:S/start2.o/start2.ro/}

netboot.rom.strip:	netboot.rom
	cp -p netboot.rom ${.TARGET}
a56 3

netboot.rom.nohdr:	netboot.rom.strip
	dd ibs=32 skip=1 if=netboot.rom.strip of=${.TARGET}
d59 2
a60 2
netboot.com.strip:	netboot.com
	cp -p netboot.com ${.TARGET}
d63 1
d65 11
a75 4
netboot.com.nohdr:	netboot.com.strip
	dd ibs=32 skip=1 if=netboot.com.strip of=${.TARGET}

all:	netboot.com.nohdr netboot.rom.nohdr
a76 5
install:
	install ${COPY} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE}\
		netboot.com.nohdr ${DESTDIR}${BINDIR}/netboot.com
	install ${COPY} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE}\
		netboot.rom.nohdr ${DESTDIR}${BINDIR}/netboot.rom
@


1.5
log
@Diskless boot support for 3C509.
I'm not exactly sure why all the inb/outw stuff got added to netboot.h
and I'd be happy if someone like Martin or Bruce could take a look at it!
Submitted by:	"Serge A. Babkin" <babkin@@hq.icb.chel.su>
@
text
@d18 2
d52 1
a52 1
netboot.rom:	makerom start2.ro ${OBJS}
@


1.4
log
@Really provide support for 3COM cards now.
Submitted by:	wpaul
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.3 1994/11/17 12:16:01 jkh Exp $
d12 2
a13 1
#       -DINCLUDE_3COM  - Include 3c503 support
d26 1
a26 1
CFLAGS=		-O2 -DNFS -DROMSIZE=${ROMSIZE} -DRELOC=${RELOCADDR}
d30 1
@


1.3
log
@Many fixes from Bill Paul:

  Smack the netboot program around so that it will allow the user to
  specify mount options.  [So that you can boot from a privileged port]

  Change the default boot image name in netboot to /kernel, then strip
  the leading slash when actually going out to get the NFS file handle.

  Added support for 3Com 3c503 cards. Also added another command to
  the (trans) that allows you to switch the 3Com's on-board transceiver
  on and off. (ether.c, ether.h, bootmenu.c)

  Modified the Makefile to support new compile-time options for 3c503
  cards:

  -DINCLUDE_3COM                Include support for 3c503
  -D_3COM_BASE=0x300            Define 3c503 base i/o address (if not
                                specified, 0x300 is the default)
  -D_3COM_USE_AUI               Disable the 3c503's transceiver by
                                default (without this flag the transceiver
                                is on by default)
@
text
@d1 1
a1 1
#	$Id: Makefile,v 1.2 1994/10/28 22:13:22 phk Exp $
d26 2
a27 2
#CFLAGS+=	-DINCLUDE_WD -DWD_DEFAULT_MEM=0xD0000
#CFLAGS+=	-DINCLUDE_NE -DNE_BASE=0x320
@


1.2
log
@A new Makefile, which is more our kind of makefile.
Based on Martins makefile, made by Rod, briefly tested by me
@
text
@d1 1
a1 1
#	$Id$
d12 2
d15 1
d26 1
a26 1
CFLAGS+=	-DINCLUDE_WD -DWD_DEFAULT_MEM=0xD0000
d28 1
@


1.1
log
@Netboot TNG.  I have seen this compile, I don't know if it works.
I have put it here, because I belive we could share some code among the
various kinds of boot-code, whenever we get the time to look at it.

Submitted by:	Martin Renters
@
text
@d1 2
d15 18
a34 39
#CFLAGS=	-O2 -DNFS -DINCLUDE_WD -DINCLUDE_NE -DROMSIZE=$(ROMSIZE) \
#	-DRELOC=$(RELOCADDR) -DNE_BASE=0x320 -DWD_DEFAULT_MEM=0xD0000
CFLAGS=	-O2 -DNFS -DINCLUDE_WD -DROMSIZE=$(ROMSIZE) \
	-DRELOC=$(RELOCADDR) -DNE_BASE=0x320 -DWD_DEFAULT_MEM=0xD0000

HDRS=netboot.h
COBJS=main.o misc.o ether.o bootmenu.o rpc.o
SSRCS=start2.S
SOBJS=start2.o

.SUFFIXES:	.c .S .s .o

all:	netboot.com netboot.rom

makerom:	makerom.c
	cc -o makerom -DROMSIZE=$(ROMSIZE) makerom.c

netboot.com:	$(COBJS) $(SSRCS)
	cc -c $(CFLAGS) $(SSRCS)
	ld -e _start -T $(RELOCADDR) -N $(SOBJS) $(COBJS)
	strip a.out
	size a.out
	dd ibs=32 skip=1 <a.out >netboot.com

netboot.rom:	$(COBJS) $(SSRCS) makerom
	cc -c $(CFLAGS) -DBOOTROM $(SSRCS)
	ld -e _start -T $(RELOCADDR) -N $(SOBJS) $(COBJS)
	strip a.out
	size a.out
	dd ibs=32 skip=1 <a.out >netboot.rom
	./makerom netboot.rom

test:	netboot.com
	mount -t pcfs /dev/fd0a /msdos
	cp netboot.com /msdos/netboot.com
	cp netboot.rom /msdos/netboot.rom
	umount /msdos
clean:
	rm -f $(COBJS) $(SOBJS) *.s netboot.com netboot.rom a.out makerom
d36 27
a62 2
.c.o:	Makefile $(HDRS)
	cc $(CFLAGS) -c $<
d64 1
a64 2
.c.s:	Makefile $(HDRS)
	cc $(CFLAGS) -S $<
d66 5
d72 1
@
