Devel::PatchPerl - Patch perl source a la Devel::PPPort's buildperl.pl
version 2.08
use strict; use warnings; use Devel::PatchPerl; Devel::PatchPerl->patch_source( '5.6.1', '/path/to/untarred/perl/source/perl-5.6.1' );
Devel::PatchPerl is a modularisation of the patching code contained in Devel::PPPort's buildperl.pl.
buildperl.pl
It does not build perls, it merely provides an interface to the source patching functionality.
patch_source
Takes two parameters, a perl version and the path to unwrapped perl source for that version. It dies on any errors.
perl
If you don't supply a perl version, it will attempt to auto-determine the perl version from the specified path.
If you don't supply the path to unwrapped perl source, it will assume the current working directory.
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.
See Devel::PatchPerl::Plugin for details of Devel::PatchPerl's plugin system.
Devel::PatchPerl will normally update the patchlevel.h 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 patchlevel.h when in a Git repository, set the env var PERL5_PATCHPERL_PATCHLEVEL to a true value.
patchlevel.h
PERL5_PATCHPERL_PATCHLEVEL
Alternatively, call patchperl with the --patchlevel option.
patchperl
--patchlevel
Devel::PatchPerl is intended only to facilitate the building of perls, not to facilitate the testing of perls. This means that it will not patch failing tests in the perl testsuite.
building
testing
Devel::PPPort
Devel::PatchPerl::Plugin
Chris Williams <chris@bingosnet.co.uk>
This software is copyright (c) 2021 by Chris Williams and Marcus Holland-Moritz.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Devel::PatchPerl, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Devel::PatchPerl
CPAN shell
perl -MCPAN -e shell install Devel::PatchPerl
For more information on module installation, please visit the detailed CPAN module installation guide.