Move pod2man.PL, pod2text.PL, podselect.PL into cpan/podlators/scripts
authorNicholas Clark <nick@ccl4.org>
Tue, 5 Oct 2010 10:07:14 +0000 (11:07 +0100)
committerNicholas Clark <nick@ccl4.org>
Tue, 5 Oct 2010 12:48:51 +0000 (13:48 +0100)
Let ExtUtils::MakeMaker deal with running these extraction scripts, rather than
repeating the logic in (at least) 5 places.

15 files changed:
Cross/Makefile-cross-SH
MANIFEST
Makefile.SH
Porting/Maintainers.pl
cpan/podlators/Makefile.PL
cpan/podlators/scripts/pod2man.PL [moved from pod/pod2man.PL with 100% similarity]
cpan/podlators/scripts/pod2text.PL [moved from pod/pod2text.PL with 100% similarity]
pod/Makefile.SH
t/porting/dual-life.t
utils.lst
vms/descrip_mms.template
win32/Makefile
win32/Makefile.ce
win32/makefile.mk
win32/pod.mak

index ae9cf1f..6e1b49a 100644 (file)
@@ -332,10 +332,10 @@ shextract = Makefile cflags config.h makeaperl makedepend \
 # Files to be built with variable substitution after miniperl is
 # available.  Dependencies handled manually below (for now).
 
-pl = pod/pod2html.PL pod/pod2man.PL pod/pod2text.PL
+pl = pod/pod2html.PL
 
 # lib/lib.pm is not listed here because it has a rule of its own.
-plextract = pod/pod2html pod/pod2man pod/pod2text
+plextract = pod/pod2html
 
 addedbyconf = UU $(shextract) $(plextract) lib/lib.pm pstruct
 
index a984448..a7dc7b6 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
@@ -1645,6 +1645,8 @@ cpan/podlators/lib/Pod/Text/Overstrike.pm Convert POD data to formatted overstri
 cpan/podlators/lib/Pod/Text.pm                 Pod-Parser - convert POD data to formatted ASCII text
 cpan/podlators/lib/Pod/Text/Termcap.pm         Convert POD data to ASCII text with format escapes
 cpan/podlators/Makefile.PL
+cpan/podlators/scripts/pod2man.PL      Precursor for translator to turn pod into manpage
+cpan/podlators/scripts/pod2text.PL     Precursor for translator to turn pod into text
 cpan/podlators/t/basic.cap                     podlators test
 cpan/podlators/t/basic.clr                     podlators test
 cpan/podlators/t/basic.man                     podlators test
@@ -4143,8 +4145,6 @@ pod/perlvms.pod                   Perl notes for VMS
 pod/perlxs.pod                 Perl XS application programming interface
 pod/perlxstut.pod              Perl XS tutorial
 pod/pod2html.PL                        Precursor for translator to turn pod into HTML
-pod/pod2man.PL                 Precursor for translator to turn pod into manpage
-pod/pod2text.PL                        Precursor for translator to turn pod into text
 pod/roffitall                  troff the whole man page set
 pod/rofftoc                    Generate a table of contents in troff format
 pod/splitman                   Splits perlfunc into multiple man pages
index 4a828b0..1dec783 100755 (executable)
@@ -443,9 +443,9 @@ shextract = Makefile cflags config.h makeaperl makedepend \
 # Files to be built with variable substitution after miniperl is
 # available.  Dependencies handled manually below (for now).
 
-pl = pod/pod2html.PL pod/pod2man.PL pod/pod2text.PL
+pl = pod/pod2html.PL
 
-plextract = pod/pod2html pod/pod2man pod/pod2text
+plextract = pod/pod2html
 
 addedbyconf = UU $(shextract) $(plextract) pstruct
 
index c7de5ee..247b58b 100755 (executable)
@@ -1202,15 +1202,9 @@ use File::Glob qw(:case);
        {
        'MAINTAINER'    => 'rra',
        'DISTRIBUTION'  => 'RRA/podlators-2.3.1.tar.gz',
-       'FILES'         => q[cpan/podlators
-                            pod/pod2man.PL
-                            pod/pod2text.PL
-                           ],
+       'FILES'         => q[cpan/podlators],
        'EXCLUDED'      => [ qw{ Makefile.PL } ],
        'CUSTOMIZED'    => [ qw{ Makefile.PL } ],
-       'MAP'           => { '' => 'cpan/podlators/',
-                            'scripts/' => 'pod/',
-                          },
        'UPSTREAM'      => 'cpan',
        },
 
index fb80c34..de3288d 100644 (file)
@@ -1,7 +1,27 @@
 # core-only Makefile.PL
+use strict;
 use ExtUtils::MakeMaker;
+require File::Copy;
+
+my @scripts = qw(pod2man.PL pod2text.PL);
+my $script_ext = $^O eq 'VMS' ? '.com' : '';
+my %pod_scripts;
+
+foreach (@scripts) {
+    File::Copy::copy("scripts/$_", $_)
+           or die "Can't copy scripts/$_ to $_: $!";
+    my $output = s/.PL$/$script_ext/r;
+    $pod_scripts{$_} = $output;
+}
+
+my @exe_files = values %pod_scripts;
+
 WriteMakefile (
     NAME          => 'Pod',
     DISTNAME      => 'podlators',
     VERSION_FROM  => 'VERSION',
+    realclean     => { FILES => "@scripts" },
+    PL_FILES      => \%pod_scripts,
+    EXE_FILES     => \@exe_files,
+    clean         => { FILES => "@exe_files" },
 );
index 450b7ab..3581424 100644 (file)
@@ -54,13 +54,14 @@ LDLIBPTH = $ldlibpth
 ## In the following dollars and backticks do not need the extra backslash.
 $spitshell >>Makefile <<'!NO!SUBS!'
 
-CONVERTERS = pod2html pod2man pod2text
+CONVERTERS = pod2html
 
 HTMLROOT = /   # Change this to fix cross-references in HTML
 POD2HTML = pod2html \
            --htmlroot=$(HTMLROOT) \
            --podroot=.. --podpath=pod:lib:ext:vms \
            --libpods=perlfunc:perlguts:perlvar:perlrun:perlop
+POD2MAN = ../cpan/podlators/pod2man
 POD2LATEX = ../cpan/Pod-LaTeX/pod2latex
 PODCHECKER =  ../cpan/Pod-Parser/podchecker
 
@@ -72,7 +73,7 @@ all: $(CONVERTERS) man
 
 converters: $(CONVERTERS)
 
-man:   pod2man $(MAN)
+man:   $(POD2MAN) $(MAN)
 
 html:  pod2html $(HTML)
 
@@ -85,11 +86,11 @@ toc perltoc.pod:    buildtoc
 
 .SUFFIXES: .man
 
-.pm.man:     pod2man
-       $(REALPERL) -I../lib pod2man $*.pm >$*.man
+.pm.man:     $(POD2MAN)
+       $(REALPERL) -I../lib $(POD2MAN) $*.pm >$*.man
 
-.pod.man:     pod2man
-       $(REALPERL) -I../lib pod2man $*.pod >$*.man
+.pod.man:     $(POD2MAN)
+       $(REALPERL) -I../lib $(POD2MAN) $*.pod >$*.man
 
 .SUFFIXES: .html
 
@@ -130,10 +131,4 @@ check:     $(PODCHECKER)
 pod2html:      pod2html.PL ../lib/Config.pm
        $(LDLIBPTH) $(PERL) -I ../lib pod2html.PL
 
-pod2man:       pod2man.PL ../lib/Config.pm
-       $(LDLIBPTH) $(PERL) -I ../lib pod2man.PL
-
-pod2text:      pod2text.PL ../lib/Config.pm
-       $(LDLIBPTH) $(PERL) -I ../lib pod2text.PL
-
 !NO!SUBS!
index 3ec88af..6e28763 100644 (file)
@@ -28,6 +28,9 @@ my %dist_dir_exe;
 foreach (qw (podchecker podselect pod2usage)) {
     $dist_dir_exe{lc "$_.PL"} = "../cpan/Pod-Parser/$_";
 };
+foreach (qw (pod2man pod2text)) {
+    $dist_dir_exe{lc "$_.PL"} = "../cpan/podlators/$_";
+};
 
 my @programs;
 
index 42e46ef..cc952bc 100644 (file)
--- a/utils.lst
+++ b/utils.lst
@@ -1,7 +1,7 @@
 pod/pod2html
 cpan/Pod-LaTeX/blib/script/pod2latex
-pod/pod2man
-pod/pod2text
+cpan/podlators/blib/script/pod2man
+cpan/podlators/blib/script/pod2text
 cpan/Pod-Parser/blib/script/pod2usage
 cpan/Pod-Parser/blib/script/podchecker
 cpan/Pod-Parser/blib/script/podselect
index b059e75..cc0c415 100644 (file)
@@ -394,7 +394,7 @@ libmods : $(LIBPREREQ)
        @ $(NOOP)
 utils : $(utils1) $(utils2) $(utils3) $(utils4) $(utils5)
        @ $(NOOP)
-podxform : [.lib.pods]pod2text.com [.lib.pods]pod2html.com [.lib.pods]pod2man.com
+podxform : [.lib.pods]pod2html.com
        @ $(NOOP)
 x2p : [.x2p]$(DBG)a2p$(E) [.x2p]s2p.com [.x2p]find2perl.com 
        @ $(NOOP)
@@ -699,16 +699,6 @@ nonxsext : $(LIBPREREQ) preplibrary $(MINIPERL_EXE)
        $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
        Copy/NoConfirm/Log [.pod]pod2html.com [.lib.pods]
 
-[.lib.pods]pod2man.com : [.pod]pod2man.PL $(ARCHDIR)Config.pm
-       @ If F$Search("[.lib]pods.dir").eqs."" Then Create/Directory [.lib.pods]
-       $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
-       Copy/NoConfirm/Log [.pod]pod2man.com [.lib.pods]
-
-[.lib.pods]pod2text.com : [.pod]pod2text.PL $(ARCHDIR)Config.pm
-       @ If F$Search("[.lib]pods.dir").eqs."" Then Create/Directory [.lib.pods]
-       $(MINIPERL) -"I[-.lib]" $(MMS$SOURCE)
-       Copy/NoConfirm/Log [.pod]pod2text.com [.lib.pods]
-
 preplibrary : $(MINIPERL_EXE) $(LIBPREREQ) 
 
 makeppport : $(MINIPERL_EXE) $(ARCHDIR)Config.pm nonxsext
index c6222ec..9278618 100644 (file)
@@ -613,8 +613,6 @@ UTILS               =                       \
                ..\utils\shasum         \
                ..\utils\instmodsh      \
                ..\pod\pod2html         \
-               ..\pod\pod2man          \
-               ..\pod\pod2text         \
                ..\x2p\find2perl        \
                ..\x2p\psed             \
                ..\x2p\s2p              \
@@ -1199,7 +1197,7 @@ distclean: realclean
            perlriscos.pod perlsolaris.pod perlsymbian.pod perltoc.pod \
            perltru64.pod perltw.pod perluniprops.pod perluts.pod \
            perlvmesa.pod perlvos.pod perlwin32.pod \
-           pod2html pod2man pod2text
+           pod2html
        -cd ..\utils && del /f h2ph splain perlbug pl2pm c2ph pstruct h2xs \
            perldoc perlivp dprofpp libnetcfg enc2xs piconv cpan *.bat \
            xsubpp instmodsh prove ptar ptardiff cpanp-run-perl cpanp cpan2dist shasum corelist config_data
index f783983..d36764e 100644 (file)
@@ -668,8 +668,6 @@ EXTENSION_PM        =               \
                $(ERRNO_PM)
 
 POD2HTML       = $(PODDIR)\pod2html
-POD2MAN                = $(PODDIR)\pod2man
-POD2TEXT       = $(PODDIR)\pod2text
 
 CFG_VARS = \
  "INST_DRV=$(INST_DRV)" \
index e6973ec..c12260f 100644 (file)
@@ -777,8 +777,6 @@ UTILS               =                       \
                ..\utils\shasum         \
                ..\utils\instmodsh      \
                ..\pod\pod2html         \
-               ..\pod\pod2man          \
-               ..\pod\pod2text         \
                ..\x2p\find2perl        \
                ..\x2p\psed             \
                ..\x2p\s2p              \
@@ -1563,7 +1561,7 @@ distclean: realclean
            perlriscos.pod perlsolaris.pod perlsymbian.pod perltoc.pod \
            perltru64.pod perltw.pod perluniprops.pod perluts.pod \
            perlvmesa.pod perlvos.pod perlwin32.pod \
-           pod2html pod2man pod2text
+           pod2html
        -cd ..\utils && del /f h2ph splain perlbug pl2pm c2ph pstruct h2xs \
            perldoc perlivp dprofpp libnetcfg enc2xs piconv cpan *.bat \
            xsubpp instmodsh prove ptar ptardiff cpanp-run-perl cpanp cpan2dist shasum corelist config_data
index d78a351..dcd10e5 100644 (file)
@@ -1,10 +1,12 @@
-CONVERTERS = pod2html pod2man pod2text
+CONVERTERS = pod2html
 
 HTMLROOT = /   # Change this to fix cross-references in HTML
 POD2HTML = pod2html \
            --htmlroot=$(HTMLROOT) \
            --podroot=.. --podpath=pod:lib:ext:vms \
            --libpods=perlfunc:perlguts:perlvar:perlrun:perlop
+POD2MAN = ../cpan/podlators/pod2man
+POD2TEXT = ../cpan/podlators/pod2text
 POD2LATEX = ../cpan/Pod-LaTeX/pod2latex
 PODCHECKER = ../cpan/Pod-Parser/podchecker
 
@@ -585,7 +587,7 @@ TEX = \
        perlxs.tex      \
        perlxstut.tex   
 
-man:   pod2man $(MAN)
+man:   $(POD2MAN) $(MAN)
 
 html:  pod2html $(HTML)
 
@@ -599,10 +601,10 @@ toc:
 .SUFFIXES: .man
 
 .pm.man:
-       $(PERL) -I../lib pod2man $*.pm >$*.man
+       $(PERL) -I../lib $(POD2MAN) $*.pm >$*.man
 
 .pod.man:
-       $(PERL) -I../lib pod2man $*.pod >$*.man
+       $(PERL) -I../lib $(POD2MAN) $*.pod >$*.man
 
 .SUFFIXES: .html
 
@@ -640,8 +642,3 @@ check:      $(PODCHECKER)
 pod2html:      pod2html.PL ../lib/Config.pm
        $(PERL) -I ../lib $(ICWD) pod2html.PL
 
-pod2man:       pod2man.PL ../lib/Config.pm
-       $(PERL) -I ../lib $(ICWD) pod2man.PL
-
-pod2text:      pod2text.PL ../lib/Config.pm
-       $(PERL) -I ../lib $(ICWD) pod2text.PL