From ca8d60d1b5b3bdf135a6c8eba9ced89fbb74fbb5 Mon Sep 17 00:00:00 2001 From: Tony Cook Date: Tue, 16 Jul 2024 10:29:27 +1000 Subject: [PATCH] test-dist-modules.pl: add some POD --- Porting/test-dist-modules.pl | 84 ++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) diff --git a/Porting/test-dist-modules.pl b/Porting/test-dist-modules.pl index 013f10a6640a..d6a04c002055 100644 --- a/Porting/test-dist-modules.pl +++ b/Porting/test-dist-modules.pl @@ -1,6 +1,9 @@ #!perl # this should be perl 5.8 compatible, since it will be used # with old perls while testing dist modules on those perls +# +# see C + use strict; use warnings; use File::Temp "tempdir"; @@ -321,6 +324,87 @@ sub usage { exit; } +=head2 NAME + +test-dist-modules.pl - test modules in dist/ against the perl invoked with + +=head1 SYNOPSIS + + # from a checked out clean perl source tree + # test all dist/ modules, abort on first failure + path/to/perl test-dist-modules.pl + + # test all dist/ modules, continue on failure + path/to/perl test-dist-modules.pl -c + + # test all dist/ modules, and install into path/to/perl's site_perl + path/to/perl test-dist-modules.pl -i + +=head1 DESCRIPTION + +F is used by the Github workflow to test +modules from F against the perl it is invoked with, within a +git clone of a development perl. This clone must be a clean clone, +ie. as with C . + +That perl should have any prerequisites needed by those modules +installed, at this point this includes sufficiently recent versions +of: + + ExtUtils::MakeMaker + Perl::OSType + Scalar::Util + Socket + version + +F will always test F first and +then use that when testing the other modules, even if invoked with a +distribution list. + +=head1 INVOKING F + +By default F will test each directory in +F, but you can test specific distributions by supplying them on +the command-line: + + path/to/perl test-dist-modules.pl threads + +which will test F and F. + +Options: + +=over + +=item * C<-i> + +=item * C<-install> + +Install the modules to the invoking perl's F. This may +require privileges such as running as C. + +=item * C<-c> + +=item * C<-continue> + +Continue testing modules even if one fails. + +=item * C<-s> + +=item * C<-separate> + +Install to a temp tree instead of to the invoking perl's F. +This is now the default. + +=item * C<-h> + +=item * C<-help> + +Produce a help message. + +=back + +=cut + __DATA__ -- t/test.pl -- #