Commit Graph

33 Commits

Author SHA1 Message Date
thorpej c0d66944db Make sure we override any optimization options specified by the
user; the boot blocks don't work when built with e.g. -mcpu=i486
(probably due to how branches are aligned in that case, causing
segment boundaries to be crossed).
2002-03-19 22:03:37 +00:00
thorpej 76ea45942b Cleanup of i386 bootloader building:
* Add separate directories for the individual netboot ROMs and
  always build them.
* Each bootloader Makefile explicitly specifies the start file
  and link address it wishes to use.
* genprom becomes a proper host program.
* Make sure all generated files get cleaned up.
* Set BINDIR in Makefile.inc
* Add compressed image support to pxeboot.
* Make pxeboot use the default serial console speed (9600).
2002-02-17 20:03:05 +00:00
thorpej 8bb2be2987 Add a PXE boot loader. PXE interface code is derived by code
written by Alfred Perlstein, Paul Saab, John Baldwin for FreeBSD.

Still needs some work, but this will load a kernel on a Soekris net4501.

Many thanks to Frank van der Linden and his simulator wizardry for
helping me debug the low-level startup code.
2002-02-16 03:37:39 +00:00
jmc 5ac54229c9 Don't make the symlinks on clean rules as well as obj rules. Breaks r/o source
trees that haven't gotten to the make obj recursion part of make build
otherwise.
2001-11-22 00:14:20 +00:00
tls 9b9300274d GCC 2.95 generates significantly larger code with -O2 than our old compiler did; this can cause the second-stage bootblock to exceed the number of blocks that fit in the list in the first-stage bootblock. I thought we used to explicitly set -Os in here; anyway, with this change, we do now! 2001-09-23 23:43:29 +00:00
tv ab11c169b5 objcopy -> ${OBJCOPY}; remove redundant definitions of OBJCOPY?= (it is
now in bsd.own.mk).
2001-09-22 03:34:17 +00:00
enami b605664b49 Include bsd.own.mk a bit earlier so that make cleandir works. 2001-08-18 12:53:58 +00:00
jdolecek c8f528ad5e switch to MI newvers_stand.sh version info generator 2000-07-12 21:05:35 +00:00
mycroft 295c3f303e Fix the symlink hack. 2000-01-23 16:44:18 +00:00
drochner 6211cd566c fix creation of DOS / ROM images from ELF executables: use "objcopy" 1999-07-08 14:32:28 +00:00
drochner 6959d736df make sure the ./machine link is created early enough for specific targets,
fixes PR port-i386/7553 by David Rankin <drankin@bohemians.lexington.ky.us>
1999-05-11 19:43:09 +00:00
christos a030d021a7 Use new loadfile.c 1999-04-28 09:13:51 +00:00
fvdl 35d517b9f1 Hack to make biosboot_ser work.
XXX The makefile structure in src/sys/arch/i386/stand is very bad.
1999-03-14 00:04:06 +00:00
tron 32e0182e15 $(OBJS) -> ${OBJS} 1999-03-13 20:58:25 +00:00
sommerfe fc47c0c742 Also build serial bootblocks by default, installing into
/usr/mdec/biosboot_ser.sym
Change Makefile.booters to not assume `version' file is in source directory.
1999-03-12 16:07:57 +00:00
tron 2fefe24803 Remove "lib" directory only during "make cleandir" so that ".depend"
doesn't get nuked during "make clean".
1999-02-07 18:25:54 +00:00
tron 08c7376961 Remove "lib" directory created during build process while doing
"make clean" or "make cleandir".
1999-02-07 13:39:36 +00:00
christos ad9c7a287c Remove exec.o, and make necessary changes for elf. 1999-01-30 17:43:10 +00:00
christos e25e5c88f9 Both booters need exec.o now. 1999-01-29 18:47:58 +00:00
drochner acea5c2e79 add dependency to get the version number right 1998-07-08 17:47:42 +00:00
cgd b3d285e625 add -nostdinc to CPPFLAGS, so that /usr/include won't be used 1998-03-27 01:32:53 +00:00
mycroft 03f75a79ff Nuke the override of libkern SRCS from orbit. 1998-02-22 07:19:02 +00:00
drochner 9219f22775 strchr.c disappeared from libkern, use index.c instead
(we can't control the libkern build as we want, but it works...)
1998-01-22 15:48:02 +00:00
hubertf 59b0f424db Prevent error if machine-symlink isn't already there (rm -> rm -f) 1997-10-18 21:46:27 +00:00
drochner 4de13c78d3 Use the "proginstall" rule from <bsd.prog.mk> to get the UPDATE
behaviour right.
1997-09-28 11:47:29 +00:00
drochner e153e51fa3 Make "genprom" work in objdir.
Minor cleanup to ease bootcode development at non-standard locations.
Closes PR port-i386/4013 by Luke Mewburn.
1997-08-20 16:53:30 +00:00
thorpej e31d380775 New welcome banner code, modeled after NetBSD/hp300's boot program
welcome banner code.  Includes additional build information, and it
generally nicer to look at.
1997-07-26 01:50:36 +00:00
drochner b401c3f024 Use include files from kernel source, not userland. Create a
"machine" link automatically for this.
1997-07-15 13:02:04 +00:00
drochner 7f15295bde Define _STANDALONE for standalone programs. 1997-06-26 19:03:32 +00:00
drochner a0d9d3bc54 Allow to boot from DOS if a XMS manager is installed.
XMS is recognized and used as temporary buffer for the kernel image.
The processor must still be in real mode at program start, so EMM386
or QEMM are not allowed. W*95 is OK.
Written by Martin Husemann (pr port-i386/3336).
Completely separated from other bootloaders for sanity.
1997-06-13 17:49:22 +00:00
drochner 1b787da26a Force inclusion of "diskbuf" into bootsectors.
This allows to build bootsectors containing netboot code
("make netboot.sym" in the netboot directory).
1997-06-13 13:12:29 +00:00
thorpej 6a2fc99857 STRIP -> STRIPFLAG 1997-04-17 07:27:46 +00:00
perry 2eb5a59f71 Initial import of new boot code, created by Matthias Drochner with a
little hacking by me. This isn't strictly identical to his 920312
release -- I've hacked it a bit -- but since we are taking over change
control it doesn't matter much.
1997-03-14 02:40:29 +00:00