add -v to regen.pl and friends
authorRobin Barker <RMBarker@cpan.org>
Wed, 19 Mar 2008 10:55:59 +0000 (10:55 +0000)
committerNicholas Clark <nick@ccl4.org>
Sun, 30 Mar 2008 15:48:08 +0000 (15:48 +0000)
From: "Robin Barker" <Robin.Barker@npl.co.uk>
Message-ID: <46A0F33545E63740BC7563DE59CA9C6D093AA6@exchsvr2.npl.ad.local>

p4raw-id: //depot/perl@33608

Makefile.SH
regen.pl
regen_lib.pl

index 3f23e49..947f922 100644 (file)
@@ -1033,9 +1033,12 @@ AUTOGEN_FILES = keywords.h opcode.h opnames.h pp_proto.h pp.sym proto.h \
 
 .PHONY: regen_headers regen_pods regen_all
 
-regen regen_headers:   FORCE
+regen: FORCE
        -perl regen.pl
 
+regen_headers: FORCE
+       -perl regen.pl -v
+
 regen_pods:    FORCE
        -cd pod; $(LDLIBPTH) $(MAKE) regen_pods
 
index 821fa2e..3d2ad4f 100644 (file)
--- a/regen.pl
+++ b/regen.pl
@@ -11,7 +11,6 @@ require 5.003;        # keep this compatible, an old perl is all we may have before
 use strict;
 my $perl = $^X;
 
-require 'regen_lib.pl';
 # keep warnings.pl in sync with the CPAN distribution by not requiring core
 # changes.  Um, what ?
 # safer_unlink ("warnings.h", "lib/warnings.pm");
@@ -46,10 +45,11 @@ sub do_cksum {
 
 foreach my $pl (qw (keywords.pl opcode.pl embed.pl
                    regcomp.pl warnings.pl autodoc.pl reentr.pl)) {
-  print "$^X $pl\n";
+  my @command =  ($^X, $pl, @ARGV);
+  print "@command\n";
   my %cksum0;
   %cksum0 = do_cksum($pl) unless $pl eq 'warnings.pl'; # the files were removed
-  system "$^X $pl";
+  system @command;
   next if $pl eq 'warnings.pl'; # the files were removed
   my %cksum1 = do_cksum($pl);
   my @chg;
index 7605271..89ac3f9 100644 (file)
@@ -1,6 +1,6 @@
 #!/usr/bin/perl -w
 use strict;
-use vars qw($Is_W32 $Is_OS2 $Is_Cygwin $Is_NetWare $Needs_Write);
+use vars qw($Is_W32 $Is_OS2 $Is_Cygwin $Is_NetWare $Needs_Write $Verbose);
 use Config; # Remember, this is running using an existing perl
 use File::Compare;
 use Symbol;
@@ -17,6 +17,8 @@ if ($Is_NetWare) {
 
 $Needs_Write = $Is_OS2 || $Is_W32 || $Is_Cygwin || $Is_NetWare;
 
+@ARGV = grep { not($_ eq '-v' and $Verbose = 1) } @ARGV;
+
 sub safer_unlink {
   my @names = @_;
   my $cnt = 0;
@@ -44,7 +46,7 @@ sub rename_if_different {
   my ($from, $to) = @_;
 
   if (compare($from, $to) == 0) {
-      warn "no changes between '$from' & '$to'\n";
+      warn "no changes between '$from' & '$to'\n" if $Verbose;
       safer_unlink($from);
       return;
   }