FreeBSD src
Go to file
Glen Barber 69c7d069af Fix a few issues with creating VOLUME_LABEL for the
installation ISOs:

 - TYPE, BRANCH, and REVISION are only defined if
   OSRELEASE is not defined, so in situations where
   one might set OSRELEASE for an in-house ISO build,
   VOLUME_LABEL would be empty.

 - makefs(8) limits the volume label to 32 characters,
   which for the powerpc64 case, OSRELEASE expands to
   FreeBSD-11.0-CURRENT-powerpc-powerpc64.  Even with
   removing the prefixing 'FreeBSD-', the string is 30
   characters long, leaving zero room for suffixing the
   type of ISO media (BO for bootonly, CD for cdrom, and
   DVD for dvdrom).

Resolve these by defining VOLUME_LABEL when defining
OSRELEASE if unset.  If OSRELEASE is defined by the
builder, use the OSRELEASE from that definition as the
VOLUME_LABEL.

In addition, for cases where both TARGET and TARGET_ARCH
are used for the VOLUME_LABEL, use TARGET_ARCH if it
differs from TARGET.

There are probably a few sharp edges here yet, but these
problems are going to affect the powerpc/powerpc64 builds
for 10.1-RELEASE, so the immediate concern is fixing the
underlying problem at hand quickly, and less so about the
elegance of the fix.

MFC after:	3 days
X-MFC-10.1:	yes, asap
Sponsored by:	The FreeBSD Foundation
2014-10-26 01:41:54 +00:00
bin sh: Allow backslash-newline continuation in more places: 2014-10-19 11:59:15 +00:00
cddl Correct the calculation of tcps_rto in the struct tcpcb -> tcpsinfo_t 2014-10-21 05:19:08 +00:00
contrib MFV r273617: netcat from OpenBSD 5.6. 2014-10-25 00:37:35 +00:00
crypto Merge OpenSSL 1.0.1j. 2014-10-15 19:12:05 +00:00
etc Hook libxo to the build. 2014-10-23 23:14:23 +00:00
games Update factor for changes to types in primes, which is a dependency. 2014-09-27 10:57:34 +00:00
gnu Build gperf only if we're using g++ (not clang++) 2014-10-09 23:05:31 +00:00
include Fix the build by installing acpi_hpet.h correctly. 2014-10-24 23:25:11 +00:00
kerberos5 Fix incremental builds involving non-root users with read-only source files. 2014-09-18 14:50:21 +00:00
lib Use the __DECONST macro rather than hand rolling the same thing. 2014-10-24 23:25:44 +00:00
libexec Add an "empty" Makefile.pc98 because it doesn't need/want HYPERV. It 2014-10-16 14:08:59 +00:00
release Fix a few issues with creating VOLUME_LABEL for the 2014-10-26 01:41:54 +00:00
rescue Remove duplicate prog. 2014-09-28 08:59:38 +00:00
sbin Fix documentation issue. 2014-10-24 17:06:56 +00:00
secure Merge OpenSSL 1.0.1j. 2014-10-15 19:29:22 +00:00
share Clarify that pthread_cleanup_push()/pop() are implemented as macros that 2014-10-25 19:31:34 +00:00
sys Set the caching mode for the usermode mapping of the HPET registers 2014-10-25 21:01:50 +00:00
tests Fix source address selection on unbound sockets in the presence of multiple 2014-09-16 15:28:19 +00:00
tools Bail out of the script on FreeBSD due to deterministic panic issue 2014-10-25 07:20:46 +00:00
usr.bin The current POSIX semaphore implementation stores the _has_waiters flag 2014-10-24 20:02:44 +00:00
usr.sbin Add basic iSNS client to the iSCSI target. 2014-10-25 12:50:26 +00:00
.arcconfig Update the URL to the phabricator instance. 2014-08-14 16:25:43 +00:00
.arclint arc: add linting for python files 2014-06-02 00:21:42 +00:00
COPYRIGHT Bump copyright year. 2013-12-31 12:18:10 +00:00
LOCKS Explicitly require Security Officer's approval for kernel PRNG bits. 2013-09-17 14:19:05 +00:00
MAINTAINERS add myself as opencrypto maintainer as I'm doing some work in the 2014-08-11 19:03:20 +00:00
Makefile Import OpenSSL 1.0.1j. 2014-10-15 17:32:57 +00:00
Makefile.inc1 My previous commit exposed an issue as it fixed a different 2014-10-22 03:39:11 +00:00
ObsoleteFiles.inc - Honer MK_KERBEROS for Heimdal rc.d scripts. 2014-10-19 20:46:59 +00:00
README Import OpenSSL 1.0.1j. 2014-10-15 17:32:57 +00:00
UPDATING Build gperf only if we're using g++ (not clang++) 2014-10-09 23:05:31 +00:00

This is the top level of the FreeBSD source directory.  This file
was last revised on:
$FreeBSD$

For copyright information, please see the file COPYRIGHT in this
directory (additional copyright information also exists for some
sources in this tree - please see the specific source directories for
more information).

The Makefile in this directory supports a number of targets for
building components (or all) of the FreeBSD source tree, the most
commonly used one being ``world'', which rebuilds and installs
everything in the FreeBSD system from the source tree except the
kernel, the kernel-modules and the contents of /etc.  The ``world''
target should only be used in cases where the source tree has not
changed from the currently running version.  See:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html
for more information, including setting make(1) variables.

The ``buildkernel'' and ``installkernel'' targets build and install
the kernel and the modules (see below).  Please see the top of
the Makefile in this directory for more information on the
standard build targets and compile-time flags.

Building a kernel is a somewhat more involved process, documentation
for which can be found at:
   http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html
And in the config(8) man page.
Note: If you want to build and install the kernel with the
``buildkernel'' and ``installkernel'' targets, you might need to build
world before.  More information is available in the handbook.

The sample kernel configuration files reside in the sys/<arch>/conf
sub-directory (assuming that you've installed the kernel sources), the
file named GENERIC being the one used to build your initial installation
kernel.  The file NOTES contains entries and documentation for all possible
devices, not just those commonly used.  It is the successor of the ancient
LINT file, but in contrast to LINT, it is not buildable as a kernel but a
pure reference and documentation file.


Source Roadmap:
---------------
bin		System/user commands.

cddl		Various commands and libraries under the Common Development
		and Distribution License.

contrib		Packages contributed by 3rd parties.

crypto		Cryptography stuff (see crypto/README).

etc		Template files for /etc.

games		Amusements.

gnu		Various commands and libraries under the GNU Public License.
		Please see gnu/COPYING* for more information.

include		System include files.

kerberos5	Kerberos5 (Heimdal) package.

lib		System libraries.

libexec		System daemons.

release		Release building Makefile & associated tools.

rescue		Build system for statically linked /rescue utilities.

sbin		System commands.

secure		Cryptographic libraries and commands.

share		Shared resources.

sys		Kernel sources.

tools		Utilities for regression testing and miscellaneous tasks.

usr.bin		User commands.

usr.sbin	System administration commands.


For information on synchronizing your source tree with one or more of
the FreeBSD Project's development branches, please see:

  http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/synching.html