release.sh:

- Add a VCSCMD variable that defaults to 'svn checkout',
  and update places 'svn co' is used directly.
- After sourcing a configuration file, prefix SRCBRANCH,
  PORTBRANCH, and DOCBRANCH with the SVNROOT.
- Properly capitalize 'FreeBSD.org' in the default SVNROOT.
- Update Copyright.

release.conf.sample:
- Add an example to use git instead of svn, by nullifying
  SVNROOT, and setting SRCBRANCH, DOCBRANCH, and PORTBRANCH
  to the URL fo a git repository.

release.7:
- Document VCSCMD.

Submitted by:	Rick Miller (based on)
Sponsored by:	The FreeBSD Foundation
This commit is contained in:
Glen Barber 2014-02-25 22:13:48 +00:00
parent 70c9dd3e3d
commit 9bb84a63b7
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=262499
3 changed files with 29 additions and 6 deletions

View File

@ -7,7 +7,7 @@
CHROOTDIR="/scratch" CHROOTDIR="/scratch"
## Set the svn host. ## Set the svn host.
SVNROOT="svn://svn.FreeBSD.org" SVNROOT="svn://svn.FreeBSD.org/"
## Set the src/, ports/, and doc/ branches or tags. ## Set the src/, ports/, and doc/ branches or tags.
SRCBRANCH="base/head@rHEAD" SRCBRANCH="base/head@rHEAD"
@ -17,6 +17,13 @@ PORTBRANCH="ports/head@rHEAD"
## Run svn co --force for src checkout. ## Run svn co --force for src checkout.
#SRC_FORCE_CHECKOUT=yes #SRC_FORCE_CHECKOUT=yes
## Sample configuration for using git instead of svn.
#VCSCMD="/usr/local/bin/git clone --branch master"
#SVNROOT=""
#SRCBRANCH="https://github.com/freebsd/freebsd"
#DOCBRANCH="https://github.com/freebsd/freebsd-doc"
#PORTBRANCH="https://github.com/freebsd/freebsd-ports"
## Set to override the default target architecture. ## Set to override the default target architecture.
#TARGET="amd64" #TARGET="amd64"
#TARGET_ARCH="amd64" #TARGET_ARCH="amd64"

View File

@ -1,9 +1,13 @@
#!/bin/sh #!/bin/sh
#- #-
# Copyright (c) 2013, 2014 The FreeBSD Foundation
# Copyright (c) 2013 Glen Barber # Copyright (c) 2013 Glen Barber
# Copyright (c) 2011 Nathan Whitehorn # Copyright (c) 2011 Nathan Whitehorn
# All rights reserved. # All rights reserved.
# #
# Portions of this software were developed by Glen Barber
# under sponsorship from the FreeBSD Foundation.
#
# Redistribution and use in source and binary forms, with or without # Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions # modification, are permitted provided that the following conditions
# are met: # are met:
@ -38,9 +42,12 @@ export PATH
# The directory within which the release will be built. # The directory within which the release will be built.
CHROOTDIR="/scratch" CHROOTDIR="/scratch"
# The default version control system command to obtain the sources.
VCSCMD="svn checkout"
# The default svn checkout server, and svn branches for src/, doc/, # The default svn checkout server, and svn branches for src/, doc/,
# and ports/. # and ports/.
SVNROOT="svn://svn.freebsd.org" SVNROOT="svn://svn.FreeBSD.org/"
SRCBRANCH="base/head@rHEAD" SRCBRANCH="base/head@rHEAD"
DOCBRANCH="doc/head@rHEAD" DOCBRANCH="doc/head@rHEAD"
PORTBRANCH="ports/head@rHEAD" PORTBRANCH="ports/head@rHEAD"
@ -98,6 +105,11 @@ while getopts c: opt; do
done done
shift $(($OPTIND - 1)) shift $(($OPTIND - 1))
# Prefix the branches with the SVNROOT for the full checkout URL.
SRCBRANCH="${SVNROOT}${SRCBRANCH}"
DOCBRANCH="${SVNROOT}${DOCBRANCH}"
PORTBRANCH="${SVNROOT}${PORTBRANCH}"
# If PORTS is set and NODOC is unset, force NODOC=yes because the ports tree # If PORTS is set and NODOC is unset, force NODOC=yes because the ports tree
# is required to build the documentation set. # is required to build the documentation set.
if [ "x${NOPORTS}" != "x" ] && [ "x${NODOC}" = "x" ]; then if [ "x${NOPORTS}" != "x" ] && [ "x${NODOC}" = "x" ]; then
@ -155,12 +167,12 @@ set -e # Everything must succeed
mkdir -p ${CHROOTDIR}/usr mkdir -p ${CHROOTDIR}/usr
svn co ${FORCE_SRC_KEY} ${SVNROOT}/${SRCBRANCH} ${CHROOTDIR}/usr/src ${VCSCMD} ${FORCE_SRC_KEY} ${SRCBRANCH} ${CHROOTDIR}/usr/src
if [ "x${NODOC}" = "x" ]; then if [ "x${NODOC}" = "x" ]; then
svn co ${SVNROOT}/${DOCBRANCH} ${CHROOTDIR}/usr/doc ${VCSCMD} ${DOCBRANCH} ${CHROOTDIR}/usr/doc
fi fi
if [ "x${NOPORTS}" = "x" ]; then if [ "x${NOPORTS}" = "x" ]; then
svn co ${SVNROOT}/${PORTBRANCH} ${CHROOTDIR}/usr/ports ${VCSCMD} ${PORTBRANCH} ${CHROOTDIR}/usr/ports
fi fi
cd ${CHROOTDIR}/usr/src cd ${CHROOTDIR}/usr/src

View File

@ -24,7 +24,7 @@
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd December 2, 2013 .Dd February 25, 2014
.Dt RELEASE 7 .Dt RELEASE 7
.Os .Os
.Sh NAME .Sh NAME
@ -245,6 +245,10 @@ Setting this also sets
Set to a non-empty value to include the Set to a non-empty value to include the
.Cm dvdrom .Cm dvdrom
target. target.
.It Va VCSCMD
The command run to obtain the source trees.
Defaults to
.Qq Cm svn checkout .
.El .El
.Sh MAKEFILE TARGETS .Sh MAKEFILE TARGETS
The release makefile The release makefile