update_copyrights revision e85ffb301b294d70ddc1d90234788403666bb944
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# Copyright (C) 1998-2000 Internet Software Consortium.
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# Permission to use, copy, modify, and distribute this software for any
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# purpose with or without fee is hereby granted, provided that the above
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# copyright notice and this permission notice appear in all copies.
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# $Id: update_copyrights,v 1.14 2000/06/22 22:24:05 tale Exp $
b0fb330a8581c8bfab5e523084f9f39264a52b12gsteinrequire 5.002;
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# Map copyright owners to the files containing copyright messages.
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# The first line of the copyright message is not in the file;
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# it is constructed by this script.
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# Map each copyright owner name to a reference to an array containing
b0fb330a8581c8bfab5e523084f9f39264a52b12gstein# the lines of the copyright message.
f4c310fd2555c6faca1f980f00b161eadb089023gstein print "$file: type '$type' not supported yet; skipping\n";
f4c310fd2555c6faca1f980f00b161eadb089023gstein open(SOURCE, "<$file") || die "can't open $file: $!";
f4c310fd2555c6faca1f980f00b161eadb089023gstein print "$file: unexpected yacc file start (expected \"%{\\n\")\n";
f4c310fd2555c6faca1f980f00b161eadb089023gstein } elsif (($m4_comment || $zone_comment || $man_comment) &&
f4c310fd2555c6faca1f980f00b161eadb089023gstein last if s/.*-->//;
f4c310fd2555c6faca1f980f00b161eadb089023gstein print "$file: unterminated comment\n" unless defined($_);
f4c310fd2555c6faca1f980f00b161eadb089023gstein # Not very maintainable, but suitable enough for now.
f4c310fd2555c6faca1f980f00b161eadb089023gstein /Permission to use, copy, modify, and distribute / ||
f4c310fd2555c6faca1f980f00b161eadb089023gstein open(TARGET, ">$file.new") || die "can't open $file.new: $!";
f4c310fd2555c6faca1f980f00b161eadb089023gstein print "$file: noncontiguous year: $year != $last_year + 1\n";
f4c310fd2555c6faca1f980f00b161eadb089023gstein print TARGET $first if $first !~ /^\s*$/;
f4c310fd2555c6faca1f980f00b161eadb089023gstein rename("$file", "$file.bak") || die "rename($file, $file.bak): $!";