Commit Graph

972 Commits

Author SHA1 Message Date
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