Fix GCC uninit-var warning (no bug, r=brendan).
[mozilla-central.git] / config / cvsco.pl
blobf15e0b31996d4fe979363586828dd8451c623ada
1 #!/usr/bin/env perl
3 # ***** BEGIN LICENSE BLOCK *****
4 # Version: MPL 1.1/GPL 2.0/LGPL 2.1
6 # The contents of this file are subject to the Mozilla Public License Version
7 # 1.1 (the "License"); you may not use this file except in compliance with
8 # the License. You may obtain a copy of the License at
9 # http://www.mozilla.org/MPL/
11 # Software distributed under the License is distributed on an "AS IS" basis,
12 # WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
13 # for the specific language governing rights and limitations under the
14 # License.
16 # The Original Code is mozilla.org code.
18 # The Initial Developer of the Original Code is
19 # Netscape Communications Corporation.
20 # Portions created by the Initial Developer are Copyright (C) 1999
21 # the Initial Developer. All Rights Reserved.
23 # Contributor(s):
24 # Stephen Lamm
26 # Alternatively, the contents of this file may be used under the terms of
27 # either of the GNU General Public License Version 2 or later (the "GPL"),
28 # or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
29 # in which case the provisions of the GPL or the LGPL are applicable instead
30 # of those above. If you wish to allow use of your version of this file only
31 # under the terms of either the GPL or the LGPL, and not to allow others to
32 # use your version of this file under the terms of the MPL, indicate your
33 # decision by deleting the provisions above and replace them with the notice
34 # and other provisions required by the GPL or the LGPL. If you do not delete
35 # the provisions above, a recipient may use your version of this file under
36 # the terms of any one of the MPL, the GPL or the LGPL.
38 # ***** END LICENSE BLOCK *****
40 sub usage {
41 warn "usage: cvsco.pl <checkout_command>\n"
42 ." <checkout_command> is the entire cvs co command\n"
43 ." (e.g. cvs -q -z3 co SeaMonkeyAll).\n";
46 usage(), die "Error: Not enough arguments\n" if $#ARGV < 0;
47 usage(), die "Error: Wrong cwd. Must chdir to mozilla/..\n"
48 unless -r 'mozilla/config/cvsco.pl';
50 $co_command = join ' ', @ARGV;
52 $logfile = 'cvslog.txt';
53 $old_logfile = 'cvslog-old.txt';
55 sub dblprint {
56 print LOG @_;
57 print STDERR @_;
60 if (-r $logfile) {
61 rename $logfile, $old_logfile;
62 print "rename $logfile, $old_logfile\n";
65 open LOG, ">$logfile";
66 open CVSCO, "$co_command|";
68 dblprint "\ncheckout start: ".scalar(localtime)."\n";
69 dblprint "$co_command | tee cvslog.txt\n";
71 while (<CVSCO>) {
72 dblprint $_;
73 push @conflicts, $_ if /^C /;
76 if (@conflicts) {
77 print "Error: cvs conflicts during checkout:\n";
78 die join('', @conflicts);
81 close(CVSCO) or die "cvs error.\n";
82 dblprint 'checkout finish: '.scalar(localtime)."\n";