Submitted by: jhb, ru
- Moved the creation of the ports distribution to release.7.
- Call MFS root floppy mfsroot.flp even on a small PC98 disk.
Submitted by: jhb
Reviewed by: ru, jhb
the != operator) only when needed.
This change allows me to check out the current version of release/
makefiles only (co -l) to /tmp/release, and use that directory to
build a release (supplying the correct WORLDDIR).
Without this, attempt to "make release" caused an endless fork bomb
while trying to evaluate FIXCRYPTO, and the only way I could get
away from this on a remote box was to "kill -INT 1", thanks to
tcsh(1) and its internal "kill" command.
The release.9 target is now responsible only for generation of MFS root
file systems, that are built for all architectures, even those that do
not provide a floppy installation option. The release.10 target is now
responsible for creation of a set of boot, MFS root, and fixit floppies,
and the NO_FLOPPIES variable now affects only this target.
Also, replaced the FIXIT_TARGET variable with a check of whether the
*FIXITSIZE variables are present for a given architecture, similar to
how this is done when generating boot floppies.
Discussed with: jhb
that causes the bootable ISO images to be created using the floppy
emulation (the old method) as opposed to the new "cdboot" method.
Only copy boot.flp to the 2nd CD-ROM if this variable is defined.
Reviewed by: murray
doing make readmes if /tmp/.skip_ports exists. This file is created
after a complete run, which avoids that we do the lengthy operation
again for a rerelease.
When NOPORTS or NOPORTREADMES are defined, we create the file prior
to starting the release.
used in the EXTSRCDIR case, for example, if one finds it useful
to symlink /usr/src to an actual source tree, and use /usr/src
as the EXTSRCDIR.
This has no effects on release builds not using external directories.
Reviewed by: ru
Approved by: scottl (re)
Also make sure bsdlabel(8) (along with the disklabel(8) compat
link) still appear on the fixit floppies of platforms that use
it natively (alpha, i386, and pc98).
Approved by: re (scottl)
bootable CDs can still be created if the iso.1 target is called
directly.
PR: misc/47191
Submitted by: Joost Bekkers <joost@bps.jodocus.org>
MFC after: 1 week
here interferenced with one in Makefile.inc1. Since we can't avoid
the jugglery in Makefile.inc1 (we want -m /usr/src/tools/build/mk
to come first, before any other -m specified on the command line),
avoid it here.
Reported by: imp
Do it so that systems without the -m option in disklabel(8),
e.g. 5.0-RELEASE, can still build current snapshots.
While here, drop the -s option from doFS.sh; we have not
been using the .size files for a long time.
I don't recall now, but for some reason I didn't think it was needed.
Also place the mdconfig right before the chroot call, to make it stand out
this needs to be done in the standard environment, as we've tried doing it
in the chroot environment before.
and/or breakages due to /etc/make.conf on the host. Move it after
make world and put it in an if-block so that we can include the
commands in the script even if we're not going to make the readmes.
o When building docproj, make sure we propagate the setting of the
FTP_PASSIVE_MODE environment variable. Not propagating the envvar
may cause fetch failures. This increases the number of cases for
which one does not have to prefetch the packages.
probably want to re-buildworld.
If we are not going to rebuild (make rerelease -DRELEASENOUPDATE
and the file ${CHROOTDIR}/tmp/.world_done exists), do not touch
${CHROOTDIR}/usr/src/sys/conf/newvers.sh, as the only effect that
is has is upsetting release.2. Hey, have you ever seen this
"touch: not found" during rerelease? :-)
These variables will be used by pkg_add, which installs mkisofs package
while MAKE_ISOS=YES. See src/release/${arch}/mkisoimages.sh if you doubt.
No objection heard from: current@FreeBSD.org
Suggested by: des, nectar (about *_PROXY variables)
so as to catch errors ASAP rather than later between the ports cvs checkout
and docs cvs checkout. If a distfile doesn't checksum OK, it is very
hard to restart the release with "make rerelease" as that target assumes
all the cvs checkout's happened OK, and if that is not the case the cvs
update that is attempted fails..
on the boot floppies to set the 'driver_floppy' variable in the loader so
that it ends up in the kernel environment and sysinstall will prompt for the
diskette. Booting from CD-ROM does not use this loader.rc file, so folks
booting from CD to do an install will not be prompted.
X-MFC after: as soon as I finish committing to current
Approved by: re (blanket)
generated during release builds.
For the most part, re@ was doing this manually before putting ISO images
on ftp-master, but not always. This should make naming more consistent
and descriptive.
Requested by: jason andrade <jason@dstc.edu.au>, hubs@
Approved by: re (rwatson)
MFC after: 1 month
more manageable.
- Add some helper variables (CVS_{SRC,DOC,PORTS}ARGS) to be used when
using CVS to checkout files. We stick release tags in these helper
variables if they are defined and then use only one cvs command instead
of two cvs commands with an .ifdef to choose between them.
- rm the old src/doc/ports directories as separate commands from the
CVS comands so that the rm commands don't need to be duplicated.
- Simplify the DOMINIMALDOCPORTS case by overriding RELEASEPORTSMODULE to
be ${MINIMALDOCPORTS} thus removing yet another nearly-duplicate cvs
command in an .ifdef.
- Add support for grabbing src/ and doc/ from external directories
specified via EXTSRCDIR and EXTDOCDIR instead of from CVS. The same
is not done for ports/ quite yet as the DOMINIMALDOCPORTS case is a
bit tricky.
The rerelease target scripts have not been changed to use the helper
variables yet, so there is still some room for improvement.
Submitted by: kuriyama (4)
o ia64: Set DOFS_SH to point to an alternate version.
o ia64: Lower BIGBOOTSIZE from 120M (LS-120) to ~5M.
o ia64: Set BIGBOOTLABEL to efi so that we can check for it
in the alternate doFS.sh script. If the label is not efi, we
can invoke the generic doFS.sh.
Strip ${RD}/mfsfd/stand/etc/defaults/rc.conf.
Don't copy loader.help to ${RD}/mfsfd/boot, it serves no useful purpose.
Removed the now no-op commands to copy ${RD}/trees/base/dev bits to
${RD}/mfsfd/dev, now that DEVFS is the default.
Removed UFS_ACL, PSEUDOFS, and COMPAT_FREEBSD4 options from the BOOTMFS
kernel.
Moved miibus network module to the drivers floppy.
isp(4) and mpt(4) now have corresponding modules, move them to the third
floppy as well.
Caution! With these changes, mfsroot.flp has only 11K left, and
kern.flp has even less -- 5K.
in no way final. A typical ia64 wart is that there are no boot blocks.
Instead, we need to create disks with EFI partitions if we want auto
boot to work. All this functionality is not present yet.
can fetch it from there instead of looking in the boot floppy's
directory.
- Add a NO_FLOPPIES variable that disables building of any boot floppies.
Tested on: alpha
is "EARLY", which is kind of an odd name, but I couldn't think of
anything better that fit the traditional 8.3 naming convention for
release documentation files.
o mount (and unmount) devfs in the chroot'd filesystem
o handle umounting devfs in case of a keyboard interrupt
o remove MAKEDEV from the fixit floppy so things fit again (mount_devfs was
added in a separate commit)
o explicitly remove mfsroot.gz and loader.conf when building the cd-rom area
as otherwice cp -Rp aborts when a previous run left identical files around
o increase the number of inodes on the drivers floppy; moving drivers from
the kernel there (to shrink it's size) caused things to overflow
o while we're increasing the driver's floppy inode config, separate out all
parameters from the boot floppy
Approved by: re
floppies.
kern-small.flp and mfsroot-small.flp are for old machines that don't
support 1.44MB floppy. These floppies don't have pci related devices.
kern.flp and mfsroot.flp are normal 1.44MB floppy images.
in seperate directories. This mostly affects RELENG_4 where
not doing so results in ${CHROOTDIR}/usr/src/release being
filled with object files, and "srelease" distribution having
them in.
PR: misc/43825
Prodded by: re (murray)
to use DOC_LANG to specify which languages the doc/ is built for.
Note: be aware that the DOC_LANG setting in /etc/make.conf will now
take the effect on "make release". (This is probably the desired
behavior anyway.)
PR: docs/42924
under way to move the remnants of the a.out toolchain to ports. As the
comment in src/Makefile said, this stuff is deprecated and one should not
expect this to remain beyond 4.0-REL. It has already lasted WAY beyond
that.
Notable exceptions:
gcc - I have not touched the a.out generation stuff there.
ldd/ldconfig - still have some code to interface with a.out rtld.
old as/ld/etc - I have not removed these yet, pending their move to ports.
some includes - necessary for ldd/ldconfig for now.
Tested on: i386 (extensively), alpha
release/${TARGET}/drivers.conf file which list drivers that have to
go into the third floppy.
Also shuffle i386/drivers.conf so that the floppies don't overflow
anymore. Anybody with real/better usage statistics is welcome to
shuffle it differently.
Reviewed by: ru
are no longer propagated to the chrooted environment, e.g. NOKERBEROS.
On the other hand, TMPDIR and MAKEOBJDIRPREFIX should no longer be.
Spotted by: Alexandr Listopad <laa@reis.zp.ua>
then download the distfiles for the ports needed to build the docs before
we enter the chroot environment. This is useful since often times releases
get in a funk trying to download distfiles in the chroot.
Approved by: re (murray, bmah)
MFC after: 5 days
different architectures may choose to use different default values
for CFLAGS, for example. (It was added in rev. 1.200 as a measure
to make boot images fit the floppies, and was never reverted.)
the second buildworld environment is fully isolated from parent's
environment variables.
Tested virtually on: snapshots.jp.FreeBSD.org
Approved by: arch@ (silently)
MFC after: 2 weeks
In fact, these variable are set as environment variables since we run
"make TARGET=xxx TARGET_ARCH=xxx"; TARGET and TARGET_ARCH are declared
in the command line arguments. However, if you are not make(1) guy,
it is hard to understand that TARGET/TARGET_ARCH are appropriately set
in a chroot environment (as environment variables).
Now, the only environment variable need to be set explicitly is 'PATH'.
If we set PATH in /mk script, we can make pristine sandbox for release
build (i.e., "env -i /usr/sbin/chroot ${CHROOT} /mk" will work).
Valuable comments about this issue from: ru
Tested on (virtually): snapshots.jp.FreeBSD.org
MFC after: 2 weeks
arch. This makes "make release TARGET_ARCH=foo" really work.
(I only tested with "make rerelease" before to save some time and did
not notice the problem.)
You need to set TARGET_ARCH and possibly TARGET, the same
way you normally do it for a cross build(7).
Renamed `distribworld' to a more natutal `distributeworld'.
Put pwd_mkdb(8) under ${INSTALLTMP}; for `distributeworld'.
that are to be run on the building host. (Currently, bin/sh
and usr.sbin/sysinstall use them.) Make sure we build them
in the correct environment, like we do it in the buildworld.
Do not install games and profiled libraries to the ${CHROOTDIR}
with the initial installworld.
Eliminate the need in the second installworld. For that, make sure
_everything_ is built in the "world" environment, using the right
tool chain.
Added SUBDIR_OVERRIDE helper stuff to Makefile.inc1. Split the
buildworld process into stages, and skip some stages when
SUBDIR_OVERRIDE is set (used to build crypto, krb4, and krb5
dists).
Added NO_MAKEDB_RUN knob to Makefile.inc1 to avoid running
makewhatis(1) at the end of installworld (used when making crypto,
krb4, and krb5 dists).
In release/scripts/doFS.sh, ensure that the correct boot blocks are
used.
Moved the creation of the "crypto" dist from release.5 to
release.2.
In release.3 and doMFSKERN, build kernels in the "world"
environment. KERNELS now means "additional" kernels, GENERIC is
always built.
Ensure we build crunched binaries in the "world" environment.
Obfuscate release/Makefile some more (WMAKEENV) to achieve this.
Inline createBOOTMFS target.
Use already built GENERIC kernel modules to augment mfsfd's
/stand/modules. GC doMODULES as such.
Assorted fixes:
Get rid of the "afterdistribute" target by moving the single use
of it from sys/Makefile to etc/Makefile's "distribute".
Makefile.inc1: apparently "etc" no longer needs to be last for
"distribute" to succeed.
gnu/usr.bin/perl/library/Makefile.inc: do not override the
"install" and "distribute" targets, do it the "canonical" way.
release/scripts/{man,cat}pages-make.sh: make sure Perl manpages and
catpages appear in the right dists. Note that because Perl does
not respect the MANBUILDCAT (and NOMAN), this results in a loss of
/usr/share/perl/man/cat* empty directories. This will be fixed
soon.
Turn MAKE_KERBEROS4 into a plain boolean variable (if it is set it
means "make KerberosIV"), as documented in the make.conf(5)
manpage. Most of the userland makefiles did not test it for "YES"
anyway.
XXX Should specialized kerberized libpam versions be included into
the krb4 and krb5 dists? (libpam.a would be incorrect anyway if
both krb4 and krb5 dists were choosen.)
Make sure "games" dist is made before "catpages", otherwise games
catpages settle in the wrong dist.
Fast build machine provided by: Igor Kucherenko <kivvy@sunbay.com>
For rerelease, run "make -DNOCLEAN world" instead of simple and
insufficient in some cases "make all install". This is especially
true for cross-arch "make release"s which we don't (yet) support.
since we have no ACPI feature in the installation kernel at this time.
Without having this, we'll see
ACPI no autoload failed -- no such file or directory
message at boot time, and it makes some confusion to the users. We can
backout this change if installation kernel has ACPI feature.
PR: 36911 (partly)
- don't make device files since we are in the DEVFS era.
(for the last resort, fixit.flp still has /dev/MAKEDEV.)
- increase FIXITINODE size to 10 times (40000).
After this change, we have 42kbytes of free space, and 38
of free inodes (confirmed with 5.0-CURRENT-20020327-JPSNAP).
Since 4-stable doesn't have DEVFS, we can't MFC this (except FIXITINODE).
/etc/defaults/pccard.conf. Assume for now that only
MACHINE_ARCH=="i386" wants to do PCCARD installs. We're still using
too much space, but this is a big help.
We ensure that 'ports.tgz' tarball should have ports/distfiles directory.
At first, ${CHROOTDIR}/usr/ports is empty (rm -rf ports), then extract
ports files from CVS repository. Then if RELEASEDISTFILES is defined,
${CHROOTDIR}/usr/ports/distfiles directory is created by cp(1). However,
if you don't specify RELEASEDISTFILES, there is no chance to create
${CHROOTDIR}/usr/ports/distfiles directory.
Submitted by: {ushi,tora}.jp.FreeBSD.org
MFC after: 5 days
DOCDISTFILES if defined. No impact should happen with this change.
DOCDISTFILES is introduced by rev. 1.541, to point the directory that
contains the distfiles for ports/textproc/docproj. It's good, but
we also build ports/sysutils/mkisofs during the release (if MAKE_ISOS
is defined). It is natural that cdrtools tarball is prefetched, then
copy it under ${CHROOTDIR}/usr/ports/distfiles.
As a result, DOCDISTFILES variable is somewhat abused for non-doc
tarballs; *DOC*DISTFILES is no longger appropriate name for that.
PR: 16843
PR: 34194
Submitted by: murray
MFC after: 6 days
are removed, because ports.tgz includes distfiles by accident.
However, removing files/directories is *not* mandatory. The only
requirement is "ports.tgz doesn't include distfiles/* but distfiles
directory itself". If this is correct, the right way is to set an
option to tar(1), not to include these files.
This commit is based on PR: 34194, but a little bit of modification
is made by me (original patch doesn't include 'distfiles' directory).
PR: 34194
Reviewed by: Adrian Steinmann <ast@marabu.ch> (PR submitter)
MFC after: 9 days
5.0-CURRENT-20020121-JPSNAP was failed to build since kern.flp has no
space. There is already a hack to kgzip loader, and it makes:
-r-xr-xr-x 1 root wheel 163840 Jan 21 07:40 loader*
-r-xr-xr-x 1 root wheel 90121 Jan 21 08:06 loader.kgz*
73719 bytes of free spaces to us.
doesn't get spammed by RELNOTESng files.
Previously, we built the RELNOTESng files "in place" and then
populated the media (e.g. floppy, cdrom, ftp) areas from the build
directories. However, the distributions got rolled after the
RELNOTESng build, and thus picked up the rendered RELNOTESng files.
Now, we install the RELNOTESng documents to R/stage/release.doc, then
clean out the original directories in src/release/doc. We use the
renditions in the staging area to populate the media areas.
PR: 33141
MFC after: 3 days
(plus re approval)
on CD's 1 and 2. Create a simple /boot/loader.conf on each CD that loads
/boot/mfsroot.gz as a mfs_root image. The mfsroot moved from /mfsroot.gz
to /boot/mfsroot.gz so that all of the boot stuff is in /boot. This allows
a full kernel to be used when installing from CD on all architectures
that support CD booting. Note that on x86, this requires using
/boot/cdboot as a no-emulation boot image instead of /floppies/boot.flp.
Alpha CD. This makes it easier to customize ISO's locally by being able
to replace either the mfsroot or the kernel w/o having to do both. It also
allows us to switch to using the full GENERIC kernel when booting from CD
on the Alpha and on x86 when using cdboot. We don't do this yet, however.
Tested on: x86, alpha
come from the installation document (of the release documentation)
not the readme. The installation document is the one that has the
content of the old FLOPPIES.TXT.
Pointy hat to: bmah
I guess I pooched the permissions on the scripts before committing them
since they're not executable and now it's too late to change (I think -
I suppose you could chmod the ,v files and it might inheirit but I don't
feel like asking the repomeisters to try that).
Noticed by: Dirk Froemberg <dirk@freebsd.org>
+ allows one to set _R so one can more easily make an iso after the fact,
in the directory `make release' was issued in
+ changes name from miniboot to miniinst since we make other bootable ISOs
also (and we might confuse someone)
Approved by: jkh
as part of the release if MAKE_ISOS is set. Will also build the
first CD with packages (in addition to the "minimal" CD) if CD_EXTRA_BITS
points to them. This probably need a bit more work to get fully useful,
but it at least covers the basics for now.
NO_SENDMAIL flag if set. The whole NO_FOO mechanism in /usr/src
is pretty bogus and needs to be re-examined in the context of a
larger argument about modularity, but that's something for another
time.
Submitted by: Peter Pentchev <roam@orbitel.bg>
one Makefile variable to control the building/installation of both
the DocProj documents and RELNOTESng.
Suggested by: obrien, dd
Tested by: John Hay <jhay@icomtek.csir.co.za>
files).
Another diff will be forthcoming to fold the functionality of
NORELNOTES into NODOC.
Tested by: John Hay <jhay@icomtek.csir.co.za>
Pointy hat to: bmah
images get TXT renderings only; CDROM and FTP areas get TXT and HTML.)
Remove the old *.TXT release documentation files, as they
have been subsumed into RELNOTESng. The new layout will greatly
facilitate their maintenence and help keep them internally consistent.
the need to also create the entire ports tree during a `make release'.
The main motivation behind this is that handling the ports tree still
takes a huge amount of time due to the large number of directories
involved, even on modern disks.
The solution is to establish a list of dependent ports that are
minimally required. This list needs to be manually maintained in case
the doc ports toolchain changes, and has thus been broken out into a
separate file Makefile.inc.docports. (release/Makefile has gotten
overly lengthy already anyway.)
Discussed with: bmah, nik
Reviewed by: bmah
/stand/etc on the mfsroot, and hence to /etc on the install target
disk for use during the install. It also links netconfig and services
into /etc on the mfsroot so that they are available to a fixit
shell.
Submitted by: iedowse
the commit logs - I just found the reason for the self-pointing symlink, as
documented in revision 1.517 by phk, who committed the change over a year
ago. Accordingly, put the feature back and drop all plans to MFC the previous
"fix".
asking what it's for and I can't answer since I can't see any conceivable
use for it. Unless someone corrects that impression, I'll also MFC this
change in a few days.
commands to build sysinstall manually during release.
- Get the sysinstall help files from /usr/src/usr.sbin/sysinstall/help
rather than ${.CURDIR}/sysinstall/help.
one-way hash functions for authentication purposes. There is no more
"set the libcrypt->libXXXcrypt" nightmare.
- Undo the libmd.so hack, use -D to hide the md5c.c internals.
- Remove the symlink hacks in release/Makefile
- the algorthm is set by set_crypt_format() as before. If this is
not called, it tries to heuristically figure out the hash format, and
if all else fails, it uses the optional auth.conf entry to chose the
overall default hash.
- Since source has non-hidden crypto in it there may be some issues with
having the source it in some countries, so preserve the "secure/*"
division. You can still build a des-free libcrypt library if you want
to badly enough. This should not be a problem in the US or exporting
from the US as freebsd.org had notified BXA some time ago. That makes
this stuff re-exportable by anyone.
- For consistancy, the default in absence of any other clues is md5. This
is to try and minimize POLA across buildworld where folk may suddenly
be activating des-crypt()-hash support. Since the des hash may not
always be present, it seemed sensible to make the stronger md5 algorithm
the default.
All things being equal, no functionality is lost.
Reviewed-by: jkh
(flame-proof suit on)
The distribute target is basicly the same as an install. For
perl, this means that miniperl is needed. Since miniperl is
only present in the object directory, we need to make sure
the path is set correctly. To do this, we have make release
use a new distribworld target that sets the path before doing
a make distribute.
overwriting $PATH, and find mknod $PATH instead of hardcoding /sbin so
that the copy of MAKEDEV on the fixit floppy is usable, since mknod and
expr live in /mnt2/stand when the fixit floppy is running.
Get rid of the sed invokation in release/Makefile that attempts to
delete the PATH setting stuff from MAKEDEV on the fixit floppy. This
hasn't worked since a long ago change to MAKEDEV caused the sed
expression to no longer match.
PR: misc/21241
mimics that of tcpdump in that for normal builds, sendmail will only be
built once. For 'make release', it is built once for the bin dist and
once for the crypto dist. This method also removes the need for two separate
Makefiles (which could become out of sync).
Suggested by: bde
Assisted by: kris
build process in too many cases. Adding mtree to bootstrap-tools
to solve this breaks the upgrade path because mtree needs a
libc that has strtofflags and fflagstostr.
kernel config file.
- Add WORLD_FLAGS and KERNEL_FLAGS so you can build world and kernel with
extra make options such as -jX to speed up release builds.
- When building kernels, allow their hints to tag along, and use this to
install hints onto the boot floppy. Since the boot floppy doesn't load
loader.4th, we have to change device.hints to strip comments and change
each line to an explicit set command.
IPv6 configuration is only done by rtsol. Does someone really
need manual configuration? :-)
You can specify IPv6 DNS server as well.
We have only one server ftp7.jp.freebsd.org that speaks IPv6
in this time. ftp7.jp speaks IPv4 as well and also listed as
Japan #7.
Approved by: jkh
- Small cleanups to kernel installs.
- Don't install kernel.config and loader.config on the boot floppy since
they haven't been used in quite some time.
src/release/{boot,fixit}_crunch.conf.
- Added machine specific fixit_crunch.conf for PC/AT and PC-98 to
src/release/$MACHINE.
- Use config file in src/release/$MACHINE if exist. If it does not exist,
use in src/release.
boot.flp and plain boot.flp.
- Clean up crunchgen related routine.
- Add PC-98 support.
TODO:
o Documentation
o Fix some messages for PC-98
o Decrease the size of fixit.flp to 1.2MB
o I18N (See: http://www.jp.FreeBSD.org/BootAsia/index.html)
No response from jkh
distfiles to build the docproj port during release. Prior to this, the
distfiles were copied froom ${DISTFILES}. However, if like me, you needed
to store the distfiles in some directory other than /usr/ports/distfiles,
for example /usr/docdistfiles, then when you overrode ${DISTFILES} it broke
the release build when it tried to build docproj port in the chroot'd
release area. To preserve backwards compatibility, DOCDISTFILES defaults
to the value of DISTFILES.
Ok'd by: jkh
the ports and doc trees. There is no change if we are not building a
release (i.e., we are not using a tag of the form RELENG_ver_RELEASE
--e.g., a RELENG_ver tag used to build a snapshot).
This should allow the ports and doc freezes during the release cycles
to be somewhat shorter, as commits to those (non-branched) trees can
resume as soon as the tags are laid down.
Reviewed by: nik
Approved by: jkh
Oh why did I select a first project that needed to touch release/Makefile..
The fact that my release-building Alpha panics on me does not help either :(
and concat these to the corresponding generic *.TXT living in ./texts
This is currently aimed at HARDWARE.TXT but works for things like RELNOTES.TXT
too.
Reviewed by: jkh
with kld etc just fine, but tracebacks would have less information and
nm /kernel wouldn't be so good).
- Just strip the kernel on the boot disk. This does not affect kld or
module loading, there are two symbol tables in a kernel. There is the
dynamic linking one (.dynsym+.strtab) with just global symbols and a user
symbol table (.symtab+.strtab) with all symbols. BTW; objdump lies and
hides the second one. There's a good half a meg or so that can be saved
from an average kernel by stripping it.
Kill duplicates for programs that have been in the boot crunched image
as well as on the fixit floppy (pwd, newfs, hostname, test). Our
space is really too valuable to have them around there twice. I doubt
pwd needs to be there at all since it's a builtin into sh(1) anyway
(oh, and the same applies to test(1) IIRC), but heck, leave them by
now.
Use the new `fixit' target in MAKEDEV to create the /dev nodes on
the floppy, instead of including the kitchensink...
Finally, tune the values used for creating the floppy. I currently
end up with
Filesystem 1K-blocks Used Avail Capacity iused ifree %iused
/dev/vnn0c 1363 1301 -47 104% 368 14 96%
...which is not quite ideal yet, but at least a working configuration
again.