Commit Graph

675 Commits

Author SHA1 Message Date
Ruslan Ermilov
8f1f55e9ae 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
Ruslan Ermilov
58888af364 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
Makoto Matsushita
2b3f8b22db 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
Ruslan Ermilov
f3fb4a79be 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
Ruslan Ermilov
6bde859f40 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
Ruslan Ermilov
b6ea96d1d5 Build the catpages distribution in a more natural way. 2002-04-24 12:54:34 +00:00
Ruslan Ermilov
da40970fa0 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
David E. O'Brien
01df2ec328 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
Ruslan Ermilov
dcd88dc271 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
Makoto Matsushita
1665df2994 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
Makoto Matsushita
203f3bd49f 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 Stokely
9a0c70235d 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 Stokely
ac95fa5040 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 Stokely
37c973e3dd 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
Ruslan Ermilov
c06157d49f 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
John Baldwin
ab0235da5d 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 Stokely
0874402d9e Remind developers to update release(7) if they make substantial
changes to this file.
2002-03-17 07:34:12 +00:00
Peter Wemm
394015a422 Supply -DNO_WERROR to the kernel build during release. 2002-02-25 21:53:18 +00:00
Makoto Matsushita
d7c4abbf21 Typo fix: missing ;.
Pointed out by: Manfred Antar <null@pozo.com>
Pointy hat to: matusita
2002-02-25 05:35:39 +00:00
Makoto Matsushita
b389e7aaef 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
Makoto Matsushita
40227c902b 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
Makoto Matsushita
65718a83c9 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
Makoto Matsushita
4b60693c3c 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 Wunsch
b0b18a1cb8 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
Bruce A. Mah
febbbc6727 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
Bruce A. Mah
464af731bc 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
Bruce A. Mah
fb8f795e9b 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
Brian Feldman
e2f5b1e827 set TMPDIR to /tmp 2001-12-18 20:05:20 +00:00
Yoshihiro Takahashi
29921a60d7 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
Yoshihiro Takahashi
dfbc75ff56 PC98 boxes cannot boot from CD-ROM. 2001-11-24 05:21:53 +00:00
Yoshihiro Takahashi
d0714ae55c Search ${MACHINE}/drivers.conf instead of ${MACHINE_ARCH}/drivers.conf.
The previous commit is not completely.
2001-11-23 14:08:25 +00:00
Yoshihiro Takahashi
ea77a5b4ff Use a separate drivers.conf between i386 and pc98. 2001-11-22 11:04:12 +00:00
John Baldwin
4c8ef1e668 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
Yoshihiro Takahashi
1d91a770f9 Increase the size of a mfsroot floppy for pc98 to 4320. 2001-11-21 09:42:06 +00:00
John Baldwin
114de50e0d 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
John Baldwin
3e9fbbe1df Use modules-depend instead of kernel-depend for doing the depend stage
in doMODULES.
2001-11-19 21:42:08 +00:00
John Baldwin
839dfafeff 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
Bruce A. Mah
463a339fac 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
Yoshihiro Takahashi
142211755e Make CD-ROM distributions at the pc98 release target.
MFC after:	3 days
2001-10-29 16:25:13 +00:00
Bruce A. Mah
3e742bc8dd 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 Stokely
9b8a07ff32 '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
David E. O'Brien
2c1763d430 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
Jordan K. Hubbard
9c552a1fd7 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
David E. O'Brien
729956024e + 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
David E. O'Brien
13e7108c06 Add an `iso' target to create ISO images properly for each platform. 2001-08-15 20:57:08 +00:00
Jordan K. Hubbard
2ef74d2289 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
David E. O'Brien
a591fb0865 dokern.sh was repo copied from src/release/scripts to
src/release/${MACHINE_ARCH}
2001-07-21 17:21:52 +00:00
Poul-Henning Kamp
be1234f248 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
Bruce A. Mah
60087219de 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
Warner Losh
189c7da2ec Fix make release for new kernel locations 2001-06-30 17:20:12 +00:00