Commit Graph

675 Commits

Author SHA1 Message Date
ru
7080bdd505 Milestone #2 in cross-arch make releases. They now work!
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'.
2002-04-30 11:50:01 +00:00
ru
71467c0d57 Some components of the crunched binaries may use build-tools
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.
2002-04-29 15:26:37 +00:00
matusita
8ad86ce423 Introduce CVSCMDARGS make variable to set command-line options for cvs.
You may want set '-D data-spec' to this variable.

PR:		31218
Submitted by:	Alexandr Listopad <laa@laa.zp.ua>
MFC after:	5 days
		(if re@ permits)
2002-04-27 14:23:32 +00:00
ru
ca2f9297a0 If we are making a "release", we can obviously use -DNOCLEAN buildworld,
to save some time, because ${CHROOTDIR}/usr/obj does not even exist.
2002-04-26 19:40:45 +00:00
ru
8ad1c2807b Milestone #1 in cross-arch make releases.
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>
2002-04-26 17:55:27 +00:00
ru
406a2b145c Build the catpages distribution in a more natural way. 2002-04-24 12:54:34 +00:00
ru
d1865bed8c The chrooted environment isn't nearly pristine, so reset
MAKEOBJDIRPREFIX to the canonical /usr/obj while there.
2002-04-24 12:51:48 +00:00
obrien
c837861546 Change the name of the 'bin' distribution to 'base'.
This is done since it contains much more than /bin, and also gets in the
way when making a combined install+fixit CD.

OK'ed by:	jkh
2002-04-23 22:16:41 +00:00
ru
ced0e287eb Do not spam initial ${CHROOTDIR} world with Texinfo and HTML docs.
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.
2002-04-23 09:24:00 +00:00
matusita
1db8894aba Set hint.acpi.0.disable to 1 in /boot/loader.rc of {boot,kern}.flp,
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)
2002-04-09 01:17:47 +00:00
matusita
abc9671573 Fix recent fixit.flp flood:
- 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).
2002-04-02 15:07:34 +00:00
murray
77d700702c Make it easier to specify a custom kernel configuration for the boot
floppies.

PR:		misc/36032
Submitted by:	David Yeske <dyeske@yahoo.com>
MFC after:	1 week
2002-03-31 17:21:29 +00:00
murray
8b64ecbffc Bump MFSSIZE to the value used by i386 and pc98. This larger MFS
filesystem will still compress below the 1.44 megabyte threshold for
the floppy image.
2002-03-30 02:31:17 +00:00
murray
6085f75ded Alpha does not support PCCARD installs, so we do not need the 58k
/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.
2002-03-29 22:22:34 +00:00
ru
702cd91226 Teach sysinstall(8) how to read boot managers out of /boot
instead of hardcoding them into the binary.  This replaces
the work-around in usr.sbin/sysinstall/Makefile,v 1.121.

Suggested by:	jhb
MFC in:		1 week
2002-03-28 08:23:33 +00:00
jhb
6de60b2636 Remove all traces of write_mfs_in_kernel from the base system release
area.

Requested by:	joe
2002-03-26 18:12:26 +00:00
murray
284b7db51d Remind developers to update release(7) if they make substantial
changes to this file.
2002-03-17 07:34:12 +00:00
peter
97f502664b Supply -DNO_WERROR to the kernel build during release. 2002-02-25 21:53:18 +00:00
matusita
b78ee9d6aa Typo fix: missing ;.
Pointed out by: Manfred Antar <null@pozo.com>
Pointy hat to: matusita
2002-02-25 05:35:39 +00:00
matusita
9a70288cc2 Mkdir ${CHROOTDIR}/usr/ports/distfiles if RELEASEDISTFILES is not set.
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
2002-02-12 16:56:06 +00:00
matusita
8083cc2777 Change variable name from DOCDISTFILES to RELEASEDISTFILES. Respect
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
2002-02-03 07:00:37 +00:00
matusita
fdc99f4021 In revision 1.351, All files/directories in ${CHROOTDIR}/usr/ports/distfiles
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
2002-01-31 00:38:09 +00:00
matusita
4969904c0d MFS 1.536.2.52 (partial) and 1.536.2.70: kgzip loader if i386 (only).
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.
2002-01-20 23:17:52 +00:00
joerg
f49b6f89b4 Include /dev/xpt0 into the list of devices to go onto the boot floppy, so
camcontrol can get a handle to initiate a rescan or reset.

MFC after:	1 week
2002-01-17 20:29:02 +00:00
bmah
959e9dac6d Modify the release-building process so the srelease distribution
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)
2001-12-28 17:21:28 +00:00
bmah
3664910955 At least I'm consistent. Back out the last accidental rev to this file on
HEAD too.

Noticed by:		ben
Another pointy hat to:	bmah
2001-12-27 22:32:33 +00:00
bmah
d9b94dd6a7 New release notes found while trying to catch-up RELENG_4 to reality:
whois(1) -c, pkg_delete -r, rc.conf(5) support for IPFilter state tables.
2001-12-27 21:18:36 +00:00
green
d2ce088d88 set TMPDIR to /tmp 2001-12-18 20:05:20 +00:00
nyan
f312390d6f Set a BOOTABLE variable to "-b" if MACHINE is not pc98, and use it for
mkisoimages.sh instead of "-b" directly.

MFC after:	1 week
2001-11-25 16:43:45 +00:00
nyan
10d48dc5d0 PC98 boxes cannot boot from CD-ROM. 2001-11-24 05:21:53 +00:00
nyan
a518818140 Search ${MACHINE}/drivers.conf instead of ${MACHINE_ARCH}/drivers.conf.
The previous commit is not completely.
2001-11-23 14:08:25 +00:00
nyan
9e91ed5c4e Use a separate drivers.conf between i386 and pc98. 2001-11-22 11:04:12 +00:00
jhb
6c22923ab0 Switch to using a standard /boot directory including the GENERIC kernel
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.
2001-11-22 04:02:09 +00:00
nyan
631f226f43 Increase the size of a mfsroot floppy for pc98 to 4320. 2001-11-21 09:42:06 +00:00
jhb
c015c290ed Bump the mfsroot up from 2880 to 3200 for Alpha so it fits again. Use
a label of auto instead of the fixed size minimum2 so that the bump in
size actually has an effect.
2001-11-20 20:27:54 +00:00
jhb
4401006774 Use modules-depend instead of kernel-depend for doing the depend stage
in doMODULES.
2001-11-19 21:42:08 +00:00
jhb
f4e936a83c Split the mfsroot out from the kernel for the 2.88 boot floppy and the
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
2001-11-19 21:27:00 +00:00
bmah
f572bcd0cf Add a comment that the chroot area cannot reside on a "nodev"-mounted
filesystem.

PR:		12712
Submitted by:	Sergei Laskavy <laskavy@Berkeley.Gambit.Msk.SU>
2001-11-17 19:54:22 +00:00
nyan
1587368e88 Make CD-ROM distributions at the pc98 release target.
MFC after:	3 days
2001-10-29 16:25:13 +00:00
bmah
35e45efa1a The README file in the floppies/ directory of a distribution should
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
2001-09-23 22:32:09 +00:00
murray
0b95b15b7a 'make release' should install docproj ports with BATCH=yes so that your
release builds don't stop in the middle of the night asking for user
input about which Ghostscript drivers to install.
2001-09-13 06:44:36 +00:00
obrien
13be009ee5 Cause an error condition to be sensed by make(1) if we have trouble
making the ISO.
2001-09-03 20:27:03 +00:00
jkh
b3ac075229 Use sh to execute scripts and just check that the script is readable.
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>
2001-09-02 19:05:27 +00:00
obrien
f44504864a + back out my `iso' target
+ 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
2001-08-20 21:22:01 +00:00
obrien
b088bbf863 Add an `iso' target to create ISO images properly for each platform. 2001-08-15 20:57:08 +00:00
jkh
845119946b Add scripts and Makefile support for building ISO images automatically
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.
2001-07-23 09:01:46 +00:00
obrien
f7cd7de431 dokern.sh was repo copied from src/release/scripts to
src/release/${MACHINE_ARCH}
2001-07-21 17:21:52 +00:00
phk
27eac06362 Use quotes around ${RELEASETAG} to allow values like
-r RELENG_4 -D "2001-07-17 12:00"
2001-07-18 05:40:30 +00:00
bmah
a843b4b30a When building an FTP area, put the CSS file for the release documentation
in the FTP area, not the CDROM area.

MFC after:	3 days
2001-07-05 22:14:25 +00:00
imp
d4e98f543a Fix make release for new kernel locations 2001-06-30 17:20:12 +00:00