Move the symlink fo perl51110delta.pod to perldelta.pod to a top level rule.
Nicholas Clark [Sun, 19 Apr 2009 15:51:50 +0000 (16:51 +0100)]
Add perldelta.pod to the generated_pods macro so that it is deleted still.

Makefile.SH
pod/buildtoc

index 063602c..f7532dc 100644 (file)
@@ -454,7 +454,7 @@ mini_obj =  $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
 ndt_obj = $(obj0) $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
 obj = $(ndt_obj) $(DTRACE_O)
 
-generated_pods = extra.pods pod/perlapi.pod pod/perlintern.pod
+generated_pods = extra.pods pod/perlapi.pod pod/perldelta.pod pod/perlintern.pod
 
 lintflags = \
     -b \
@@ -974,6 +974,9 @@ uni.data: miniperl$(EXE_EXT) $(CONFIGPM) lib/unicore/mktables
 pod/perlapi.pod pod/perlintern.pod: miniperl$(EXE_EXT) autodoc.pl embed.fnc
        $(RUN) ./miniperl$(EXE_EXT) -Ilib autodoc.pl
 
+pod/perldelta.pod: pod/perl5110delta.pod
+       cd pod && $(LNS) perl5110delta.pod perldelta.pod
+
 extra.pods: miniperl$(EXE_EXT)
        -@test ! -f extra.pods || rm -f `cat extra.pods`
        -@rm -f extra.pods
@@ -984,8 +987,6 @@ extra.pods: miniperl$(EXE_EXT)
        done
        -@rm -f pod/perlvms.pod
        -@test -f vms/perlvms.pod && cd pod && $(LNS) ../vms/perlvms.pod perlvms.pod && cd .. && echo "pod/perlvms.pod" >> extra.pods
-       -@rm -f pod/perldelta.pod
-       -@test -f pod/perl5110delta.pod && cd pod && $(LNS) perl5110delta.pod perldelta.pod && cd .. && echo "pod/perldelta.pod" >> extra.pods # See buildtoc
 
 extras.make: perl$(EXE_EXT)
        -@test ! -s extras.lst || PATH="`pwd`:${PATH}" PERL5LIB="`pwd`/lib" $(LDLIBPTH) $(RUN) ./perl -Ilib -MCPAN -e '@ARGV&&make(@ARGV)' `cat extras.lst`
index 3f3dde4..1ca0fdb 100644 (file)
@@ -698,14 +698,25 @@ sub do_unix {
   my $makefile_SH = join '', @_;
   die "$0: $name contains NUL bytes" if $makefile_SH =~ /\0/;
 
-  $makefile_SH =~ s/\n\s+-\@test -f \S+ && cd pod && \$\(LNS\) \S+ \S+ && cd \.\. && echo "\S+" >> extra.pods \# See buildtoc\n/\0/gm;
+  $makefile_SH =~ s{^(generated_pods = extra.pods).*}
+                  {join ' ', $1, map "pod/$_", sort keys %Generated, keys %Copies}mge;
+
+# pod/perldelta.pod: pod/perl511delta.pod
+#      cd pod && $(LNS) perl511delta.pod perldelta.pod
+
+  $makefile_SH =~ s!(
+pod/perl[a-z0-9_]+\.pod: pod/perl[a-z0-9_]+\.pod
+       cd pod && \$\(LNS\) perl[a-z0-9_]+\.pod perl[a-z0-9_]+\.pod
+)+!\0!gm;
 
   verify_contiguous($name, $makefile_SH, 'copy rules');
 
-  my @copy_rules = map "\t-\@test -f pod/$Copies{$_} && cd pod && \$(LNS) $Copies{$_} $_ && cd .. && echo \"pod/$_\" >> extra.pods # See buildtoc",
-    keys %Copies;
+  my @copy_rules = map "
+pod/$_: pod/$Copies{$_}
+       cd pod && \$(LNS) $Copies{$_} $_
+", keys %Copies;
 
-  $makefile_SH =~ s/\0+/join "\n", '', @copy_rules, ''/se;
+  $makefile_SH =~ s/\0+/join '', @copy_rules/se;
   $makefile_SH;
 
 }