update_branches revision f91671c7dc877a52adc06d0a7d0ed1c7f6391e6e
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# Copyright (C) 2005 Internet Systems Consortium, Inc. ("ISC")
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# Permission to use, copy, modify, and distribute this software for any
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# purpose with or without fee is hereby granted, provided that the above
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# copyright notice and this permission notice appear in all copies.
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# PERFORMANCE OF THIS SOFTWARE.
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# $Id: update_branches,v 1.3 2005/05/16 04:28:59 marka Exp $
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync!system("cvs", "-d", "/proj/cvs/prod", "update", "doc/private/branches") || die "cannot update doc/private/branches: $!";
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# load existing content
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsyncopen(BRANCHES, "<doc/private/branches") || die "can't open util/branches: $!";
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync s/\(.*\)//;
d5afba4eec453049d8164029471d2d1df0b394e0vboxsync# Search repository for new branches.
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsyncopen(FILES, "find /proj/cvs/prod/bind9 -type f -name *,v -print |") || die "can't start find: $!";
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync next unless m/^symbols$/; # skip until we find the tags
fb4b0f4ca593a27c7fbec391aa8fce062a75b9c7vboxsync# Write out updated version.
fb4b0f4ca593a27c7fbec391aa8fce062a75b9c7vboxsyncopen(BRANCHES, ">doc/private/newbranches") || die "can't open doc/private/branches: $!";
fb4b0f4ca593a27c7fbec391aa8fce062a75b9c7vboxsyncprint BRANCHES "-------------------------------------------------------\n\n";
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync print BRANCHES "\t$comments{$key}" if ($comments{$key} ne "");
c6829e595cb9bb58ee792563fcb57e961ad0a304vboxsync print BRANCHES "\t\t$comments{$key}" if ($comments{$key} ne "");
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync# Update if changed.
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsyncif (system("cmp", "-s", "doc/private/newbranches", "doc/private/branches")) {
c7f70672ae8d9989596a3cf0395cae3f64b5ac01vboxsync rename("doc/private/newbranches", "doc/private/branches") || die "Cannot rename: doc/private/newbranches -> doc/private/branches: $!";