summaryrefslogtreecommitdiffstats
path: root/release/svnbranch.awk
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2009-08-14 20:35:42 +0000
committerjhb <jhb@FreeBSD.org>2009-08-14 20:35:42 +0000
commit0bf7e62afcd04d831d3e938d18021d02451fd181 (patch)
treed705c28ea0c1369a49aea4ed99da4ba47f22b9d3 /release/svnbranch.awk
parent0a642dc121383539cfb8bc2ee920bd33c2ccfa7c (diff)
downloadFreeBSD-src-0bf7e62afcd04d831d3e938d18021d02451fd181.zip
FreeBSD-src-0bf7e62afcd04d831d3e938d18021d02451fd181.tar.gz
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)
Diffstat (limited to 'release/svnbranch.awk')
-rw-r--r--release/svnbranch.awk28
1 files changed, 28 insertions, 0 deletions
diff --git a/release/svnbranch.awk b/release/svnbranch.awk
new file mode 100644
index 0000000..0fc8620
--- /dev/null
+++ b/release/svnbranch.awk
@@ -0,0 +1,28 @@
+# $FreeBSD$
+
+BEGIN {
+ FS = "_"
+}
+
+/RELENG_.*_RELEASE/ {
+ if (NF == 5) {
+ printf "release/%s.%s.%s", $2, $3, $4
+ exit
+ }
+}
+
+/RELENG_.*/ {
+ if (NF == 3) {
+ printf "releng/%s.%s", $2, $3
+ exit
+ }
+
+ if (NF == 2) {
+ printf "stable/%s", $2
+ exit
+ }
+}
+
+// {
+ printf "unknown_branch"
+}
OpenPOWER on IntegriCloud