| 
									
										
										
										
											2016-09-01 04:56:02 +08:00
										 |  |  | SUBDIRS = man1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | {- | 
					
						
							|  |  |  |  use File::Spec::Functions qw(:DEFAULT abs2rel rel2abs); | 
					
						
							|  |  |  |  use File::Basename; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-02-22 13:49:24 +08:00
										 |  |  |  my $sourcedir = catdir($config{sourcedir}, 'doc'); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-09-01 04:56:02 +08:00
										 |  |  |  foreach my $section ((1, 3, 5, 7)) { | 
					
						
							| 
									
										
										
										
											2021-05-21 13:16:18 +08:00
										 |  |  |      my @imagefiles = (); | 
					
						
							| 
									
										
										
										
											2016-09-01 04:56:02 +08:00
										 |  |  |      my @htmlfiles = (); | 
					
						
							|  |  |  |      my @manfiles = (); | 
					
						
							| 
									
										
										
										
											2021-05-21 13:16:18 +08:00
										 |  |  |      my %pngfiles = | 
					
						
							|  |  |  |          map { $_ => 1 } glob catfile($sourcedir, "man$section", "img", "*.png"); | 
					
						
							| 
									
										
										
										
											2016-09-01 04:56:02 +08:00
										 |  |  |      my %podfiles = | 
					
						
							|  |  |  |          map { $_ => 1 } glob catfile($sourcedir, "man$section", "*.pod"); | 
					
						
							| 
									
										
										
										
											2021-09-21 08:59:56 +08:00
										 |  |  |      my %podinfiles = | 
					
						
							| 
									
										
										
										
											2016-09-01 04:56:02 +08:00
										 |  |  |          map { $_ => 1 } glob catfile($sourcedir, "man$section", "*.pod.in"); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |      foreach (keys %podinfiles) { | 
					
						
							|  |  |  |          (my $p = $_) =~ s|\.in$||i; | 
					
						
							|  |  |  |          $podfiles{$p} = 1; | 
					
						
							|  |  |  |      } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |      foreach my $p (sort keys %podfiles) { | 
					
						
							|  |  |  |          my $podfile = abs2rel($p, $sourcedir); | 
					
						
							|  |  |  |          my $podname = basename($podfile, '.pod'); | 
					
						
							|  |  |  |          my $podinfile = $podinfiles{"$p.in"} ? "$podfile.in" : undef; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |          my $podname = basename($podfile, ".pod"); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |          my $htmlfile = abs2rel(catfile($buildtop, "doc", "html", "man$section", | 
					
						
							|  |  |  |                                         "$podname.html"), | 
					
						
							|  |  |  |                                 catdir($buildtop, "doc")); | 
					
						
							|  |  |  |          my $manfile = abs2rel(catfile($buildtop, "doc", "man", "man$section", | 
					
						
							|  |  |  |                                        "$podname.$section"), | 
					
						
							|  |  |  |                                catdir($buildtop, "doc")); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |          # The build.info format requires file specs to be in Unix format. | 
					
						
							|  |  |  |          # Especially, since VMS file specs use [ and ], the build.info parser | 
					
						
							|  |  |  |          # will otherwise get terribly confused. | 
					
						
							|  |  |  |          if ($^O eq 'VMS') { | 
					
						
							|  |  |  |              $htmlfile = VMS::Filespec::unixify($htmlfile); | 
					
						
							|  |  |  |              $manfile = VMS::Filespec::unixify($manfile); | 
					
						
							|  |  |  |              $podfile = VMS::Filespec::unixify($podfile); | 
					
						
							|  |  |  |              $podinfile = VMS::Filespec::unixify($podinfile) | 
					
						
							|  |  |  |                  if defined $podinfile; | 
					
						
							|  |  |  |          } elsif ($^O eq 'MSWin32') { | 
					
						
							|  |  |  |              $htmlfile =~ s|\\|/|g; | 
					
						
							|  |  |  |              $manfile =~ s|\\|/|g; | 
					
						
							|  |  |  |              $podfile =~ s|\\|/|g; | 
					
						
							|  |  |  |              $podinfile =~ s|\\|/|g | 
					
						
							|  |  |  |                  if defined $podinfile; | 
					
						
							|  |  |  |          } | 
					
						
							|  |  |  |          push @htmlfiles, $htmlfile; | 
					
						
							|  |  |  |          push @manfiles, $manfile; | 
					
						
							|  |  |  |          $OUT .= << "_____"; | 
					
						
							|  |  |  | DEPEND[$htmlfile]=$podfile | 
					
						
							|  |  |  | GENERATE[$htmlfile]=$podfile | 
					
						
							|  |  |  | DEPEND[$manfile]=$podfile | 
					
						
							|  |  |  | GENERATE[$manfile]=$podfile | 
					
						
							|  |  |  | _____ | 
					
						
							|  |  |  |          $OUT .= << "_____" if $podinfile; | 
					
						
							| 
									
										
										
										
											2021-02-04 22:32:37 +08:00
										 |  |  | DEPEND[$podfile]{pod}=$podinfile | 
					
						
							| 
									
										
										
										
											2016-09-01 04:56:02 +08:00
										 |  |  | GENERATE[$podfile]=$podinfile | 
					
						
							|  |  |  | _____ | 
					
						
							|  |  |  |      } | 
					
						
							| 
									
										
										
										
											2021-05-21 13:16:18 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  |      foreach my $p (sort keys %pngfiles) { | 
					
						
							|  |  |  |          my $relpath = abs2rel($p, $sourcedir); | 
					
						
							|  |  |  |          my $imagefile = abs2rel(catfile($buildtop, "doc", "$relpath"), | 
					
						
							|  |  |  |                                  catdir($buildtop, "doc")); | 
					
						
							|  |  |  |          push @imagefiles, $imagefile; | 
					
						
							|  |  |  |      } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |      $OUT .= "IMAGEDOCS[man$section]=" . join(" \\\n", @imagefiles) . "\n"; | 
					
						
							| 
									
										
										
										
											2016-09-01 04:56:02 +08:00
										 |  |  |      $OUT .= "HTMLDOCS[man$section]=" . join(" \\\n", @htmlfiles) . "\n"; | 
					
						
							|  |  |  |      $OUT .= "MANDOCS[man$section]=" . join(" \\\n", @manfiles) . "\n"; | 
					
						
							|  |  |  |  } | 
					
						
							|  |  |  |  -} |