.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.40) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Devel::PatchPerl 3pm" .TH Devel::PatchPerl 3pm "2021-01-15" "perl v5.32.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Devel::PatchPerl \- Patch perl source a la Devel::PPPort's buildperl.pl .SH "VERSION" .IX Header "VERSION" version 2.08 .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& use strict; \& use warnings; \& \& use Devel::PatchPerl; \& \& Devel::PatchPerl\->patch_source( \*(Aq5.6.1\*(Aq, \*(Aq/path/to/untarred/perl/source/perl\-5.6.1\*(Aq ); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" Devel::PatchPerl is a modularisation of the patching code contained in Devel::PPPort's \&\f(CW\*(C`buildperl.pl\*(C'\fR. .PP It does not build perls, it merely provides an interface to the source patching functionality. .SH "FUNCTION" .IX Header "FUNCTION" .ie n .IP """patch_source""" 4 .el .IP "\f(CWpatch_source\fR" 4 .IX Item "patch_source" Takes two parameters, a \f(CW\*(C`perl\*(C'\fR version and the path to unwrapped perl source for that version. It dies on any errors. .Sp If you don't supply a \f(CW\*(C`perl\*(C'\fR version, it will attempt to auto-determine the \&\f(CW\*(C`perl\*(C'\fR version from the specified path. .Sp If you don't supply the path to unwrapped perl source, it will assume the current working directory. .ie n .IP """determine_version""" 4 .el .IP "\f(CWdetermine_version\fR" 4 .IX Item "determine_version" Takes one optional parameter, the path to unwrapped perl source. It returns the perl version of the source code at the given location. It returns undef on error. .Sp If you don't supply the path to unwrapped perl source, it will assume the current working directory. .SH "PLUGIN SYSTEM" .IX Header "PLUGIN SYSTEM" See Devel::PatchPerl::Plugin for details of Devel::PatchPerl's plugin system. .SH "PATCHLEVEL" .IX Header "PATCHLEVEL" Devel::PatchPerl will normally update the \f(CW\*(C`patchlevel.h\*(C'\fR file in the perl source tree to indicate that it has applied local patches. This behaviour is negated if it is detected that it is operating in a git repository. To override this and update \&\f(CW\*(C`patchlevel.h\*(C'\fR when in a Git repository, set the env var \f(CW\*(C`PERL5_PATCHPERL_PATCHLEVEL\*(C'\fR to a true value. .PP Alternatively, call \f(CW\*(C`patchperl\*(C'\fR with the \f(CW\*(C`\-\-patchlevel\*(C'\fR option. .SH "CAVEAT" .IX Header "CAVEAT" Devel::PatchPerl is intended only to facilitate the \f(CW\*(C`building\*(C'\fR of perls, not to facilitate the \f(CW\*(C`testing\*(C'\fR of perls. This means that it will not patch failing tests in the perl testsuite. .SH "SEE ALSO" .IX Header "SEE ALSO" Devel::PPPort .PP Devel::PatchPerl::Plugin .SH "AUTHOR" .IX Header "AUTHOR" Chris Williams .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" This software is copyright (c) 2021 by Chris Williams and Marcus Holland-Moritz. .PP This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.