Commit Graph

833 Commits

Author SHA1 Message Date
jhb
7d32bca156 Overhaul our boot floppy generation system so that it scales better and
requires minimal care and feeding for future releases.
- Consolidate multitude of floppy related constants down to a normal
  FLOPPY set for 1.44 floppies and on PC98 a SMALLFLOPPY set for 1.2
  floppies.  Also, cleanup the i386 arch section by not duplicating
  constants that are the same on both machine types (i386 and pc98).
- Update the ZIPNSPLIT macro to generate a file chunks that will actually
  fit onto 1.44 floppies formatted with UFS1.  Unfortunately, split(1)
  seems to be somewhat buggy, so the files generated are slightly larger
  than the argument passed to split.
- Split the release.10 target into 3 targers: floppies.1, floppies.2 and
  floppies.3 that are added to EXTRAS only if NOFLOPPIES is defined.
  floppies.1 builds the install floppies, floppies.2 builds the fixit
  floppy, and floppies.3 generates the md5 sums and READMEs for the
  floppies/ directory.
- Drop the by now largely obsolete and less useful boot.flp picture.  This
  was more useful when the mfsroot lived inside the kernel rather than
  being loaded from a separate file by the loader.
- Only build a single mfsroot containing no modules that is used for all
  installation methods.
- Use split-file.sh to split up a gzipped GENERIC kernel into however many
  floppies it takes for the boot kernel.  Currently, a stock 5.2 GENERIC
  kernel including WITNESS, INVARIANTS, DDB, and other assorted bloat fits
  onto 2 additional floppies besides the boot floppy with some room to
  spare.
- If SPLIT_MFSROOT is defined, the mfsroot.gz file is similar split into
  however many floppies are needed.  Currently it is not defined as the
  mfsroot.gz fits onto the current boot.flp with room to spare.
- Add a 'makeFloppySet' target which builds a floppy set for a file that
  was split using split-file.sh.
- Rename the doMFSKERN target to 'buildBootFloppy' as that more closely
  matches what it does now.  We no longer build a custom BOOTMFS kernel for
  each boot floppy.
- We no longer build a 2.88 boot.flp image to use with emulated CD booting.
  The non-emulated cdboot works for almost everyone who boots off of CD and
  if it doesn't work on a particular machine, the user can always boot from
  the 1.44 floppy images.
- We no longer build a driver floppy or stick kernel modules in the mfsroot
  since we now use a stock kernel when booting from floppy.
2004-01-26 19:58:38 +00:00
ru
69fd34608d - Run makewhatis(1) in etc/Makefile at the end of "install".
- Removed redundant and undocumented NO_MAKEDB_RUN knob.
2004-01-22 08:18:37 +00:00
ru
098ec0a40f Use the reinstallkernel.debug target, now that we have it. 2004-01-21 08:24:44 +00:00
matusita
67527434e2 Fix "5.x release on 4.x box" support.
It is required to check /etc/rc.d/ldconfig before use, because
${CHROOT} sandbox is sometimes 4.x world.  If /etc/rc.d/ldconfig
is not there, run ldconfig(8) directly.

Discussed with: imp, obrien, ru
2004-01-19 13:35:46 +00:00
ru
9260b63f07 Once upon a time we had both "crypto" and "krb5" distributions,
and rebuilt some bits with crypto but without Kerberos support
(most notably SSH) during "make release", to put them into the
"crypto" distribution.

Now that we don't ship the separate "krb5" distribution anymore
(it's now part of the "crypto" distribuion), don't waste time
recompiling SSH bits without crypto and without Kerberos support
in an attempt to put them in the "base" distribution -- it just
doesn't work as SSH always uses crypto code.

We avoid this by not rebuilding KPROGS from kerberos5/Makefile in
release/Makefile and adding "libpam" to SPROGS in secure/Makefile
to ensure it's still rebuilt without crypto support for the "base"
distribution.  (Disabling crypto (NOCRYPT) also disables building
of Kerberos-related PAM modules, and it's OK to depend on this.)

This should be a no-op change saving some "make release" time.
2004-01-17 19:22:36 +00:00
ru
59924af793 MFRELENG_5_2: Default the snapshot versioning to 5.2.
PR:		misc/61402
Submitted by:	Chris Knight
2004-01-17 18:25:43 +00:00
nyan
fcd08fd18b Add missing '\' in previous change. 2004-01-15 10:17:43 +00:00
obrien
d68207fc54 * if-like-constructs now use <TAB>body consistently.
* Long statements with '\' continuation now use <4 spaces>continuation
  consistently.
* wraps some long lines
* More consistent on how very simular repeated commands are wrapped.
2004-01-13 18:46:09 +00:00
nyan
20e731302f Use /etc/rc.d/ldconfig script rather than the ldconfig command directly.
Submitted by:	matusita
2004-01-12 08:37:32 +00:00
nyan
b486a2147d Run ldconfig in the chroot environment to find shared libraries in
/usr/local/lib.
2004-01-11 12:45:41 +00:00
obrien
f9e918ac23 Automatically generate the CHECKSUM.MD5 file for ISO's.
Approved by:	scottl
2003-12-01 10:46:45 +00:00
kuriyama
d4a2b22189 Generate minimal /etc/group file for mfsroot tree.
This fixes newfs failures at installation.

Reviewed by:	re (scottl)
2003-11-15 03:58:12 +00:00
kuriyama
652bd4f9b6 Fix ${LOCAL_PATCHES} (chdir was ignored). 2003-11-14 08:21:21 +00:00
ru
6f573248c3 Combining "all" and "install" in one invocation is a very bad idea as
conditional evaluation is done only once in this case, and this may
not account for the fact that some conditionals would be evaluated
differently if "all" has already been run, like is the case with the
loader.help existance check in sys/boot/alpha/common/Makefile.common,
beforeinstall target.  This should fix Alpha snapshot builds.
2003-10-31 13:15:07 +00:00
ru
08859b205f Correct the description of what the release.3 stage does nowadays. 2003-10-06 11:52:34 +00:00
ru
35b0a3b4a9 Make LOCAL_PATCHES accept multiple patch files, as its name suggests. 2003-09-21 06:33:14 +00:00
ru
7a29b63c00 For boot floppies, build a lightweight version of loader(8)
without Forth support.  Saves 28K of kern.flp and boot.flp
on i386.

Reviewed by:	jhb
2003-09-19 09:06:15 +00:00
obrien
1bb319c248 2nd part of making the name of the release running script overrideable. 2003-08-11 04:21:58 +00:00
obrien
c97c381db1 Make the name of the release running script overrideable. 2003-08-10 09:54:22 +00:00
ru
4bf1e96a1e Added the new knob MINIROOT that, when set, causes the creation
of the bootable UFS image, miniroot.ufs, fully identical to the
contents of the "bootonly" CD-ROM.  The image is made available
on FTP as miniroot/miniroot.ufs.gz, for resemblance with NetBSD.

This replaces the boot.flp image for sparc64, making the latter
as coming with NO_FLOPPIES.

Reviewed by:	jhb
Tested by:	hrs
2003-08-08 21:00:57 +00:00
ru
b7a534174e - Eliminate the "rm" command that was causing us trouble in rev. 1.799.
- Normalize doRELEASE to avoid seeing "`ftp.1' is up to date." warning
  when doing "make rerelease", and ftp.1 was already built.

Reviewed by:	jhb
2003-08-07 18:22:34 +00:00
ru
7da3489308 - Unbreak Alpha snapshots (we were still attempting to build a
no longer existing "fixit" crunched binary).

- Simplify the CRUNCH_TARGETS variable's initialization.

- Simplify the release.5 logic a bit by accounting for the fact
  that release/*_crunch.conf files were removed two years ago.
2003-08-06 08:09:40 +00:00
ache
4bddddaa7e Back out LC_ALL=C since tr here supposed to run under clean env -i
environment always.

Pointed by:     ru
2003-08-05 05:35:56 +00:00
ache
26ffc627d8 LANG->LC_ALL
Pointed by:     ru
2003-08-04 21:31:53 +00:00
ache
b7cd756bfc Prepend LANG=C to all tr 'a-z' 'A-Z' and vice versa.
Note: this is POSIX requirement, c-c ranges are portable only in POSIX locale
2003-08-04 15:47:43 +00:00
ru
65cd6f1252 - Removed vestiges of the IA64 boot floppy support.
- Fixed the bootable CD-ROM support for IA64.

Reviewed by:	marcel
Tested by:	marcel
2003-08-03 15:06:00 +00:00
ru
fa0cbfcd27 - Boot-only CD-ROM support (bootonly.iso).
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
2003-08-02 18:21:02 +00:00
ru
f87e8906d6 From now on, Alpha releases will come with NO_FLOPPIES.
Approved by:	consensus on freebsd-alpha

A replacement (miniboot.iso) is currently under development.
2003-07-31 07:28:58 +00:00
ru
c32c5cf1e2 Revert last delta, sys/conf/kern.pre.mk,v 1.33 does the job.
OK'ed by:	scottl
2003-07-31 07:13:54 +00:00
ru
620a1cc125 The -Os kernel build with GCC 3.3.1 also requires -fno-strict-aliasing
to survive.

Discussed with:	bde
Tested on:	i386 and pc98
2003-07-30 14:46:46 +00:00
ru
00c31c560d Initialize the FIXCRYPTO, BINMAKE and related variables (that use
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.
2003-07-30 14:33:32 +00:00
ru
3d0b5cd4b5 Embed a simplistic version of the dokern.sh script directly into
release/Makefile.

Reviewed by:	marcel

The original patch also removed ia64/dokern.sh, but this was OBE.
2003-07-30 07:40:45 +00:00
ru
30b29eae6f Moved the MFS root floppies creation code from release.10 to
doMFSKERN (where it logically belongs).
2003-07-30 07:13:31 +00:00
ru
082306ba31 Make IA64 a second port that comes with NO_FLOPPIES.
Reviewed by:	marcel
2003-07-29 18:29:44 +00:00
scottl
79fc7c81b1 Bah, I go and get all preachy, and then commit from the wrong branch. Revert
the use of '-j8'.

Apologies to:	ru
2003-07-26 06:47:40 +00:00
scottl
1653e0663e Fix the release build with a forgotten '-f'. 2003-07-26 05:57:52 +00:00
ru
1243e02129 Make the PC98 small boot floppy usable again.
Spotted by:	nyan
Reviewed by:	nyan
2003-07-25 13:39:11 +00:00
ru
a2dfeb37f7 The RELEASE9 knob is now OBE.
OK'ed by:	jhb
2003-07-25 08:55:51 +00:00
ru
b93079f17c Moved the boot floppy generation code out from release.9 to release.10.
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
2003-07-25 08:54:41 +00:00
markm
e3a28405ed Get the correct set of cryptographically-infected binaries
automagically from the (secure|kerberos5)/Makefile:[KS]PROG.
2003-07-24 17:28:52 +00:00
ru
ac6a8ca21c Replaced the hardcoded target names in the touch(1) commands with
${.TARGET}, to ease maintenance.
2003-07-24 13:45:05 +00:00
ru
35f690e0f7 Added the (undocumented) EMUL_BOOT variable (for TARGET=i386 only)
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
2003-07-23 20:53:37 +00:00
ru
14b4207391 Added the WORLDDIR variable (defaulting to ${.CURDIR}/..) that
points to a directory where "make buildworld" was run.  Useful
for building 5.x snapshots on 4.x.
2003-07-23 14:40:51 +00:00
ru
2b4093d332 Make NO_FLOPPIES really mean "no floppies", including not even
creating the "floppies" directory on FTP and CD-ROMs.  Enforce
NO_FLOPPIES on amd64.

Tested for:	amd64, i386 with -DNO_FLOPPIES
2003-07-23 12:12:53 +00:00
ru
8af435a95b Revert revision 1.788, and explain a bit the intent of having
the boot.flp image on the second CD-ROM.

Explained by:	jhb
Desired by:	vendors
2003-07-23 06:00:56 +00:00
ru
4f37c8da56 Do not define BIGBOOTSIZE and the friends for amd64; it serves
no useful purpose other than wasting CPU time in "make release"
creating useless boot.flp.

Desired by:	peter
2003-07-23 05:53:52 +00:00
ru
bb7a1b776e /floppies/boot.flp is no longer necessary on bootable i386 CD-ROMs.
Forgotten by:	jhb
2003-07-22 09:04:09 +00:00
ru
8a9cab0a16 Fixed the last-minute bug I made in previous commit. 2003-07-04 14:39:17 +00:00
ru
240df1e4a7 Fixed style bugs related to parentheses in Makefile.inc1.
Submitted by:	bde

Fixed nearby bug: propagate the root Makefile's idea of
the appropriate "make" binary down to release/Makefile.
2003-07-04 14:27:06 +00:00
ru
a5eabafa98 MFRELENG_5_1: Default the release makefile to 5.1. 2003-06-26 11:23:36 +00:00