Commit graph

1080 commits

Author SHA1 Message Date
Glen Barber 849861d03f Use the IMAGES variable to determine which image files to remove
as part of 'make -C /usr/src/release clean'.

MFC after:	3 days
Sponsored by:	The FreeBSD Foundation
2013-11-18 15:11:13 +00:00
Glen Barber cb95a96bee Remove extra target from 'memstick' that I forgot to remove before
previous commit.

MFC after:	1 week
X-MFC-After:	10.0-RELEASE
X-MFC-With:	r257805
Sponsored by:	The FreeBSD Foundation
2013-11-07 18:59:06 +00:00
Glen Barber a9da1707e5 Add a 'mini-memstick.img' release target, which will use the
'bootonly.iso' components to create a smaller memory stick image.

This is useful for system recovery, where a full memstick.img image
is not necessarily needed (or wanted).  In addition, it is possible to
do bootonly-style installation, where the base.txz, kernel.txz, etc.
are fetched from a remote source.

Provide backwards-compatible target (mini-memstick), to keep in sync
with the targets documented in release/Makefile.

Prompted by:	wblock
MFC after:	1 week
X-MFC-after:	10.0-RELEASE
Sponsored by:	The FreeBSD Foundation
2013-11-07 18:53:55 +00:00
Glen Barber 58ddb0a684 Reduce disc1.iso image size by installing the userland with
the WITHOUT_PROFILE=1 option set, trimming 56MB from the image.

Approved by:	re (glebius)
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
2013-10-13 15:49:50 +00:00
Dag-Erling Smørgrav 56b72efe82 Remove BIND.
Approved by:	re (gjb)
2013-09-30 17:23:45 +00:00
Glen Barber 8cec99b682 For consistency with previous releases, name the cdrom install
cd 'disc1.iso'.

Discussed with:	re@ team
Approved by:	kib (mentor)
MFC after:	3 days
X-MFC-To:	stable/9 only
2013-07-22 12:07:57 +00:00
Glen Barber 3c334738ab Create memstick images with the '.img' filename extension.
Requested by:	many
Approved by:	kib (mentor)
MFC after:	3 days
X-MFC-To:	stable/9 only
2013-07-21 05:23:34 +00:00
Tijl Coosemans 53089271a1 Convert old make variable modifiers :U and :L to bmake :tu and :tl.
Reviewed by:	sjg
2013-06-02 11:44:23 +00:00
Hiroki Sato de17cbcc7e - Add CHECKSUM.* support in Makefile[1].
- Use ln -fs to create a symlink.
- Remove pkgadd for docports.
- Use WITHOUT_JADETEX=yes instead of WITH_JADETEX=no.
- Add {WORLD,KERNEL}_FLAGS to [BTWK]MAKE.
- Use makefs(8) and gpart(8) for sparc64 ISO image[2].
- Add publisher option to makefs(8)[2].

Based on work by:	gjb[1]
Discussed with:		marius, nwhitehorn[2]
2013-02-03 10:26:24 +00:00
Glen Barber 9f5907dbbe Prevent including .zfs snapshot directories in the src.txz
distribution.  This can happen if the src/ tree checkout is
within its own ZFS dataset, and the 'snapdir' ZFS property
is set to 'visible.'

Approved by:	hrs
MFC after:	3 days
X-MFC-To:	stable/9 only
2012-11-11 21:52:18 +00:00
Ed Maste c4acc58d1d Exclude potential circular symlink
This does not occur with normal release builds but can happen when reusing
these release parts for other purposes.
2012-10-15 17:19:47 +00:00
Ed Maste f0c51ba5c7 Exclude potential circular symlink when creating src tarball.
Normal release builds are not affected by this but it can happen if using
these release bits against a work tree.

Sponsored by: ADARA Networks
2012-10-11 18:41:32 +00:00
Nathan Whitehorn 6f4fc34468 Make sure not to tar up CVS directories if this ports tree is a CVS
checkout.

PR:		bin/165868
MFC after:	5 days
2012-03-09 02:23:03 +00:00
Hiroki Sato 876acefaaf - Clean up extra ${.OBJDIR}.
- Add ${IMAGE} for the supported image files.  This fixes the install target
  on FreeBSD/pc98.
- Use "mkdir -p" instead of "-mkdir" consistently.

Reviewed by:	nwhitehorn
2012-03-08 01:47:12 +00:00
Gleb Smirnoff d6ba7d93ba Restore functionality to pack several kernels into release. All
kernels specified by KERNCONF are built and packed into release.
The first one is packed into kernel.txz, all others to
kernel.CONFIG.txz.

The first one is installed on bootables in /boot.
2012-01-15 08:36:25 +00:00
Sean Bruno 672d7ddbcc Allow release generation from a WORLDDIR that is not /usr/src
PR:		misc/159666
Submitted by:	Test Rat <ttsestt@gmail.com>
Reviewed by:	Nathan Whitehorn <nwhitehorn@freebsd.org>
Approved by:	re (kib)
2011-08-18 16:54:04 +00:00
Nathan Whitehorn bfc3bab865 Per request of the docs team, install docs as packages, instead of via
the normal distfile mechanism. Thanks to Marc Fonvieille for the patch and
for putting up with me taking entirely too long to commit this!

Submitted by:	blackend
2011-07-09 23:01:54 +00:00
Nathan Whitehorn 01dae98e72 Make the bootonly CD smaller by discarding static libraries that are not
useful without a toolchain.
2011-06-15 23:56:40 +00:00
Nathan Whitehorn 6e352319b6 Do not install the rescue tools onto the install CD. Since it is read
only, they are very unlikely to be needed and take up a great deal of
space.
2011-06-15 23:38:15 +00:00
Nathan Whitehorn 0bd47e8362 As requested by many people, with final prodding from Jason Hall, fix this
so that running make release causes make obj to be run before doing
anything. This fixes a bug wherein, when run for the first time, and
without -DNOSRC, make release would attempt to recursively tar up the src
directory including its own output and enter an infinite loop.

While here, make the cross-building stuff work a little more the way it
should if only one of TARGET/TARGET_ARCH is specified.
2011-05-18 17:39:28 +00:00
Nathan Whitehorn 61741fd7b2 Mention the memstick target here. 2011-04-18 13:20:54 +00:00
Nathan Whitehorn 299a8b95ac Add an install target to release/Makefile instead of grubbing around
(and requesting that users grub around) in /usr/obj. Also make sure that
make clean removes the bootonly media and clean up that target a little.
2011-04-11 14:30:45 +00:00
Nathan Whitehorn 46c413fe06 Add infrastructure for generation of boot-only ISO images. These have a
reduced world, though still reasonably complete for fixit purposes.
2011-03-27 23:46:12 +00:00
Nathan Whitehorn 3a20439f1c Cause the release target to set up its object directory. It is designed
to be a meta-target, and having it do this avoids it spewing files all
over the source tree by default (and possible recursive tarring if
distributing a src tarball).
2011-03-26 13:58:44 +00:00
Nathan Whitehorn 0877c11eda Use labels to find release media instead of hard-coded device paths. This
makes booting more reliable (and working at all on USB sticks). While here,
move responsibility for setting up fstab into the various platform mk-*.sh
scripts.

Suggested by:	many
2011-03-22 01:14:53 +00:00
Nathan Whitehorn 12ad0bb143 Thanks to sysinstall for its 15 years of service. And now to sleep,
perchance to dream...
2011-03-14 13:47:17 +00:00
Nathan Whitehorn 99ad39c822 Improve the distributeworld target in Makefile.inc1 and update the release
infrastructure to use it. make distributeworld can now be used without
preparing its environment first and installs games into its distribution
using the regular make distribute logic instead of post-processing with
a script.

Also add two new targets, packageworld and packagekernel, that tar up the
results of distributeworld and distributekernel (also new), respectively.
2011-03-02 14:39:26 +00:00
Nathan Whitehorn 0dd04e5470 Get powerpc64 install CDs a little closer: some powerpc things should be
used on powerpc64 as well (build scripts, for instance), and the MFS root
must be adjusted upward on powerpc64 as well.

This doesn't completely solve things: sysinstall stil needs some
persuasion to deal with a default kernel named GENERIC64.
2010-07-15 01:48:30 +00:00
Nathan Whitehorn 8bb2397180 Connect powerpc64 to the build. It is not presently part of make universe,
which will be added soon.

Reviewed by:	imp
2010-07-13 21:19:59 +00:00
Ken Smith a3238bcf8f Shift the version of perl used by the release build process over to
perl-5.10.  This aligns the release build process with the current
default version of perl in the ports tree.

I'll MFC this to all active branches.

MFC after:	3 days
2010-04-09 14:27:17 +00:00
Ken Smith 49ac20555f Pass the HTTP_PROXY and FTP_PROXY environment variables through in addition
to FTP_PASSIVE_MODE so release building works for a machine that needs
to use a proxy.

PR:		misc/137688
Submitted by:	Michael Leun
MFC after:	2 weeks
2010-04-09 14:24:00 +00:00
Yoshihiro Takahashi 3c66b23034 Do kgzip to the loader on pc98, too. Now pc98's boot2 works for ELF.
MFC after:	2 week
2010-01-02 12:37:54 +00:00
Ken Smith 8a7c9fcc3c Add "FreeBSD-" to the beginning of the filenames for the ISO images.
People who collect ISOs from more than just us have been requesting
this for a while.

MFC after:	1 week
2009-12-21 14:42:35 +00:00
Ken Smith 6877964545 Have sparc64 join the separate livefs crowd. Including the docs packages
on disc1 (needed now by sysinstall) overflows the target CDROM iso size.

MFC after:	3 days
2009-09-18 14:53:01 +00:00
Marc Fonvieille d4267a481b Update some comments to match the removal of the docset compilation
during the release build.
2009-08-27 13:18:59 +00:00
John Baldwin 1dc6903b78 Invoke the recently added mm-mtree.sh release script to store a pre-built
mergemaster mtree database in the 'base' dist.

MFC after:	3 days
2009-08-24 21:56:41 +00:00
John Baldwin 7b0eef0b32 Fix a few issues with the lib32 dist so that it includes ldd32.
- Use a better find invocation to purge empty directories from all the dist
  trees during a release build.  The previous version did not purge
  directories whose contents were all empty directories.
- Explicitly blacklist a few files from the lib32 dist instead of using a
  whitelist.  A better longterm solution is to fix the few offenders to not
  install data files during a lib32 install.

MFC after:	3 days
2009-08-24 21:55:43 +00:00
Ken Smith cf48cc9f69 Make head 9.0-CURRENT in preparation for lifting code freeze.
Approved by:	re (implicit)
2009-08-22 23:44:37 +00:00
John Baldwin b03ddec95f Add the ability to build a release from an SVN checkout instead of a CVS
checkout.  If SVNROOT is specified, then the source tree will be checked
out from that SVN repository instead of using CVS.  ports and docs still
use CVS.  If SVNROOT is not specified, then the source tree will be checked
out using CVS.  An explicit SVN branch can be specified using SVNBRANCH
(e.g. SVNBRANCH=stable/8).  If SVNBRANCH is not set but RELEASETAG is set
to a CVS branch (such as RELENG_8) the appropriate SVN branch will be
inferred from the CVS branch using svnbranch.awk.

Note that there are still several open questions about using SVN instead
of CVS in the release process.  However, this does enable one to build a
release from an SVN repository if needed.

Approved by:	re (kensmith)
2009-08-14 20:35:42 +00:00
Marc Fonvieille 944bc81da9 - release/* update to use freebsd-doc-* packages instead of building
FreeBSD docset during 'make release' this will speed up release
  builds;
- sysinstall(8) has also been updated to use these packages with a new
  menu allowing people to choose what localized doc to install;
- mention in UPDATING that docs from the FreeBSD Documentation project
  are now installed in /usr/local/share/doc/freebsd instead of
  /usr/share/doc.

Approved by:	re (kensmith)
2009-06-28 08:59:46 +00:00
Marcel Moolenaar ed9f335141 Make a DVD for ia64. 2009-06-25 04:25:26 +00:00
Yoshihiro Takahashi e4506c14fd Restore MAKE_FLOPPIES for pc98. 2009-02-14 14:53:51 +00:00
Ken Smith fc94457307 Turn off the parallel make options accidentally turned on by the previous
commit.  Sigh.

Noticed by:	rdivacky
2009-02-10 15:11:26 +00:00
Ken Smith b8db5085d2 Turn off the building of boot floppies for amd64/i386. 2009-02-10 15:03:08 +00:00
Ken Smith 3dddcecced This is being committed from a sparc64 (US-III, thanks Marius!) that
was installed from a DVD so apparently it works... :-)

Enable building DVDs for sparc64.
2008-11-13 01:47:08 +00:00
Ken Smith 5fc898dffe Move an echo that accidentally got put under the .if defined(MAKE_DVD).
Pointy hat:	kensmith
2008-10-21 23:36:28 +00:00
Ken Smith 0cd91f065a Oops, add missing @. 2008-10-21 22:50:01 +00:00
Ken Smith 89811440d5 The thought of making more than one DVD image for a release really
freaks me out.  But it turns out we might be able to generalize
a few of the other things RE uses to assemble the package trees
for releases if the DVDs use a naming theme close to what is used
for the CDROMS (disc1, disc2, etc).  So change the name to dvd1.
Hopefully this way src/release/scripts/{package-split.py,package-trees.sh}
can be generalized instead of copied-and-hacked.

MFC after:	5 days
2008-10-14 02:13:12 +00:00
Ken Smith 2e3a155793 Add a build knob MAKE_DVD to control on a per-architecture basis whether
or not to build a tree used for the creation of a DVD image.  If that is
enabled set up a DVD tree by installing everything we normally install
to the individual CDROM trees into the one DVD tree.  The result is one
image with all the install bits, livefs bits, and doc bits suitable for
burning to a DVD instead of CDROM.

Enable building the DVD for amd64 and i386.

MFC after:	1 week
2008-10-12 02:52:56 +00:00
Marcel Moolenaar d8e78869fb When making release with NOPORTS, we'll checkout only the
mininal set of ports required to make the docs. However,
we also need ports/sysutils/cdrtools in order to make the
ISO images. When a platform doesn't have packages, the
release will fail in that case. Add ports/sysutils/cdrtools
to RELEASEPORTSMODULE for the DOMINIMALDOCPORTS case to
handle the NOPORTS release build.

Note that this change doesn't try to handle the NOPORTS with
NODOC case. For we have NOPORTSATALL set and it seems wrong
to check out a ports module in that case.
2008-07-07 16:23:04 +00:00
Ruslan Ermilov 042df2e2da Enable GCC stack protection (aka Propolice) for userland:
- It is opt-out for now so as to give it maximum testing, but it may be
  turned opt-in for stable branches depending on the consensus.  You
  can turn it off with WITHOUT_SSP.
- WITHOUT_SSP was previously used to disable the build of GNU libssp.
  It is harmless to steal the knob as SSP symbols have been provided
  by libc for a long time, GNU libssp should not have been much used.
- SSP is disabled in a few corners such as system bootstrap programs
  (sys/boot), process bootstrap code (rtld, csu) and SSP symbols themselves.
- It should be safe to use -fstack-protector-all to build world, however
  libc will be automatically downgraded to -fstack-protector because it
  breaks rtld otherwise.
- This option is unavailable on ia64.

Enable GCC stack protection (aka Propolice) for kernel:
- It is opt-out for now so as to give it maximum testing.
- Do not compile your kernel with -fstack-protector-all, it won't work.

Submitted by:	Jeremie Le Hen <jeremie@le-hen.org>
2008-06-25 21:33:28 +00:00
Marcel Moolenaar 70d8932f66 Don't use disklabel for the MFS root. The DoFS.sh script creates
a bogus partition table and puts the file system on the whole
partition. geom_part doesn't expose the 'c' partition as it's an
artifact of the BSD label and not to be used. Secondly, gpart(8)
is the preferred tool for partitioning disks on ia64.
2008-02-21 03:16:36 +00:00
David E. O'Brien 569acadf29 Make it easier to experiment with alternate compression.
Reviewed by:	kensmith
2007-12-09 04:24:09 +00:00
Ken Smith 5876d743c3 When compiled with the combination of flags used to build crunched
binaries for the fixit floppy bin/ed/main.c causes a gcc warning
message about argc possibly being clobbered by longjmp or vfork.
We have threatened to ditch floppies for 8.0 but I don't want to
do quite that much rototilling yet so for now turn off -Werror while
building ed (and everything else) for the fixit floppy.

Thanks to jb for pointing out NO_WERROR.
2007-12-04 02:22:35 +00:00
Simon L. B. Nielsen f24c80e2ef Remove kernel and module symbol files from disc1 (and the livecd if it
is enabled).  This saves around 80MB (for i386) on the ISO images.

Note that this is only from the install media, not the installed
system where the symbols are still installed, if part of the release.

Should anybody want the symbols which match disc1/livecd, they can
just be extracted from the kernel distribution files.

Reviewed by:	kensmith
2007-11-22 20:06:50 +00:00
Ken Smith 1bf7496cff The i386 disc1 size wandered above what fits on 650Mb media which has been
our target previously.  So i386 joins the others that have switched over
to a separate livefs iso image.
2007-11-16 13:14:27 +00:00
Yoshihiro Takahashi c6e7f7df5a pccard.conf is gone. 2007-11-09 15:32:04 +00:00
Ken Smith c15e0967df To honor the birth of RELENG_7 bump HEAD to 8.0-CURRENT.
Approved by:	re (implicit)
2007-10-11 04:28:08 +00:00
Bruce A. Mah 5c12c7bf5a Remove one more reference to the installation notes, this time in the
floppies directory.

Pointed out by:	kensmith
Approved by:	re (blanket for installation notes removal)
2007-08-17 14:13:39 +00:00
Bruce A. Mah f08071c084 Don't copy the installation guide to the release media (i.e.
floppies or ISO images).  We retain the concept of MD
release documentation for now, although it's fairly unlikely
that we'll ever do this again.

Approved by:	re (blanket for installation guide removal)
2007-08-14 20:02:55 +00:00
Ken Smith eb173edb43 The amd64 monthly snapshots began overflowing disc1 (and that's without any
packages...).
2007-05-10 12:04:29 +00:00
Bruce A. Mah e1ae210ad5 Reflect that the hardware notes is now an MI document. 2007-02-16 02:28:15 +00:00
Ken Smith 7404bf519f Boot floppy for i386 overflowed during Jan. 2007 snapshot build, fix
it before Feb. 2007 snapshot build...
2007-02-01 15:12:44 +00:00
Bruce A. Mah ae6f6d9295 Teach release builds and release documentation snapshots that release
notes are no longer MD documents.
2006-12-06 18:07:40 +00:00
Ken Smith 639fe104d8 Move the documentation to its own separate disc to make room for more
packages on disc2.  This will also let users decide if they want to
have a CD of the docs at all - unless they're disconnected from the
net they will probably find the Web site more useful.

Reviewed by:	ru
MFC after:	3 days
2006-11-16 23:09:35 +00:00
Ruslan Ermilov e50a1ba261 Enforce RELEASENOUPDATE if EXTSRCDIR is used.
Suggested by:	jb
2006-11-11 23:18:28 +00:00
Ruslan Ermilov 9f5cc52fb6 The AUTO_KEYBOARD_DETECT is useful on amd64 as well. 2006-10-24 21:00:49 +00:00
Ruslan Ermilov 2c9f74ef32 Remove hint.atkbd.0.flags="0x1" from the installation device.hints;
kbdmux(4) is available during install and should take care of USB
keyboards.
2006-10-24 20:52:06 +00:00
Ruslan Ermilov 95dc12e160 Make it possible again to build -CURRENT snapshots on -STABLE.
Reported by:	Angelo Turetta
2006-09-11 13:15:09 +00:00
Ruslan Ermilov 710989358e Stop cutting the tarball names to eight symbols. This makes
it possible to e.g. distribute kernels with config names larger
than eight symbols, without the clash.  Previousy, LALALALA
and LALALALA-SMP would be the same tarball.  (I think this
comes from the old days where tarballs were put on the MS-DOS
formatted diskettes.)

MFC after:	3 days
2006-09-08 19:54:37 +00:00
Ruslan Ermilov 2b46c64c9c Remove alpha left-overs. 2006-08-22 08:03:01 +00:00
Colin Percival c5897626b9 When deleting empty directories prior to building the release tarballs,
pass the "-empty" flag to find(1).  This change has no effect other
than to get rid of a few pages of "rmdir: ...: Directory not empty"
error messages.  (Note that the "-empty" flag has been supported by
find(1) since 4.3-RELEASE.)
2006-06-09 03:40:04 +00:00
Yoshihiro Takahashi ef6cf7f1f1 Make a bootable CD on pc98. 2006-05-16 14:22:37 +00:00
Yoshihiro Takahashi deff04b4f7 Fix the acpi.ko path for boot.flp.
PR:		misc/96466
Submitted by:	Nobuyuki Koganemaru
MFC after:	1 day
2006-04-29 14:03:17 +00:00
Ruslan Ermilov 4963cb9355 Assert that /dev/null is a character device in a chroot early. Otherwise,
we might get surprises later, like /dev/null having error in the 4th line
reported by make(1).  :-)

Tested by:	Dmitriy Kirhlarov (who attempted to make release in a jail)
2006-03-23 07:48:58 +00:00
Sam Leffler cbfec51a4b make sure install scripts are executable
Submitted by:	Ceri Davies
2006-03-21 15:50:08 +00:00
Ruslan Ermilov 5740a2b62d Convert NO_PROFILE and NO_LIB32 to new style. 2006-03-18 21:37:05 +00:00
Ruslan Ermilov e1fe3dba5c Reimplementation of world/kernel build options. For details, see:
http://lists.freebsd.org/pipermail/freebsd-current/2006-March/061725.html

The src.conf(5) manpage is to follow in a few days.

Brought to you by:	imp, jhb, kris, phk, ru (all bugs are mine)
2006-03-17 18:54:44 +00:00
Ruslan Ermilov 11a07768f7 Remove NO_SENDMAIL leaked from the days when building non-crypto
stuff for release was evil.
2006-03-17 09:43:39 +00:00
Sam Leffler fdb71eeeff fix handling of default kernels
Reviewed by:	ru
2006-03-11 18:59:16 +00:00
Ruslan Ermilov eb765a4d80 Fix this to what I've actually submitted. 2006-03-09 17:55:08 +00:00
Sam Leffler d336d34dba handle KERNELS as before
Submitted by:	ru, andrew
2006-03-09 17:11:17 +00:00
Sam Leffler 9fe7600bbe Revamp base system packaging of kernels to enable up/smp selection
at runtime and to support distributing additional kernels:
o remove kernel from the base tarball
o add new kernel tarballs
o build + package both SMP and GENERIC kernels when an <arch>/conf/SMP
  config file is present
o add sysinstall support for multiple kernels
o update sysinstall to probe for the number of cpus on a system
  and auto-select smp/up kernel accordingly
o add a post-kernels install hook to fixup /boot/kernel
o add -ldevinfo to boot crunch for sysinstall's cpu probing logic

Notes:
1. On HEAD this code is not currently used because GENERIC kernels
   include SMP.  This work is mainly intended for RELENG_6 where the
   GENERIC kernel is UP.  If HEAD changes to match then just enable
   WITH_SMP in sysinstall/Makefile.
2. The cpu probing support is done with acpi and MPTable; this means
   some systems will require work for auto-detection to work.
3. The handling of /boot/kernel may need to be revisited; for now
   we rename one kernel at the last moment (SMP if installed, otherwise
   GENERIC).  There are other, possibly better, approaches.

Lots of help from ru, emaste, scottl, and jhb.
2006-03-08 18:02:32 +00:00
Hiroki Sato 4a457aa663 Fix a bug which puts an incorrect checksum of CHECKSUM.MD5
into the CHECKSUM.MD5 file itself.

Approved by:	re (scottl)
MFC after:	3 days
2006-02-08 11:18:29 +00:00
Ken Smith 65030cb84d Enable splitting up the MFSROOT floppy on amd64, the contents now overflow
one floppy's worth of space.
2006-01-30 14:24:31 +00:00
Marcel Moolenaar 9bc245fb48 Fix the missing CD_VOLUME=1 in the cdrom.inf file on disc1 for the
livecd != disc1 case (i.e. ia64). The line was appended to the
non-existing cdrom.inf file, which was created only later. Move the
line to after the file is created.

MFC after: 1 day
2006-01-29 20:16:25 +00:00
John Baldwin c5245e57e6 Enable boot floppies for amd64. I just copied the needed variables over
from i386.

Tested by:	Markus Trippelsdorf markus at trippelsdorf dot de
Approved by:	scottl
MFC after:	1 week
2006-01-04 18:02:56 +00:00
Yoshihiro Takahashi fcb9ab1e8e Add EXTPORTSDIR like EXTSRCDIR and EXTDOCDIR.
PR:		misc/83287
Submitted by:	Gabor Kovesdan
MFC after:	1 week
2006-01-02 13:29:58 +00:00
Yoshihiro Takahashi 91dda5000a Request boot floppy after loading mfsroot floppy because beastie.4th exists
in boot floppy.

Submitted by:	Nobuyuki Koganemaru < n-kogane at syd dot odn dot ne dot jp >
MFC after:	1 week
2006-01-02 07:29:22 +00:00
Ian Dowse 25298bc2b6 Remove one more reference to usbd.conf. 2005-12-15 01:14:35 +00:00
Ruslan Ermilov f9b5f9c1cf Be cross-arch friendly. 2005-11-03 07:27:50 +00:00
Ruslan Ermilov d24864f785 Refactor (some more) installation of kernel and module objects.
Try to make everyone happy: David (to have debug kernels installed
by default), Warner (to be able to override that), and myself (for
actually making it all work and to be consistent).

Now, if kernel was configured for debugging (through DEBUG=-g in
the kernel config file or "config -g"), doing "make install" will
install debug versions of kernel and module objects with their
canonical names,

	kernel.debug -> /boot/kernel/kernel
	if_fxp.ko.debug -> /boot/kernel/if_fxp.ko

Installing a kernel not configured for debugging, or debug kernel
with INSTALL_NODEBUG variable defined, will install non-debug
kernel and module objects.

Also, restore the install.debug and reinstall.debug targets that
are part of the existing API (they cause some additional gdb(1)
scripts to be installed).
2005-10-25 09:05:07 +00:00
Ken Smith 0f12c50ed7 Add SHA256 checksums to the release build.
Requested by:		cperciva (so)
Reviewed/improved by:	ru
MFC after:		2 days
2005-09-28 12:39:00 +00:00
Marcel Moolenaar 1e36c0be6d Unbreak release builds. Now that NO_INFO also affects the installation
of texinfo and we need makeinfo to build world, we cannot have NO_INFO
anymore when we populate the chroot.
2005-09-07 04:34:11 +00:00
Ken Smith 4900836a01 Adjust for HEAD being 7.0 now.
Approved by:	re (implicit)
2005-07-11 15:50:29 +00:00
Scott Long 091040346a Adapt the mfsroot environment of sysinstall to the needs of the new dhclient.
This involves having passwd bits available so that seteuid("_dhcp") work,
and creating /var/empty so that chroot(_VAR_EMPTY) works.  My gut feeling
is that the better solution is to make privsep and chroot optional in
dhclient, but this works well for now and is low-risk.

Approved by: re
2005-07-11 03:59:25 +00:00
Ruslan Ermilov ece6831d38 Provide 32-bit runtime support on amd64 as a separate distribution, lib32.
Prodded by:	obrien
Nodded by:	peter
Approved by:	re
2005-06-16 18:16:14 +00:00
Peter Grehan 24aade12eb Make the liveCD separate ala ia64 - the combined live/install is
too large.
2005-05-23 03:14:56 +00:00
Ruslan Ermilov b6bdead975 Strip the initial world some more. 2005-05-17 14:24:33 +00:00
Marcel Moolenaar 9bae572bd7 Allow specifying which INDEX file to use by setting PKG_INDEX. By default
the INDEX file is taken from the package source tree as defined by the
PKG_TREE variable. This change allows using the (possibly incomplete)
packages on pointyhat.

MFC after: 2 days
2005-05-03 04:11:56 +00:00
John Baldwin a1b193b540 - Move the doc project docs over to disc2 to free up some room for future
bloat on disc1.
- Output a message letting the user know that we are generating MD5 sums
  during the long pause after the last mkisofs invocation in the iso.1
  target.

MFC after:	3 days
2005-03-31 16:19:26 +00:00
John Baldwin b22009642f What should be the last major changes to the ISO layout:
- When a separate livefs ISO is used, change the name of the tree directory
  to be R/cdrom/livefs and change the name of the iso to livefs.iso rather
  than using disc2.  Instead, disc2 is now always going to be the packages
  disc regardless of the presence of a separate livefs which makes things
  simpler.
- Build a very simple disc2 tree under R/cdrom that just includes the
  cdrom.inf file that the packages need.  Also, build a disc2.iso image
  in the iso.1 target.  Disc 2's volume label is "FreeBSD_Packages".
- Retire CD_EXTRA_BITS and replace it with CD_PACKAGE_TREE.  CD_EXTRA_BITS
  was specific to disc1, but CD_PACKAGE_TREE instead should point to a
  directory that has disc1 and disc2 subdirectories that contain the extra
  bits for each image.
- Rename the bootonly volume label to "FreeBSD_bootonly" and just hardcode
  the disc1 and livefs volume names and iso suffixes.
2005-03-23 15:01:54 +00:00
Tai-hwa Liang 0cdbdea6e4 The live CD itself no longer has /stand since a long time ago; however,
there are still a couple of places under src/release such like fixit.profile
assumed that system binary can be retrivied from /stand(ex: boot with the
live CD and run "disklabel -e" in the fixit CD shell).

Since /stand is still functional in fixit floppy, and there are more than
one places in src/release needs to be updated(document for example) if we
want to make use of something like /mnt2/rescue/vi.  This commit try to
deal with aforementioned inconsistency with minimal effort by simply
create a symbolic link to /rescue.

Reviewed by:	jhb, sam (mentor)
2005-03-23 02:51:19 +00:00
John Baldwin e738d1ea3d Add a new package splitting mechanism to replace print-cdrom-packages.sh.
The new system tries to be more automated so that there is less work for
the re's to do.  It also no longer uses a /usr/ports tree as its input,
but uses the generated package build including its INDEX file as its input.
It parses the INDEX file, determines which packages should go on which ISO
images, and then builds full-fledged trees of packages that can be added
as an argument to mkisofs along with the tree built by 'make release' to
build a full CD image.  The INDEX files in the populated trees are
generated with volume media number to make use of sysinstall's multiple
volume support so that the user is kindly prompted to insert the
appropriate disc for a package if it is not on the current disc.  There is
still some more tweaking to be done here, but this part needs to be
committed.  This stuff will all be used to prep the 5.4 release as well.

Tested by:	kensmith, others on re@
Reviewed by:	re
2005-03-21 19:17:48 +00:00
Bruce A. Mah 52957bbfd8 When building release documentation for release builds or for
release documentation snapshots, force URLS_ABSOLUTE.  This
allows us to relocate HTML renderings anywhere without worrying
about breaking relative links to pages on the Web site.  This can
happen when we use &base; as part of a URL.

I wonder if we should do this for all release documentation builds,
but I'm not quite sure what all the cases are.
2005-03-20 17:59:17 +00:00
John Baldwin f16d1c7c6a Always use a separate disc for the livefs on ia64 since the merged image
doesn't fit on one disc.

Tested by:	marcel
X-MFC after:	30 seconds
2005-03-04 20:37:20 +00:00
John Baldwin 92f6e2c87f Rework how we layout the CD/DVD ISO images for releases. Note that this
is only the first stage and does not yet handle packages (which will move
to their own disc(s)).
- By default, include the live filesystem on disc1, so that disc1 is now
  both an install disc and a fixit disc.  The images can still be split
  into two separate discs by specifying SEPARATE_LIVEFS=yes.
- Remove /usr/ports from the live filesystem disc as the merged images
  do not fit on even i386 otherwise.  Also, the merged image already
  contains a tarball of the entire ports tree, so /usr/ports was a
  duplicate anyway.
- Stop building port READMES for the release sinc they are no longer used
  (/usr/ports in the live filesystem was the last remaining user).
- Split cdrom.1 into three targets.  cdrom.1 builds the live filesystem
  image.  cdrom.2 builds the disc1 image.  Note that if SEPARATE_LIVEFS
  is not specified these both write to the same area.  cdrom.3 builds
  the bootonly image and the UFS miniroot.
- The various distribution directories are now in a <buildname>
  subdirectory of disc1 rather than being in the root so that the merged
  image's root is not quite as cluttered.
- The disc1 image is now called disc1.iso and we no longer build a
  miniinst.iso image.  If CD_EXTRA_BITS is defined, then the iso.1 target
  will simply include those bits in the disc1 image that it builds.

MFC after:	1 day
Requested by:	re (scottl, etc.)
2005-03-02 22:46:07 +00:00
John Baldwin 3b090ef7d3 Use the shiny, new top-level 'distribution' target when populating the
chroot area.  This fixes make release of HEAD on systems that have a
/usr/src with bsd.endian.mk and a matching /usr/obj but haven't installed
the world in /usr/obj and thus have no bsd.endian.mk /usr/share/mk.
2005-03-02 14:57:45 +00:00
Ruslan Ermilov 37966461c0 Safer version of the chflags command. 2005-01-13 08:29:51 +00:00
Ruslan Ermilov f45a5bbda4 NOCLEAN -> NO_CLEAN
NOCLEANDIR -> NO_CLEANDIR
2004-12-21 12:21:26 +00:00
Ruslan Ermilov 582ef25f94 NOHTML -> NO_HTML 2004-12-21 12:05:11 +00:00
Ruslan Ermilov 39a855c2a1 NOGAMES -> NO_GAMES 2004-12-21 10:36:54 +00:00
Ruslan Ermilov 83c7ade90a NOSHARED -> NO_SHARED 2004-12-21 09:59:45 +00:00
Ruslan Ermilov ab7a294721 NODOCCOMPRESS -> NO_DOCCOMPRESS
NOINFO -> NO_INFO
NOINFOCOMPRESS -> NO_INFOCOMPRESS
NOLINT -> NO_LINT
NOPIC -> NO_PIC
NOPROFILE -> NO_PROFILE
2004-12-21 09:33:47 +00:00
Ruslan Ermilov e653b48c80 Start the dreaded NOFOO -> NO_FOO conversion.
OK'ed by:	core
2004-12-21 08:47:35 +00:00
Ruslan Ermilov b51a042e9a Actually put hint.atkbd.0.flags="0x1" in /boot/device.hints on CD-ROMs.
(Brought to my attention by Brooks while sitting together on the floor
in "Kairo".)
2004-11-02 11:59:27 +00:00
Ruslan Ermilov d885836c32 Pass WORLD_FLAGS down to the distributeworld target, so it's
possible to build releases with customizations such as with
NOPROFILE.

Problem found and fix tested by Roman Neuhauser.
2004-10-21 08:54:10 +00:00
Ken Smith 88f69650e5 It turns out the ia64 architecture's disc2 overflows if we put the
ports/ tree on it.  This makes putting the ports/ tree on disc2 at
all dependent on the NOPORTREADMES knob as well as the NOPORT knob
(at the moment NOPORT may be set while NOPORTREADMES isn't, that
should probably be revisited).  And it hardcodes ia64 for NOPORTREADMES
by request the ia64 release builder.

While here really get rid of the temp file 'make index' leaves behind.

Tested by:	i386 and ia64 'make release'
Reviewed by:	marcel
MFC after:	1 day
2004-09-30 22:59:47 +00:00
Ken Smith 485b926865 Fix-ups for a few problems reported with how ports are handled in the
release:

	- run 'make index' as part of release build, INDEX* files in
	  CVS no longer updated and likely to be removed from CVS soon
	- don't include README.html files in ports.tgz tarball because
	  they cause cvsup problems for users later
	- put a copy of /usr/ports on disc2 that does include README.html
	  files so users have access to them

Reviewed by:	ru (found one bug, several clean-up suggestions)
Tested by:	'make release'
MFC before:	BETA6 build (this isn't likely to be tested in -current
		anyway...)
2004-09-24 02:10:06 +00:00
Bruce A. Mah 39fa2d282b Don't attempt to install the (obsolete and disconnected) Early Adopters
Guide on release media.
2004-09-17 21:46:17 +00:00
Giorgos Keramidas 6b6ec8eb57 The early-adopter doesn't exist in HEAD anymore. The source is there,
but it's disconnected from the build.  Remove it from the architecture
independent release documentation set, because it breaks "make release"
when NODOC is undefined.

Reviewed by:	hrs
2004-09-17 19:28:46 +00:00
Brooks Davis 3f332bb341 Use "cp -f" instead of "rm" and "cp" to break the hardlink to
device.hints.

Submitted by:	ru
2004-09-15 05:14:21 +00:00
Brooks Davis f09470addf Add 'hint.atkbd.0.flags="0x1"' back to /boot/device.hints on the
install media on i386 and amd64.  While the current default is very
useful in server environments, the ability to use USB keyboards is
vastly more important then the ability to use PS/2 keyboards the admin
forgot to plug in during the install process.

PR:		kern/71443
2004-09-14 04:01:57 +00:00
Ruslan Ermilov 37c3815396 Correct a typo in a comment.
Submitted by:	Xin LI
2004-09-08 06:05:19 +00:00
Ruslan Ermilov 182d7632d4 Document the following knobs: CD_EXTRA_BITS, EXTRA_SRC, HTTP_PROXY
and FTP_PROXY.  Removed bitrot (BOOT_CONFIG).

PR:		misc/71465
Submitted by:	Jon Passki <cykyc@yahoo.com>
2004-09-07 14:26:02 +00:00
David E. O'Brien c6d8b958f1 Start the de-orbital burn of our previous FreeBSD version compat libs
living in usr/src.  We need to use them from ports to record dependencies.

Discussed with:	re(scottl)
2004-08-29 18:27:00 +00:00
Ruslan Ermilov 85231d66d4 Fixed the shell arithmetic to work with 4.x /bin/sh.
Tested by:	make release of HEAD on 4.10-STABLE
2004-08-26 19:15:20 +00:00
Ruslan Ermilov a4ff160f47 Meet the new era of 6.0-CURRENT. 2004-08-19 10:34:59 +00:00
Peter Grehan fa7bd2839d PPC definitions required for 'make release'
Reviewed by:	ru
Submitted by:	ssouhlal
2004-08-18 11:11:46 +00:00
David E. O'Brien f04142310d Bring back 'NO_FLOPPIES', but as a user external knob.
The internal logic knob remains MAKE_FLOPPIES.

Suggested by:	ru
2004-08-16 10:25:43 +00:00
David E. O'Brien 94223a53dc Follow 'MAKE_ISOS' in naming and s/FLOPPIES/MAKE_FLOPPIES/g
Submitted by:	ru
2004-08-16 08:56:50 +00:00
David E. O'Brien b9e0905e14 Accept the fact that floppies either aren't applicable or relevant on most
platforms.  So make the floppy logic easier to read.
2004-08-16 08:28:58 +00:00
Marcel Moolenaar 9090f0c261 Now that make(1) passes variables that were given on the command line
to subordinate make(1) invocations through MAKEFLAGS, we cannot add
CFLAGS onto the make(1) command line. This will conflict with the
individual makefiles wanting to append to it, which is not respected
when CFLAGS is given on the command line. Hence build breakage.
So, put CFLAGS in the environment instead.
2004-08-06 17:07:40 +00:00
Ruslan Ermilov 7b07d01f0e Clean up after mechanical renumbering. 2004-08-06 10:04:06 +00:00
Colin Percival 5355286a0a Crypto is now part of the "base" distribution, and the old "release.3"
target no longer exists.  Renumber the old release.[4-9] targets to
release.[3-8].

Reminded by:	ru
2004-08-06 08:49:51 +00:00
Colin Percival d37df47d31 Join the 21st century: Cryptography is no longer an optional component
of releases.  The -DNOCRYPT build option still exists for anyone who
really wants to build non-cryptographic binaries, but the "crypto"
release distribution is now part of "base", and anyone installing from a
release will get cryptographic binaries.

Approved by:	re (scottl), markm
Discussed on:	freebsd-current, in late April 2004
2004-08-06 07:27:08 +00:00
John Baldwin db8714af52 Remove some serious foot-shooting potential from the release Makefile. For
some unknown reason, when LOCAL_PATCHES and LOCAL_SCRIPT were originally
added, they were silently ignored if the actual file did not exist.  As a
result, if one mistyped the pathname to a patch or script, then the release
silently succeeded.  However, it was not built with the desired changes and
no warning was given to inform the builder either.  This commit explicitly
checks to see that all of the defined patches and scripts exist up front
and bails if any of them do not exist.  I lost several hours of valuable
sleeping time this evening due to this "feature" so I've finally gone and
ripped out.  I've tripped over this in the past several other times as
well.

Glanced at by:	scottl
2004-07-15 04:52:57 +00:00
Brian Somers ab5e865567 Die if make buildworld fails -- don't wait 'till installworld can't find
what it needs.
2004-06-10 19:33:26 +00:00
Hiroki Sato 9f2d40ab25 Add URLS_ABSOLUTE=YES into the doc.1 target. 2004-05-05 13:06:40 +00:00
Ken Smith 4f27387d5c Sorry for doing this backwards, but as with most release related stuff
we only pay attention to it during release time and at the moment it's
a -stable release in progress.

This is a MFS I guess, moving rev 1.536.2.113 to HEAD.  I ran out of
time to follow through with doing this last night.  Sorry for the delay.

Adding a couple of variables to make tweaking the CD-ROM label and .iso
filenames easier.
2004-04-30 13:52:09 +00:00
John Baldwin aaf3e5b065 - Only build a fixit floppy on i386 and pc98.
- Reenable boot floppies for Alpha.
2004-03-25 20:37:59 +00:00
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