Home | History | Annotate | only in /src/distrib/i386/floppies/common
History log of /src/distrib/i386/floppies/common
RevisionDateAuthorComments
 1.23 10-Feb-2011  jym Reinstate INSTALL kernel for embedded ramdisk installs.

Reasons being:
- INSTALL is GENERIC with an embedded ramdisk, and as such, can benefit from
features included within.
- INSTALL_FLOPPY has its own config(5) file, and is tailored for "small"
floppy images; it misses features/drivers that could be needed to boot
in a decent environment for recent x86 machines (like ACPI)
- makes it closer to floppies distrib available for amd64

While here, comment out INSTALL_FLOPPY and bootfloppy-big image build. NetBSD
does not use the 3.6MiB image for El Torito cdroms anymore.

Remove the FLOPPYMAX limit; i386 needs 4 floppies now. Modify boot.cfg and
release/contents to reflect reality.

See http://mail-index.netbsd.org/port-i386/2011/02/08/msg002307.html

No comments, no objections.
 1.22 04-Nov-2008  dbj branches: 1.22.4;
avoid full path to boot.cfg file when building amd64 boot floppy
share code with i386
 1.21 26-Sep-2008  tsutsui branches: 1.21.2;
Put boot.cfg for bootfloppy into ustarfs without path
so that bootloader can load it properly.
 1.20 30-Apr-2008  ad Put a boot menu on the amd64+i386 boot floppies. Not used yet because
the ustar loader seems to have the menu code if'd out.
 1.19 02-Jun-2006  hubertf branches: 1.19.20; 1.19.22;
Prepare creation of boot CDs:

* Move files in distrib/i386:

floppies/instkernel/Makefile -> instkernel/Makefile
floppies/ramdisk-big/Makefile -> ramdisks/ramdisk-big/Makefile
floppies/ramdisk-big/disktab.preinstall -> ramdisks/ramdisk-big/disktab.preinstall
floppies/ramdisk-big/list -> ramdisks/ramdisk-big/list
floppies/ramdisk-big/list.inet6 -> ramdisks/ramdisk-big/list.inet6
floppies/ramdisk-rescuetiny/Makefile -> ramdisks/ramdisk-rescuetiny/Makefile
floppies/ramdisk-rescuetiny/list -> ramdisks/ramdisk-rescuetiny/list
floppies/ramdisk-small/Makefile -> ramdisks/ramdisk-small/Makefile
floppies/ramdisk-small/list -> ramdisks/ramdisk-small/list
floppies/ramdisk-tiny/Makefile -> ramdisks/ramdisk-tiny/Makefile
floppies/ramdisk-tiny/list -> ramdisks/ramdisk-tiny/list
floppies/common/Makefile.ramdisk -> ramdisks/common/Makefile.ramdisk
floppies/common/dot.profile -> ramdisks/common/dot.profile
floppies/common/list.ramdisk -> ramdisks/common/list.ramdisk
floppies/common/termcap.mini -> ramdisks/common/termcap.mini

* Adjust paths
 1.18 18-Dec-2003  lukem Pad all floppy images to the floppy size.
Requested by Jason Thorpe in [port-i386/23785]
 1.17 08-Oct-2003  lukem Overhaul MBR handling (part 1):

<sys/bootblock.h>:
* Added definitions for the Master Boot Record (MBR) used by
a variety of systems (primarily i386), including the format
of the BIOS Parameter Block (BPB).
This information was cribbed from a variety of sources
including <sys/disklabel_mbr.h> which this is a superset of.

As part of this, some data structure elements and #defines
were renamed to be more "namespace friendly" and consistent
with other bootblocks and MBR documentation.
Update all uses of the old names to the new names.

<sys/disklabel_mbr.h>:
* Deprecated in favor of <sys/bootblock.h> (the latter is more
"host tool" friendly).

amd64 & i386:
* Renamed /usr/mdec/bootxx_dosfs to /usr/mdec/bootxx_msdos, to
be consistent with the naming convention of the msdosfs tools.

* Removed /usr/mdec/bootxx_ufs, as it's equivalent to bootxx_ffsv1
and it's confusing to have two functionally equivalent bootblocks,
especially given that "ufs" has multiple meanings (it could be
a synonym for "ffs", or the group of ffs/lfs/ext2fs file systems).

* Rework pbr.S (the first sector of bootxx_*):
+ Ensure that BPB (bytes 11..89) and the partition table
(bytes 446..509) do not contain code.
+ Add support for booting from FAT partitions if BOOT_FROM_FAT
is defined. (Only set for bootxx_msdos).
+ Remove "dummy" partition 3; if people want to installboot(8)
these to the start of the disk they can use fdisk(8) to
create a real MBR partition table...
+ Compile with TERSE_ERROR so it fits because of the above.
Whilst this is less user friendly, I feel it's important
to have a valid partition table and BPB in the MBR/PBR.

* Renamed /usr/mdec/biosboot to /usr/mdec/boot, to be consistent
with other platforms.

* Enable SUPPORT_DOSFS in /usr/mdec/boot (stage2), so that
we can boot off FAT partitions.

* Crank version of /usr/mdec/boot to 3.1, and fix some of the other
entries in the version file.

installboot(8) (i386):
* Read the existing MBR of the filesystem and retain the BIOS
Parameter Block (BPB) in bytes 11..89 and the MBR partition
table in bytes 446..509. (Previously installboot(8) would
trash those two sections of the MBR.)

mbrlabel(8):
* Use sys/lib/libkern/xlat_mbr_fstype.c instead of homegrown code
to map the MBR partition type to the NetBSD disklabel type.


Test built "make release" for i386, and new bootblocks verified to work
(even off FAT!).
 1.16 26-Jul-2003  dsl Use ${TOOL_INSTALLBOOT} - it does work on ustarfs filesytems.
Pass correct option to installboot for bootfloppy-com (serial bootfloppy).
 1.15 25-Jul-2003  dsl Switch boot floppies to 'new' i386 bootcode.
 1.14 16-Oct-2002  lukem Default FLOPPYMAX to 1 for i386 floppies, so the build will fail if an
image accidentally grows past 1 floppy and we didn't know about it.
 1.13 14-Oct-2002  lukem Merge kernel-ramdisk & kernel-rescue into instkernel, now that
../../common/Makefile.mdset supports building multiple copies of the
same kernel (as long as they're to separate filenames).
Now there's no need to set FLOPPYKERNDIR, as it now defaults to instkernel.
 1.12 12-May-2002  lukem always set FLOPPYMETAFILE if FLOPPYSIZE!=2880
 1.11 04-May-2002  lukem - add support for [-s suffix] to buildfloppies.sh (defaults to "",
rather than the previous ".fs").
- add support for (optional) FLOPPYSUFFIX in Makefile.tarfloppy, and
use appropriately
- remove (now unnecessary) custom release targets in alpha/instkernel/*
 1.10 02-May-2002  lukem yet another distrib overhaul:
- move guts of distrib/Makefile.inc to distrib/common/Makefile.distrib
(fixes problem caused by implicit include of ../Makefile.inc in certain
submake conditions triggered by makefiles not yet in tree)
- removed mkdir of ${RELEASEDIR}/*; rely upon "snap_pre" target of
etc/Makefile to create all the release directories
- renamed RELINSTALL to RELEASE_INSTALL
- renamed FLOPPYINSTDIR to FLOPPY_RELEASEDIR
- renamed MDSETDIR to MDSET_RELEASEDIR
- removed ITARGET
- move release target from top level to appropriate subdirectory
- ensure release target has correct depends
- replace miniroot's IMAGE_MD_POST with common/Makefile.image IMAGEPOSTBUILD
- Makefile.image: add realall: ${IMAGE}
 1.9 26-Apr-2002  lukem replace _SRC_TOP_ with NETBSDSRCDIR, since the latter is the "public" version
 1.8 16-Apr-2002  lukem Migrate MI-shareable stuff to distrib/common/Makefile.tarfloppy.
 1.7 16-Apr-2002  lukem - Convert to using distrib/common/buildfloppies.sh, which can build both
single and multi-volume floppies in better fashion that the crufty
shell commands in the various Makefiles.
- Move fdset* -> bootfloppy*, as that's more consistent
 1.6 11-Apr-2002  lukem use ${RELINSTALL} instead of cp -p
 1.5 11-Apr-2002  lukem Yet Another Cleanup:
- factor more stuff into common/Makefile.*
- use NDWO makefile layout
- don't always rebuild bootfloppy-* and fdset-* stuff. (mmm, dependencies)
- add .WAIT sync in top level Makefile
 1.4 10-Apr-2002  mycroft We need bsd.sys.mk to get ${STRIP} when USETOOLS is not set.
 1.3 26-Feb-2002  lukem minor whitespace cleanup
 1.2 26-Feb-2002  lukem add check_RELEASEDIR to targets that require RELEASEDIR to be set
 1.1 03-Feb-2002  lukem Major overhaul, to enable unprivileged (cross) building, removing the
requirement to build as root on a system with vnconfig.


Use ${KERNSRCDIR} and ${_SRC_TOP_} where appropriate

Remove now-obsolete:
list2sh.awk runlist.sh bootfloppy-common/list

Bootfloppy-*/Makefile: don't need to set DISKTYPE or BLOCK8K any more

Rename bootfloppy-common/Makefile.inc to common/Makefile.bootfloppy
and fdset-common/Makefile.inc to common/Makefile.fdset
This uses makefs instead of vnconfig and disklabel, thus removing the
need for root privileges to build these floppies..

Add common/Makefile.ramdisk, to simplify ramdisk-*/Makefile.
Uses shared ${_SRC_TOP_}/distrib/common/Makefile.crunch and
${_SRC_TOP_}/distrib/common/Makefile.image to even further simply things.

Migrate ramdisk-*/dot.profile to a shared common/dot.profile, which
detects whether it's an install or rescue profile based on the existance
of /sysinst. Remove /dev generation code as init(8) now does that for us.

Migrate common parts of */list to a shared common/list.ramdisk.
Convert ramdisk-*/list to new format used by distrib/common/parselist.awk
Don't bother running pwd_mkdb now that libhack's getpwent parses
/etc/master.passwd instead of /etc/passwd.

Migrate ramdisk-*/mtree.conf to a shared common/mtree.conf, which is now a
new full-path-style specfile.

Remove ramdisk-*/ramdiskbin.conf as it's now automatically generated
from ramdisk-*/list by parselist.awk.

Migrate ramdisk-*/termcap.mini to a shared common/termcap.mini.

Remove unused ramdisk-{small,tiny}/disktab.preinstall.

Use .for loops in kernel-*/Makefile to simply defining mostly-duplicated
targets.

ramdisk-*/Makefile: convert to using common/Makefile.ramdisk

Remove unused ramdisk-*/dot.hdprofile.
 1.19.22.1 18-May-2008  yamt sync with head.
 1.19.20.3 05-Oct-2008  mjf Sync with HEAD.
 1.19.20.2 28-Sep-2008  mjf Sync with HEAD.
 1.19.20.1 02-Jun-2008  mjf Sync with HEAD.
 1.21.2.1 15-Nov-2008  snj Pull up following revision(s) (requested by tsutsui in ticket #60):
distrib/amd64/floppies/common/Makefile.bootfloppy: revision 1.10
distrib/i386/floppies/common/Makefile.bootfloppy: revision 1.22
distrib/common/Makefile.tarfloppy: revision 1.14
avoid full path to boot.cfg file when building amd64 boot floppy
share code with i386
 1.22.4.1 17-Feb-2011  bouyer Sync with HEAD
 1.7 16-Apr-2002  lukem - Convert to using distrib/common/buildfloppies.sh, which can build both
single and multi-volume floppies in better fashion that the crufty
shell commands in the various Makefiles.
- Move fdset* -> bootfloppy*, as that's more consistent
 1.6 11-Apr-2002  lukem use ${RELINSTALL} instead of cp -p
 1.5 11-Apr-2002  lukem Yet Another Cleanup:
- factor more stuff into common/Makefile.*
- use NDWO makefile layout
- don't always rebuild bootfloppy-* and fdset-* stuff. (mmm, dependencies)
- add .WAIT sync in top level Makefile
 1.4 10-Apr-2002  mycroft We need bsd.sys.mk to get ${STRIP} when USETOOLS is not set.
 1.3 26-Feb-2002  lukem minor whitespace cleanup
 1.2 26-Feb-2002  lukem add check_RELEASEDIR to targets that require RELEASEDIR to be set
 1.1 03-Feb-2002  lukem Major overhaul, to enable unprivileged (cross) building, removing the
requirement to build as root on a system with vnconfig.


Use ${KERNSRCDIR} and ${_SRC_TOP_} where appropriate

Remove now-obsolete:
list2sh.awk runlist.sh bootfloppy-common/list

Bootfloppy-*/Makefile: don't need to set DISKTYPE or BLOCK8K any more

Rename bootfloppy-common/Makefile.inc to common/Makefile.bootfloppy
and fdset-common/Makefile.inc to common/Makefile.fdset
This uses makefs instead of vnconfig and disklabel, thus removing the
need for root privileges to build these floppies..

Add common/Makefile.ramdisk, to simplify ramdisk-*/Makefile.
Uses shared ${_SRC_TOP_}/distrib/common/Makefile.crunch and
${_SRC_TOP_}/distrib/common/Makefile.image to even further simply things.

Migrate ramdisk-*/dot.profile to a shared common/dot.profile, which
detects whether it's an install or rescue profile based on the existance
of /sysinst. Remove /dev generation code as init(8) now does that for us.

Migrate common parts of */list to a shared common/list.ramdisk.
Convert ramdisk-*/list to new format used by distrib/common/parselist.awk
Don't bother running pwd_mkdb now that libhack's getpwent parses
/etc/master.passwd instead of /etc/passwd.

Migrate ramdisk-*/mtree.conf to a shared common/mtree.conf, which is now a
new full-path-style specfile.

Remove ramdisk-*/ramdiskbin.conf as it's now automatically generated
from ramdisk-*/list by parselist.awk.

Migrate ramdisk-*/termcap.mini to a shared common/termcap.mini.

Remove unused ramdisk-{small,tiny}/disktab.preinstall.

Use .for loops in kernel-*/Makefile to simply defining mostly-duplicated
targets.

ramdisk-*/Makefile: convert to using common/Makefile.ramdisk

Remove unused ramdisk-*/dot.hdprofile.
 1.3 11-Apr-2002  lukem remove unused cruft;
- Chuck Silvers pointed out that the nocluster goop set a now-unused variable
- we now use distrib/common/Makefile.mdset
 1.2 11-Apr-2002  lukem tweak
 1.1 11-Apr-2002  lukem Yet Another Cleanup:
- factor more stuff into common/Makefile.*
- use NDWO makefile layout
- don't always rebuild bootfloppy-* and fdset-* stuff. (mmm, dependencies)
- add .WAIT sync in top level Makefile
 1.24 02-Jun-2006  hubertf Prepare creation of boot CDs:

* Move files in distrib/i386:

floppies/instkernel/Makefile -> instkernel/Makefile
floppies/ramdisk-big/Makefile -> ramdisks/ramdisk-big/Makefile
floppies/ramdisk-big/disktab.preinstall -> ramdisks/ramdisk-big/disktab.preinstall
floppies/ramdisk-big/list -> ramdisks/ramdisk-big/list
floppies/ramdisk-big/list.inet6 -> ramdisks/ramdisk-big/list.inet6
floppies/ramdisk-rescuetiny/Makefile -> ramdisks/ramdisk-rescuetiny/Makefile
floppies/ramdisk-rescuetiny/list -> ramdisks/ramdisk-rescuetiny/list
floppies/ramdisk-small/Makefile -> ramdisks/ramdisk-small/Makefile
floppies/ramdisk-small/list -> ramdisks/ramdisk-small/list
floppies/ramdisk-tiny/Makefile -> ramdisks/ramdisk-tiny/Makefile
floppies/ramdisk-tiny/list -> ramdisks/ramdisk-tiny/list
floppies/common/Makefile.ramdisk -> ramdisks/common/Makefile.ramdisk
floppies/common/dot.profile -> ramdisks/common/dot.profile
floppies/common/list.ramdisk -> ramdisks/common/list.ramdisk
floppies/common/termcap.mini -> ramdisks/common/termcap.mini

* Adjust paths
 1.23 10-Sep-2005  dsl Generate a cross-reference map file for the crunched binary.
 1.22 18-Apr-2004  dsl Add French, German and Polish sysinstmsgs to all ramdisks that include sysinst
expect those where at least one of the language variants isn't built,
and those that are known not to have enough space (i386 ramdisk-tiny).
Files added to list.sysinst, list.sysinst.en is used when these files
cannot be added.
This might hit a size limit on another build - but I have no (sane) way of
testing it.
 1.21 08-Oct-2003  lukem branches: 1.21.2;
Overhaul MBR handling (part 1):

<sys/bootblock.h>:
* Added definitions for the Master Boot Record (MBR) used by
a variety of systems (primarily i386), including the format
of the BIOS Parameter Block (BPB).
This information was cribbed from a variety of sources
including <sys/disklabel_mbr.h> which this is a superset of.

As part of this, some data structure elements and #defines
were renamed to be more "namespace friendly" and consistent
with other bootblocks and MBR documentation.
Update all uses of the old names to the new names.

<sys/disklabel_mbr.h>:
* Deprecated in favor of <sys/bootblock.h> (the latter is more
"host tool" friendly).

amd64 & i386:
* Renamed /usr/mdec/bootxx_dosfs to /usr/mdec/bootxx_msdos, to
be consistent with the naming convention of the msdosfs tools.

* Removed /usr/mdec/bootxx_ufs, as it's equivalent to bootxx_ffsv1
and it's confusing to have two functionally equivalent bootblocks,
especially given that "ufs" has multiple meanings (it could be
a synonym for "ffs", or the group of ffs/lfs/ext2fs file systems).

* Rework pbr.S (the first sector of bootxx_*):
+ Ensure that BPB (bytes 11..89) and the partition table
(bytes 446..509) do not contain code.
+ Add support for booting from FAT partitions if BOOT_FROM_FAT
is defined. (Only set for bootxx_msdos).
+ Remove "dummy" partition 3; if people want to installboot(8)
these to the start of the disk they can use fdisk(8) to
create a real MBR partition table...
+ Compile with TERSE_ERROR so it fits because of the above.
Whilst this is less user friendly, I feel it's important
to have a valid partition table and BPB in the MBR/PBR.

* Renamed /usr/mdec/biosboot to /usr/mdec/boot, to be consistent
with other platforms.

* Enable SUPPORT_DOSFS in /usr/mdec/boot (stage2), so that
we can boot off FAT partitions.

* Crank version of /usr/mdec/boot to 3.1, and fix some of the other
entries in the version file.

installboot(8) (i386):
* Read the existing MBR of the filesystem and retain the BIOS
Parameter Block (BPB) in bytes 11..89 and the MBR partition
table in bytes 446..509. (Previously installboot(8) would
trash those two sections of the MBR.)

mbrlabel(8):
* Use sys/lib/libkern/xlat_mbr_fstype.c instead of homegrown code
to map the MBR partition type to the NetBSD disklabel type.


Test built "make release" for i386, and new bootblocks verified to work
(even off FAT!).
 1.20 05-Jun-2003  dsl Change i386 sysinst to use my new boot code.
Update lists for ramdisks to include the required files.
NB /usr/sbin/installboot is not used by sysinst and is only in ramdisk-big.
Increase the sizes of the ramdisks, there is plenty of space in all the
boot floppies except rescue-tiny (2k) and boot-tiny (32k).
 1.19 02-May-2002  lukem yet another distrib overhaul:
- move guts of distrib/Makefile.inc to distrib/common/Makefile.distrib
(fixes problem caused by implicit include of ../Makefile.inc in certain
submake conditions triggered by makefiles not yet in tree)
- removed mkdir of ${RELEASEDIR}/*; rely upon "snap_pre" target of
etc/Makefile to create all the release directories
- renamed RELINSTALL to RELEASE_INSTALL
- renamed FLOPPYINSTDIR to FLOPPY_RELEASEDIR
- renamed MDSETDIR to MDSET_RELEASEDIR
- removed ITARGET
- move release target from top level to appropriate subdirectory
- ensure release target has correct depends
- replace miniroot's IMAGE_MD_POST with common/Makefile.image IMAGEPOSTBUILD
- Makefile.image: add realall: ${IMAGE}
 1.18 26-Apr-2002  lukem replace _SRC_TOP_ with NETBSDSRCDIR, since the latter is the "public" version
 1.17 11-Apr-2002  lukem Yet Another Cleanup:
- factor more stuff into common/Makefile.*
- use NDWO makefile layout
- don't always rebuild bootfloppy-* and fdset-* stuff. (mmm, dependencies)
- add .WAIT sync in top level Makefile
 1.16 06-Apr-2002  tsutsui Set DBG=-Os for libhack.
 1.15 03-Apr-2002  groo Reduce free inode count by one so ramdisk-big builds.
 1.14 01-Apr-2002  lukem ensure all sysinst-using makefs generated images have at least 15 inodes free,
and be consistent how MAKEFS_FLAGS is defined.
 1.13 28-Mar-2002  lukem - Be consistent how libhack is used: If extra HACKOBJS (e.g., gethost.o) are
required, define them before pulling in libhack/Makefile.inc so that the
dependencies work correctly.
- Other minor cleanups
 1.12 28-Mar-2002  lukem cosmetic reorg
 1.11 25-Mar-2002  lukem Disable libhack's gethost.o (replacement gethostby{name,addr}()) by default,
as they only support reading /etc/hosts, and its the "least useful" of
the libhack routines. Add gethost.o back to Really Small media which
appears to need the space savings.
 1.10 14-Mar-2002  lukem parselist.awk
- improve comments
- provide a general purpose variable replacement; replace contents of ${FOO}
with ENVIRON["FOO"].
- deprecate @MACHINE@ and @MACHINE_ARCH@ in favour of using ${MACHINE}
and ${MACHINE_ARCH} instead
- add errx() function; like err(), but doesn't print the line number
- invoke this script with various variables defined via PARSELISTENV

*/Makefile*
- use PARSELISTENV instead of POPULATEENV, and add variables like DESTDIR
- other minor tweaks

*/list*
- replace @MACHINE@ with ${MACHINE}
 1.9 07-Mar-2002  lukem use parselist.awk's newly added MTREE arg rather than having an
mtree.conf fragment for one file
 1.8 06-Mar-2002  lukem cosmetic tweak
 1.7 06-Mar-2002  lukem replace ${_SRC_TOP_}/distrib with ${DISTRIBDIR}
 1.6 04-Mar-2002  lukem cosmetic sort
 1.5 25-Feb-2002  lukem explain why gethost.o is disabled
 1.4 08-Feb-2002  lukem - set ${TOP} to ${.CURDIR}/.., and use as appropriate
- use ${DISTRIBDIR} as appropriate
- migrate most of mtree.conf to ${DISTRIBDIR}/common/mtree.common,
leaving /.profile in mtree.conf
- remove MAKEDEV_DEVS support; replaced with MAKEDEVTARGETS support in
${DISTRIBDIR}/common/Makefile.makedev
 1.3 06-Feb-2002  lukem If MAKEDEV_DEVS is defined, run etc.i386/MAKEDEV through MAKEDEV.wrapper and
makedev2spec.awk to generate another mtree specfile for use when building
the image, and don't copy dev/MAKEDEV to the target image. This is primarily
for the tiny images which might not have enough memory for an mfs /dev.
Otherwise (MAKEDEV_DEVS not defined), continue to copy dev/MAKEDEV.
 1.2 05-Feb-2002  lukem add some more IMAGEDEPENDS
 1.1 03-Feb-2002  lukem Major overhaul, to enable unprivileged (cross) building, removing the
requirement to build as root on a system with vnconfig.


Use ${KERNSRCDIR} and ${_SRC_TOP_} where appropriate

Remove now-obsolete:
list2sh.awk runlist.sh bootfloppy-common/list

Bootfloppy-*/Makefile: don't need to set DISKTYPE or BLOCK8K any more

Rename bootfloppy-common/Makefile.inc to common/Makefile.bootfloppy
and fdset-common/Makefile.inc to common/Makefile.fdset
This uses makefs instead of vnconfig and disklabel, thus removing the
need for root privileges to build these floppies..

Add common/Makefile.ramdisk, to simplify ramdisk-*/Makefile.
Uses shared ${_SRC_TOP_}/distrib/common/Makefile.crunch and
${_SRC_TOP_}/distrib/common/Makefile.image to even further simply things.

Migrate ramdisk-*/dot.profile to a shared common/dot.profile, which
detects whether it's an install or rescue profile based on the existance
of /sysinst. Remove /dev generation code as init(8) now does that for us.

Migrate common parts of */list to a shared common/list.ramdisk.
Convert ramdisk-*/list to new format used by distrib/common/parselist.awk
Don't bother running pwd_mkdb now that libhack's getpwent parses
/etc/master.passwd instead of /etc/passwd.

Migrate ramdisk-*/mtree.conf to a shared common/mtree.conf, which is now a
new full-path-style specfile.

Remove ramdisk-*/ramdiskbin.conf as it's now automatically generated
from ramdisk-*/list by parselist.awk.

Migrate ramdisk-*/termcap.mini to a shared common/termcap.mini.

Remove unused ramdisk-{small,tiny}/disktab.preinstall.

Use .for loops in kernel-*/Makefile to simply defining mostly-duplicated
targets.

ramdisk-*/Makefile: convert to using common/Makefile.ramdisk

Remove unused ramdisk-*/dot.hdprofile.
 1.21.2.1 21-Apr-2004  jmc Pullup rev 1.22 (requested by dsl in ticket #168)

Add French, German and Polish sysinstmsgs to all ramdisks that include sysinst
except those where at least one of the language variants isn't built,
and those that are known not to have enough space (i386 ramdisk-tiny).
Files added to list.sysinst, list.sysinst.en is used when these files
cannot be added.
 1.4 22-Apr-2019  maya Express more confidence in our ability to boot on hardware with ACPI
enabled and don't warn our users that it might not and already suggest
workarounds.

The ability to disable ACPI and SMP is still there, by dropping to
the boot prompt.
 1.3 10-Feb-2011  jym branches: 1.3.46;
Reinstate INSTALL kernel for embedded ramdisk installs.

Reasons being:
- INSTALL is GENERIC with an embedded ramdisk, and as such, can benefit from
features included within.
- INSTALL_FLOPPY has its own config(5) file, and is tailored for "small"
floppy images; it misses features/drivers that could be needed to boot
in a decent environment for recent x86 machines (like ACPI)
- makes it closer to floppies distrib available for amd64

While here, comment out INSTALL_FLOPPY and bootfloppy-big image build. NetBSD
does not use the 3.6MiB image for El Torito cdroms anymore.

Remove the FLOPPYMAX limit; i386 needs 4 floppies now. Modify boot.cfg and
release/contents to reflect reality.

See http://mail-index.netbsd.org/port-i386/2011/02/08/msg002307.html

No comments, no objections.
 1.2 08-Mar-2009  dholland branches: 1.2.2;
fix typo.
 1.1 30-Apr-2008  ad branches: 1.1.4; 1.1.6; 1.1.8; 1.1.10;
Put a boot menu on the amd64+i386 boot floppies. Not used yet because
the ustar loader seems to have the menu code if'd out.
 1.1.10.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.1.8.1 12-Mar-2009  snj Pull up following revision(s) (requested by dholland in ticket #557):
distrib/i386/floppies/common/boot.cfg: revision 1.2
fix typo.
 1.1.6.3 05-Oct-2008  mjf Sync with HEAD.
 1.1.6.2 02-Jun-2008  mjf Sync with HEAD.
 1.1.6.1 30-Apr-2008  mjf file boot.cfg was added on branch mjf-devfs2 on 2008-06-02 13:21:14 +0000
 1.1.4.2 18-May-2008  yamt sync with head.
 1.1.4.1 30-Apr-2008  yamt file boot.cfg was added on branch yamt-pf42 on 2008-05-18 12:29:35 +0000
 1.2.2.1 17-Feb-2011  bouyer Sync with HEAD
 1.3.46.1 10-Jun-2019  christos Sync with HEAD
 1.6 02-Jun-2006  hubertf Prepare creation of boot CDs:

* Move files in distrib/i386:

floppies/instkernel/Makefile -> instkernel/Makefile
floppies/ramdisk-big/Makefile -> ramdisks/ramdisk-big/Makefile
floppies/ramdisk-big/disktab.preinstall -> ramdisks/ramdisk-big/disktab.preinstall
floppies/ramdisk-big/list -> ramdisks/ramdisk-big/list
floppies/ramdisk-big/list.inet6 -> ramdisks/ramdisk-big/list.inet6
floppies/ramdisk-rescuetiny/Makefile -> ramdisks/ramdisk-rescuetiny/Makefile
floppies/ramdisk-rescuetiny/list -> ramdisks/ramdisk-rescuetiny/list
floppies/ramdisk-small/Makefile -> ramdisks/ramdisk-small/Makefile
floppies/ramdisk-small/list -> ramdisks/ramdisk-small/list
floppies/ramdisk-tiny/Makefile -> ramdisks/ramdisk-tiny/Makefile
floppies/ramdisk-tiny/list -> ramdisks/ramdisk-tiny/list
floppies/common/Makefile.ramdisk -> ramdisks/common/Makefile.ramdisk
floppies/common/dot.profile -> ramdisks/common/dot.profile
floppies/common/list.ramdisk -> ramdisks/common/list.ramdisk
floppies/common/termcap.mini -> ramdisks/common/termcap.mini

* Adjust paths
 1.5 10-Sep-2005  dsl Add the dmesg() program to all the i386 ramdisk images and remove the
shell function implemented dmesg using 'cat /kern/msgbuf'.
This means we don't need kernfs.
 1.4 07-Dec-2003  dsl branches: 1.4.6;
Don't set baud rate when setting 'sane' stty settings, that way we use
the baud rate set by the bootloader.
Fixes PR port-i386/18358
 1.3 26-Jul-2003  salo netbsd.org->NetBSD.org
 1.2 24-Jun-2002  lukem Add wsvt25 termcap entry, and use it if BOOTMODEL=big. Sysinst now looks
nice in colour. From Grant Beattie <grant@netbsd.org>, with changes by me.
 1.1 03-Feb-2002  lukem branches: 1.1.2;
Major overhaul, to enable unprivileged (cross) building, removing the
requirement to build as root on a system with vnconfig.


Use ${KERNSRCDIR} and ${_SRC_TOP_} where appropriate

Remove now-obsolete:
list2sh.awk runlist.sh bootfloppy-common/list

Bootfloppy-*/Makefile: don't need to set DISKTYPE or BLOCK8K any more

Rename bootfloppy-common/Makefile.inc to common/Makefile.bootfloppy
and fdset-common/Makefile.inc to common/Makefile.fdset
This uses makefs instead of vnconfig and disklabel, thus removing the
need for root privileges to build these floppies..

Add common/Makefile.ramdisk, to simplify ramdisk-*/Makefile.
Uses shared ${_SRC_TOP_}/distrib/common/Makefile.crunch and
${_SRC_TOP_}/distrib/common/Makefile.image to even further simply things.

Migrate ramdisk-*/dot.profile to a shared common/dot.profile, which
detects whether it's an install or rescue profile based on the existance
of /sysinst. Remove /dev generation code as init(8) now does that for us.

Migrate common parts of */list to a shared common/list.ramdisk.
Convert ramdisk-*/list to new format used by distrib/common/parselist.awk
Don't bother running pwd_mkdb now that libhack's getpwent parses
/etc/master.passwd instead of /etc/passwd.

Migrate ramdisk-*/mtree.conf to a shared common/mtree.conf, which is now a
new full-path-style specfile.

Remove ramdisk-*/ramdiskbin.conf as it's now automatically generated
from ramdisk-*/list by parselist.awk.

Migrate ramdisk-*/termcap.mini to a shared common/termcap.mini.

Remove unused ramdisk-{small,tiny}/disktab.preinstall.

Use .for loops in kernel-*/Makefile to simply defining mostly-duplicated
targets.

ramdisk-*/Makefile: convert to using common/Makefile.ramdisk

Remove unused ramdisk-*/dot.hdprofile.
 1.1.2.1 09-Aug-2002  lukem Pull up revision 1.2 (requested by lukem):
Add wsvt25 termcap entry, and use it if BOOTMODEL=big. Sysinst now looks
nice in colour. From Grant Beattie <grant@netbsd.org>, with changes by me.
 1.4.6.1 10-Nov-2008  snj Apply patch (requested by bouyer in ticket #1975):
Make i386 INSTALL kernels fit on a single 2.88MB floppy, by removing
KERNFS/mount_kernfs(8), pcppi(4), and sysbeep(4) and adding dmesg(8)
to INSTALL kernels and ramdisks.
 1.2 08-Feb-2002  lukem - set ${TOP} to ${.CURDIR}/.., and use as appropriate
- use ${DISTRIBDIR} as appropriate
- migrate most of mtree.conf to ${DISTRIBDIR}/common/mtree.common,
leaving /.profile in mtree.conf
- remove MAKEDEV_DEVS support; replaced with MAKEDEVTARGETS support in
${DISTRIBDIR}/common/Makefile.makedev
 1.1 06-Feb-2002  lukem If MAKEDEV_DEVS is defined, run etc.i386/MAKEDEV through MAKEDEV.wrapper and
makedev2spec.awk to generate another mtree specfile for use when building
the image, and don't copy dev/MAKEDEV to the target image. This is primarily
for the tiny images which might not have enough memory for an mfs /dev.
Otherwise (MAKEDEV_DEVS not defined), continue to copy dev/MAKEDEV.
 1.12 02-Jun-2006  hubertf Prepare creation of boot CDs:

* Move files in distrib/i386:

floppies/instkernel/Makefile -> instkernel/Makefile
floppies/ramdisk-big/Makefile -> ramdisks/ramdisk-big/Makefile
floppies/ramdisk-big/disktab.preinstall -> ramdisks/ramdisk-big/disktab.preinstall
floppies/ramdisk-big/list -> ramdisks/ramdisk-big/list
floppies/ramdisk-big/list.inet6 -> ramdisks/ramdisk-big/list.inet6
floppies/ramdisk-rescuetiny/Makefile -> ramdisks/ramdisk-rescuetiny/Makefile
floppies/ramdisk-rescuetiny/list -> ramdisks/ramdisk-rescuetiny/list
floppies/ramdisk-small/Makefile -> ramdisks/ramdisk-small/Makefile
floppies/ramdisk-small/list -> ramdisks/ramdisk-small/list
floppies/ramdisk-tiny/Makefile -> ramdisks/ramdisk-tiny/Makefile
floppies/ramdisk-tiny/list -> ramdisks/ramdisk-tiny/list
floppies/common/Makefile.ramdisk -> ramdisks/common/Makefile.ramdisk
floppies/common/dot.profile -> ramdisks/common/dot.profile
floppies/common/list.ramdisk -> ramdisks/common/list.ramdisk
floppies/common/termcap.mini -> ramdisks/common/termcap.mini

* Adjust paths
 1.11 30-Nov-2003  dsl Adds FFSv2 boot code to install floppies
 1.10 08-Oct-2003  lukem Overhaul MBR handling (part 1):

<sys/bootblock.h>:
* Added definitions for the Master Boot Record (MBR) used by
a variety of systems (primarily i386), including the format
of the BIOS Parameter Block (BPB).
This information was cribbed from a variety of sources
including <sys/disklabel_mbr.h> which this is a superset of.

As part of this, some data structure elements and #defines
were renamed to be more "namespace friendly" and consistent
with other bootblocks and MBR documentation.
Update all uses of the old names to the new names.

<sys/disklabel_mbr.h>:
* Deprecated in favor of <sys/bootblock.h> (the latter is more
"host tool" friendly).

amd64 & i386:
* Renamed /usr/mdec/bootxx_dosfs to /usr/mdec/bootxx_msdos, to
be consistent with the naming convention of the msdosfs tools.

* Removed /usr/mdec/bootxx_ufs, as it's equivalent to bootxx_ffsv1
and it's confusing to have two functionally equivalent bootblocks,
especially given that "ufs" has multiple meanings (it could be
a synonym for "ffs", or the group of ffs/lfs/ext2fs file systems).

* Rework pbr.S (the first sector of bootxx_*):
+ Ensure that BPB (bytes 11..89) and the partition table
(bytes 446..509) do not contain code.
+ Add support for booting from FAT partitions if BOOT_FROM_FAT
is defined. (Only set for bootxx_msdos).
+ Remove "dummy" partition 3; if people want to installboot(8)
these to the start of the disk they can use fdisk(8) to
create a real MBR partition table...
+ Compile with TERSE_ERROR so it fits because of the above.
Whilst this is less user friendly, I feel it's important
to have a valid partition table and BPB in the MBR/PBR.

* Renamed /usr/mdec/biosboot to /usr/mdec/boot, to be consistent
with other platforms.

* Enable SUPPORT_DOSFS in /usr/mdec/boot (stage2), so that
we can boot off FAT partitions.

* Crank version of /usr/mdec/boot to 3.1, and fix some of the other
entries in the version file.

installboot(8) (i386):
* Read the existing MBR of the filesystem and retain the BIOS
Parameter Block (BPB) in bytes 11..89 and the MBR partition
table in bytes 446..509. (Previously installboot(8) would
trash those two sections of the MBR.)

mbrlabel(8):
* Use sys/lib/libkern/xlat_mbr_fstype.c instead of homegrown code
to map the MBR partition type to the NetBSD disklabel type.


Test built "make release" for i386, and new bootblocks verified to work
(even off FAT!).
 1.9 05-Jun-2003  dsl Change i386 sysinst to use my new boot code.
Update lists for ramdisks to include the required files.
NB /usr/sbin/installboot is not used by sysinst and is only in ramdisk-big.
Increase the sizes of the ramdisks, there is plenty of space in all the
boot floppies except rescue-tiny (2k) and boot-tiny (32k).
 1.8 29-May-2002  lukem use 444 instead of 644 for /.profile
 1.7 26-Apr-2002  lukem branches: 1.7.2;
replace _SRC_TOP_ with NETBSDSRCDIR, since the latter is the "public" version
 1.6 09-Apr-2002  lukem - add specific special entry for sys/arch/${MACHINE}/stand/installboot
for ports that don't yet use the MI usr.sbin/installboot
- remove now-unnecessary srcdir for sys/arch/${MACHINE}/stand
 1.5 14-Mar-2002  lukem parselist.awk
- improve comments
- provide a general purpose variable replacement; replace contents of ${FOO}
with ENVIRON["FOO"].
- deprecate @MACHINE@ and @MACHINE_ARCH@ in favour of using ${MACHINE}
and ${MACHINE_ARCH} instead
- add errx() function; like err(), but doesn't print the line number
- invoke this script with various variables defined via PARSELISTENV

*/Makefile*
- use PARSELISTENV instead of POPULATEENV, and add variables like DESTDIR
- other minor tweaks

*/list*
- replace @MACHINE@ with ${MACHINE}
 1.4 07-Mar-2002  lukem use parselist.awk's newly added MTREE arg rather than having an
mtree.conf fragment for one file
 1.3 08-Feb-2002  lukem - migrate a bunch of the common list stuff to common/list.ramdisk
- use ${DISTRIBDIR} as appropriate
- use ${DISTRIBDIR}/common/list.sysinst if USE_SYSINST is defined,
removing any replicated list info
- define USE_SYSINST in the sysinst-using ramdisks
- replace MAKEDEV_DEVS with MAKEDEVTARGETS
 1.2 06-Feb-2002  lukem If MAKEDEV_DEVS is defined, run etc.i386/MAKEDEV through MAKEDEV.wrapper and
makedev2spec.awk to generate another mtree specfile for use when building
the image, and don't copy dev/MAKEDEV to the target image. This is primarily
for the tiny images which might not have enough memory for an mfs /dev.
Otherwise (MAKEDEV_DEVS not defined), continue to copy dev/MAKEDEV.
 1.1 03-Feb-2002  lukem Major overhaul, to enable unprivileged (cross) building, removing the
requirement to build as root on a system with vnconfig.


Use ${KERNSRCDIR} and ${_SRC_TOP_} where appropriate

Remove now-obsolete:
list2sh.awk runlist.sh bootfloppy-common/list

Bootfloppy-*/Makefile: don't need to set DISKTYPE or BLOCK8K any more

Rename bootfloppy-common/Makefile.inc to common/Makefile.bootfloppy
and fdset-common/Makefile.inc to common/Makefile.fdset
This uses makefs instead of vnconfig and disklabel, thus removing the
need for root privileges to build these floppies..

Add common/Makefile.ramdisk, to simplify ramdisk-*/Makefile.
Uses shared ${_SRC_TOP_}/distrib/common/Makefile.crunch and
${_SRC_TOP_}/distrib/common/Makefile.image to even further simply things.

Migrate ramdisk-*/dot.profile to a shared common/dot.profile, which
detects whether it's an install or rescue profile based on the existance
of /sysinst. Remove /dev generation code as init(8) now does that for us.

Migrate common parts of */list to a shared common/list.ramdisk.
Convert ramdisk-*/list to new format used by distrib/common/parselist.awk
Don't bother running pwd_mkdb now that libhack's getpwent parses
/etc/master.passwd instead of /etc/passwd.

Migrate ramdisk-*/mtree.conf to a shared common/mtree.conf, which is now a
new full-path-style specfile.

Remove ramdisk-*/ramdiskbin.conf as it's now automatically generated
from ramdisk-*/list by parselist.awk.

Migrate ramdisk-*/termcap.mini to a shared common/termcap.mini.

Remove unused ramdisk-{small,tiny}/disktab.preinstall.

Use .for loops in kernel-*/Makefile to simply defining mostly-duplicated
targets.

ramdisk-*/Makefile: convert to using common/Makefile.ramdisk

Remove unused ramdisk-*/dot.hdprofile.
 1.7.2.1 29-May-2002  lukem Pull up revision 1.8 (requested by lukem):
use 444 instead of 644 for /.profile
 1.4 07-Mar-2002  lukem use parselist.awk's newly added MTREE arg rather than having an
mtree.conf fragment for one file
 1.3 08-Feb-2002  lukem - set ${TOP} to ${.CURDIR}/.., and use as appropriate
- use ${DISTRIBDIR} as appropriate
- migrate most of mtree.conf to ${DISTRIBDIR}/common/mtree.common,
leaving /.profile in mtree.conf
- remove MAKEDEV_DEVS support; replaced with MAKEDEVTARGETS support in
${DISTRIBDIR}/common/Makefile.makedev
 1.2 06-Feb-2002  lukem no need to list etc/passwd anymore
 1.1 03-Feb-2002  lukem Major overhaul, to enable unprivileged (cross) building, removing the
requirement to build as root on a system with vnconfig.


Use ${KERNSRCDIR} and ${_SRC_TOP_} where appropriate

Remove now-obsolete:
list2sh.awk runlist.sh bootfloppy-common/list

Bootfloppy-*/Makefile: don't need to set DISKTYPE or BLOCK8K any more

Rename bootfloppy-common/Makefile.inc to common/Makefile.bootfloppy
and fdset-common/Makefile.inc to common/Makefile.fdset
This uses makefs instead of vnconfig and disklabel, thus removing the
need for root privileges to build these floppies..

Add common/Makefile.ramdisk, to simplify ramdisk-*/Makefile.
Uses shared ${_SRC_TOP_}/distrib/common/Makefile.crunch and
${_SRC_TOP_}/distrib/common/Makefile.image to even further simply things.

Migrate ramdisk-*/dot.profile to a shared common/dot.profile, which
detects whether it's an install or rescue profile based on the existance
of /sysinst. Remove /dev generation code as init(8) now does that for us.

Migrate common parts of */list to a shared common/list.ramdisk.
Convert ramdisk-*/list to new format used by distrib/common/parselist.awk
Don't bother running pwd_mkdb now that libhack's getpwent parses
/etc/master.passwd instead of /etc/passwd.

Migrate ramdisk-*/mtree.conf to a shared common/mtree.conf, which is now a
new full-path-style specfile.

Remove ramdisk-*/ramdiskbin.conf as it's now automatically generated
from ramdisk-*/list by parselist.awk.

Migrate ramdisk-*/termcap.mini to a shared common/termcap.mini.

Remove unused ramdisk-{small,tiny}/disktab.preinstall.

Use .for loops in kernel-*/Makefile to simply defining mostly-duplicated
targets.

ramdisk-*/Makefile: convert to using common/Makefile.ramdisk

Remove unused ramdisk-*/dot.hdprofile.
 1.2 11-Apr-2002  lukem remove unused cruft;
- Chuck Silvers pointed out that the nocluster goop set a now-unused variable
- we now use distrib/common/Makefile.mdset
 1.1 11-Apr-2002  lukem Yet Another Cleanup:
- factor more stuff into common/Makefile.*
- use NDWO makefile layout
- don't always rebuild bootfloppy-* and fdset-* stuff. (mmm, dependencies)
- add .WAIT sync in top level Makefile
 1.3 02-Jun-2006  hubertf Prepare creation of boot CDs:

* Move files in distrib/i386:

floppies/instkernel/Makefile -> instkernel/Makefile
floppies/ramdisk-big/Makefile -> ramdisks/ramdisk-big/Makefile
floppies/ramdisk-big/disktab.preinstall -> ramdisks/ramdisk-big/disktab.preinstall
floppies/ramdisk-big/list -> ramdisks/ramdisk-big/list
floppies/ramdisk-big/list.inet6 -> ramdisks/ramdisk-big/list.inet6
floppies/ramdisk-rescuetiny/Makefile -> ramdisks/ramdisk-rescuetiny/Makefile
floppies/ramdisk-rescuetiny/list -> ramdisks/ramdisk-rescuetiny/list
floppies/ramdisk-small/Makefile -> ramdisks/ramdisk-small/Makefile
floppies/ramdisk-small/list -> ramdisks/ramdisk-small/list
floppies/ramdisk-tiny/Makefile -> ramdisks/ramdisk-tiny/Makefile
floppies/ramdisk-tiny/list -> ramdisks/ramdisk-tiny/list
floppies/common/Makefile.ramdisk -> ramdisks/common/Makefile.ramdisk
floppies/common/dot.profile -> ramdisks/common/dot.profile
floppies/common/list.ramdisk -> ramdisks/common/list.ramdisk
floppies/common/termcap.mini -> ramdisks/common/termcap.mini

* Adjust paths
 1.2 24-Jun-2002  lukem Add wsvt25 termcap entry, and use it if BOOTMODEL=big. Sysinst now looks
nice in colour. From Grant Beattie <grant@netbsd.org>, with changes by me.
 1.1 03-Feb-2002  lukem branches: 1.1.2;
Major overhaul, to enable unprivileged (cross) building, removing the
requirement to build as root on a system with vnconfig.


Use ${KERNSRCDIR} and ${_SRC_TOP_} where appropriate

Remove now-obsolete:
list2sh.awk runlist.sh bootfloppy-common/list

Bootfloppy-*/Makefile: don't need to set DISKTYPE or BLOCK8K any more

Rename bootfloppy-common/Makefile.inc to common/Makefile.bootfloppy
and fdset-common/Makefile.inc to common/Makefile.fdset
This uses makefs instead of vnconfig and disklabel, thus removing the
need for root privileges to build these floppies..

Add common/Makefile.ramdisk, to simplify ramdisk-*/Makefile.
Uses shared ${_SRC_TOP_}/distrib/common/Makefile.crunch and
${_SRC_TOP_}/distrib/common/Makefile.image to even further simply things.

Migrate ramdisk-*/dot.profile to a shared common/dot.profile, which
detects whether it's an install or rescue profile based on the existance
of /sysinst. Remove /dev generation code as init(8) now does that for us.

Migrate common parts of */list to a shared common/list.ramdisk.
Convert ramdisk-*/list to new format used by distrib/common/parselist.awk
Don't bother running pwd_mkdb now that libhack's getpwent parses
/etc/master.passwd instead of /etc/passwd.

Migrate ramdisk-*/mtree.conf to a shared common/mtree.conf, which is now a
new full-path-style specfile.

Remove ramdisk-*/ramdiskbin.conf as it's now automatically generated
from ramdisk-*/list by parselist.awk.

Migrate ramdisk-*/termcap.mini to a shared common/termcap.mini.

Remove unused ramdisk-{small,tiny}/disktab.preinstall.

Use .for loops in kernel-*/Makefile to simply defining mostly-duplicated
targets.

ramdisk-*/Makefile: convert to using common/Makefile.ramdisk

Remove unused ramdisk-*/dot.hdprofile.
 1.1.2.1 09-Aug-2002  lukem Pull up revision 1.2 (requested by lukem):
Add wsvt25 termcap entry, and use it if BOOTMODEL=big. Sysinst now looks
nice in colour. From Grant Beattie <grant@netbsd.org>, with changes by me.

RSS XML Feed