Commit Graph

839 Commits

Author SHA1 Message Date
John Baldwin
13ff581d3d - Use a stock loader with forth support on the boot floppies.
- Use the regular forth scripts including the stock device.hints file on
  the boot floppies.
- gzip all the various text files on the boot floppy that are larger than
  one sector to save on space.
- Generate a loader.conf to load the kernel, acpi.ko, and mfsroot making
  use of the 'module_before' variables to prompt for a floppy to be entered
  when required and use a stock loader.rc.  This enables the beastie menu
  on i386.
- PC98 has been changed to split the mfsroot for now so that the floppies
  fit.  When the PC98 bootstrap is updated to work with ELF files (which
  needs to happen anyway), then SPLIT_MFSROOT can be turned off for PC98.
2004-02-03 22:05:55 +00:00
John Baldwin
d943f83bf0 - Tweak order of arch fs options to stick all floppy options together and
all MFS root options together and in the same order on all archs.
- Drop support for using the no longer existing 2.88 floppy image for CD
  booting on i386 via the EMUL_BOOT variable.
- Use a stock loader on the boot floppy rather than one without forth.
- Force the gzip of the mfsroot in release.9 to succeed.  This is useful
  when doing lots of rereleases when testing floppy changes.
- If an acpi kernel module exists, stick it on the boot floppy and for
  now always load it after the kernel.
2004-01-29 19:01:58 +00:00
Ruslan Ermilov
e45b43aad2 Two nits from rev. 1.835:
- Fixed spelling of NO_FLOPPIES to unbreak snapshot building on
  architectures that don't support them (as installation source).

- Don't rely on CVS setting execution bits on the shell script.
  (This is also consistent with the rest of this makefile.)

Reviewed by:	jhb
2004-01-29 16:21:00 +00:00
Yoshihiro Takahashi
6ab88893be The name of small boot floppy should be boot-small.flp to avoid conflicting
normal size floppy.

Reviewed by:	jhb
2004-01-29 15:14:59 +00:00
Ruslan Ermilov
5179f5c3b9 Revert revision 1.833 -- the reinstallkernel.debug target calls the
installkernel.debug target (in the kernel build directory) which is
only defined if the kernel was configured for debugging which it is
not the case for GENERIC kernels on release branches.
2004-01-28 09:19:16 +00:00
Ruslan Ermilov
1118e5b37a Only i386 and Alpha have the compat4x distribution. 2004-01-28 09:12:00 +00:00
John Baldwin
c0731f81d3 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
Ruslan Ermilov
bbe8270c50 - 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
Ruslan Ermilov
4591175cd8 Use the reinstallkernel.debug target, now that we have it. 2004-01-21 08:24:44 +00:00
Makoto Matsushita
d9aeaacb6f 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
Ruslan Ermilov
90165ba56f 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
Ruslan Ermilov
a2cd4a0de6 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
Yoshihiro Takahashi
ba547cb42d Add missing '\' in previous change. 2004-01-15 10:17:43 +00:00
David E. O'Brien
b34a415e58 * 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
Yoshihiro Takahashi
ab0a016c08 Use /etc/rc.d/ldconfig script rather than the ldconfig command directly.
Submitted by:	matusita
2004-01-12 08:37:32 +00:00
Yoshihiro Takahashi
e818ceb452 Run ldconfig in the chroot environment to find shared libraries in
/usr/local/lib.
2004-01-11 12:45:41 +00:00
David E. O'Brien
eb9bb3ee55 Automatically generate the CHECKSUM.MD5 file for ISO's.
Approved by:	scottl
2003-12-01 10:46:45 +00:00
Jun Kuriyama
bc5ffda652 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
Jun Kuriyama
8a34b67a07 Fix ${LOCAL_PATCHES} (chdir was ignored). 2003-11-14 08:21:21 +00:00
Ruslan Ermilov
875ec8bdcf 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
Ruslan Ermilov
71c8601453 Correct the description of what the release.3 stage does nowadays. 2003-10-06 11:52:34 +00:00
Ruslan Ermilov
9c758be211 Make LOCAL_PATCHES accept multiple patch files, as its name suggests. 2003-09-21 06:33:14 +00:00
Ruslan Ermilov
3fb6c17186 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
David E. O'Brien
5bff585104 2nd part of making the name of the release running script overrideable. 2003-08-11 04:21:58 +00:00
David E. O'Brien
0febff82b7 Make the name of the release running script overrideable. 2003-08-10 09:54:22 +00:00
Ruslan Ermilov
a4f9e93c39 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
Ruslan Ermilov
8bf7ab359a - 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
Ruslan Ermilov
3cd22041ce - 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
Andrey A. Chernov
087b057d37 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
Andrey A. Chernov
90862ca23d LANG->LC_ALL
Pointed by:     ru
2003-08-04 21:31:53 +00:00
Andrey A. Chernov
38407b8757 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
Ruslan Ermilov
8189277801 - 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
Ruslan Ermilov
6daa108fd1 - 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
Ruslan Ermilov
6d44eb567d 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
Ruslan Ermilov
eed31dc939 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
Ruslan Ermilov
74345a8f83 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
Ruslan Ermilov
9b72ad91bf 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
Ruslan Ermilov
f2eeb85de6 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
Ruslan Ermilov
f8cc06bea8 Moved the MFS root floppies creation code from release.10 to
doMFSKERN (where it logically belongs).
2003-07-30 07:13:31 +00:00
Ruslan Ermilov
0902bdbe14 Make IA64 a second port that comes with NO_FLOPPIES.
Reviewed by:	marcel
2003-07-29 18:29:44 +00:00
Scott Long
2272d4a4cb 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
Scott Long
1263297ba1 Fix the release build with a forgotten '-f'. 2003-07-26 05:57:52 +00:00
Ruslan Ermilov
9dd993a7be Make the PC98 small boot floppy usable again.
Spotted by:	nyan
Reviewed by:	nyan
2003-07-25 13:39:11 +00:00
Ruslan Ermilov
a3a2d24e9c The RELEASE9 knob is now OBE.
OK'ed by:	jhb
2003-07-25 08:55:51 +00:00
Ruslan Ermilov
3d610ec8a3 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
Mark Murray
98b2ae09c6 Get the correct set of cryptographically-infected binaries
automagically from the (secure|kerberos5)/Makefile:[KS]PROG.
2003-07-24 17:28:52 +00:00
Ruslan Ermilov
d3c93cef78 Replaced the hardcoded target names in the touch(1) commands with
${.TARGET}, to ease maintenance.
2003-07-24 13:45:05 +00:00
Ruslan Ermilov
6ebe96017d 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
Ruslan Ermilov
00a7eeeb0e 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
Ruslan Ermilov
1dae6ea919 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