The new smart match dispatch table for 5.10.1 onwards
[p5sagit/p5-mst-13.2.git] / configpm
index 1fb9c3e..1825b0d 100755 (executable)
--- a/configpm
+++ b/configpm
@@ -458,7 +458,19 @@ my $summary_expanded;
 sub myconfig {
     return $summary_expanded if $summary_expanded;
     ($summary_expanded = $summary) =~ s{\$(\w+)}
-                { my $c = $Config::Config{$1}; defined($c) ? $c : 'undef' }ge;
+                { 
+                       my $c;
+                       if ($1 eq 'git_ancestor_line') {
+                               if ($Config::Config{git_ancestor}) {
+                                       $c= "\n  Ancestor: $Config::Config{git_ancestor}";
+                               } else {
+                                       $c= "";
+                               }
+                       } else {
+                               $c = $Config::Config{$1}; 
+                       }
+                       defined($c) ? $c : 'undef' 
+               }ge;
     $summary_expanded;
 }
 
@@ -535,6 +547,15 @@ foreach my $prefix (qw(libs libswanted)) {
 
 $heavy_txt .= "EOVIRTUAL\n";
 
+$heavy_txt .= <<'ENDOFGIT';
+eval {
+       # do not have hairy conniptions if this isnt available
+       require 'Config_git.pl';
+       $Config_SH_expanded .= $Config::Git_Data;
+       1;
+} or warn "Warning: failed to load Config_git.pl, something strange about this perl...\n";
+ENDOFGIT
+
 $heavy_txt .= $fetch_string;
 
 $config_txt .= <<'ENDOFEND';
@@ -832,6 +853,8 @@ some of the variables described below, or may have extraneous variables
 specific to that particular port.  See the port specific documentation
 in such cases.
 
+=cut
+
 ENDOFTAIL
 
 if ($Opts{glossary}) {
@@ -848,12 +871,16 @@ sub process {
       print CONFIG_POD <<EOF if $text;
 =back
 
+=cut
+
 EOF
       print CONFIG_POD <<EOF;
 =head2 $c
 
 =over 4
 
+=cut
+
 EOF
      $text = 1;
     }