Hi Michael,

I've put some of my CPAN modules into Subversion, the new source code
management system to replace CVS, see

    http://subversion.tigris.org/
    http://svn.orcaware.com:8000/repos/trunk/apache_configparser/

I've attached a patch to make MakeMaker ignore Subversion's .svn
directories, analogous to RCS, CVS, etc.

You may want to take a look at my changes to libscan in MM_Unix.pm.
The original libscan had this:

-    return '' if $path =~ m:\b(RCS|CVS|SCCS)\b: ;

and I changed it to this:

+    return '' if $path =~ m:(\bRCS|\bCVS|\bSCCS|\.svn)\b: ;

I originally tried this:

+    return '' if $path =~ m:\b(RCS|CVS|SCCS|\.svn)\b: ;

but this didn't match on .svn, because the \b in front.  I'm not too
happy with the new code, so you may want to figure out a better match
for .svn.

Also, I noticed that libscan for MM_MacOS and MM_Unix differ in the
regular expression.  The MacOS version doesn't have the \b's.

Best,
Blair

-- 
Blair Zajac <[EMAIL PROTECTED]>
Web and OS performance plots - http://www.orcaware.com/orca/
diff -ru ../ExtUtils-MakeMaker-6.05.0/lib/ExtUtils/Manifest.pm 
./lib/ExtUtils/Manifest.pm
--- ../ExtUtils-MakeMaker-6.05.0/lib/ExtUtils/Manifest.pm       2002-05-25 
14:17:51.000000000 -0700
+++ ./lib/ExtUtils/Manifest.pm  2002-11-18 12:45:46.000000000 -0800
@@ -466,6 +466,7 @@
     # Version control files and dirs.
     \bRCS\b
     \bCVS\b
+    \b.svn\b
     ,v$
 
     # Makemaker generated files and dirs.
diff -ru ../ExtUtils-MakeMaker-6.05.0/lib/ExtUtils/MANIFEST.SKIP 
./lib/ExtUtils/MANIFEST.SKIP
--- ../ExtUtils-MakeMaker-6.05.0/lib/ExtUtils/MANIFEST.SKIP     2002-03-24 
23:19:30.000000000 -0800
+++ ./lib/ExtUtils/MANIFEST.SKIP        2002-11-18 12:45:23.000000000 -0800
@@ -1,6 +1,7 @@
 # Avoid version control files.
 \bRCS\b
 \bCVS\b
+\b.svn\b
 ,v$
 
 # Avoid Makemaker generated and utility files.
diff -ru ../ExtUtils-MakeMaker-6.05.0/lib/ExtUtils/MM_MacOS.pm 
./lib/ExtUtils/MM_MacOS.pm
--- ../ExtUtils-MakeMaker-6.05.0/lib/ExtUtils/MM_MacOS.pm       2002-08-26 
18:27:56.000000000 -0700
+++ ./lib/ExtUtils/MM_MacOS.pm  2002-11-18 12:44:40.000000000 -0800
@@ -542,7 +542,7 @@
        require File::Find;
        File::Find::find(sub {
            if (-d $_){
-               if ($_ eq "CVS" || $_ eq "RCS"){
+               if ($_ eq "CVS" || $_ eq "RCS" || $_ eq ".svn" ){
                    $File::Find::prune = 1;
                }
                return;
@@ -580,7 +580,7 @@
 
 Takes a path to a file that is found by init_dirscan and returns false
 if we don't want to include this file in the library. Mainly used to
-exclude RCS, CVS, and SCCS directories from installation.
+exclude RCS, CVS, SCCS, and .svn directories from installation.
 
 =cut
 
@@ -588,7 +588,7 @@
 
 sub libscan {
     my($self,$path) = @_;
-    return '' if $path =~ m/:(RCS|CVS|SCCS):/ ;
+    return '' if $path =~ m/:(RCS|CVS|SCCS|\.svn):/ ;
     $path;
 }
 
diff -ru ../ExtUtils-MakeMaker-6.05.0/lib/ExtUtils/MM_Unix.pm ./lib/ExtUtils/MM_Unix.pm
--- ../ExtUtils-MakeMaker-6.05.0/lib/ExtUtils/MM_Unix.pm        2002-08-26 
18:17:55.000000000 -0700
+++ ./lib/ExtUtils/MM_Unix.pm   2002-11-18 12:58:13.000000000 -0800
@@ -1376,7 +1376,7 @@
        require File::Find;
         File::Find::find(sub {
             if (-d $_){
-                if ($_ eq "CVS" || $_ eq "RCS"){
+                if ($_ eq "CVS" || $_ eq "RCS" || $_ eq ".svn"){
                     $File::Find::prune = 1;
                 }
                 return;
@@ -2386,7 +2386,7 @@
 
 Takes a path to a file that is found by init_dirscan and returns false
 if we don't want to include this file in the library. Mainly used to
-exclude RCS, CVS, and SCCS directories from installation.
+exclude RCS, CVS, SCCS, and .svn directories from installation.
 
 =cut
 
@@ -2394,7 +2394,7 @@
 
 sub libscan {
     my($self,$path) = @_;
-    return '' if $path =~ m:\b(RCS|CVS|SCCS)\b: ;
+    return '' if $path =~ m:(\bRCS|\bCVS|\bSCCS|\.svn)\b: ;
     $path;
 }
 
diff -ru ../ExtUtils-MakeMaker-6.05.0/t/MM_Unix.t ./t/MM_Unix.t
--- ../ExtUtils-MakeMaker-6.05.0/t/MM_Unix.t    2002-05-05 18:20:34.000000000 -0700
+++ ./t/MM_Unix.t       2002-11-18 12:47:59.000000000 -0800
@@ -18,7 +18,7 @@
         plan skip_all => 'Non-Unix platform';
     }
     else {
-        plan tests => 112;
+        plan tests => 113;
     }
 }
 
@@ -168,7 +168,8 @@
 is ($t->libscan('RCS'),'','libscan on RCS');
 is ($t->libscan('CVS'),'','libscan on CVS');
 is ($t->libscan('SCCS'),'','libscan on SCCS');
-is ($t->libscan('Fatty'),'Fatty','libscan on something not RCS, CVS or SCCS');
+is ($t->libscan('.svn'),'','libscan on .svn');
+is ($t->libscan('Fatty'),'Fatty','libscan on something not RCS, CVS SCCS or .svn');
 
 ###############################################################################
 # maybe_command

Reply via email to