Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Devel::PatchPerl::PlugUser)Contributed Perl DocumenDevel::PatchPerl::Plugin(3)

NAME
       Devel::PatchPerl::Plugin	- Devel::PatchPerl plugins explained

VERSION
       version 2.08

DESCRIPTION
       This document explains the Devel::PatchPerl plugin system.

       Plugins are a mechanism for providing additional	functionality to
       Devel::PatchPerl.

       Plugins are searched for	in the Devel::PatchPerl::Plugin	namespace.

INITIALISATION
       The plugin constructor is "patchperl".

       A plugin	is specified using the "PERL5_PATCHPERL_PLUGIN"	environment
       variable. It may	either be specified in full (ie.
       "Devel::PatchPerl::Plugin::Feegle") or as the short part	(ie.
       "Feegle").

	 $ export PERL5_PATCHPERL_PLUGIN=Devel::PatchPerl::Plugin::Feegle

	 $ export PERL5_PATCHPERL_PLUGIN=Feegle

       When Devel::PatchPerl has identified the	perl source patch and done its
       patching	it will	attempt	to load	the plugin identified. It will then
       call the	class method "patchperl" for the plugin	package, with the
       following parameters:

	 'version', the	Perl version of	the source tree;
	 'source', the absolute	path to	the Perl source	tree;
	 'patchexe', the 'patch' utility that can be used;

       Plugins are called with the current working directory being the root of
       the Perl	source tree, ie. "source".

       Summarised:

	 $ENV{PERL5_PATCHPERL_PLUGIN} =	'Devel::PatchPerl::Plugin::Feegle';

	 my $plugin = $ENV{PERL5_PATCHPERL_PLUGIN};

	 eval "require $plugin";

	 eval {
	   $plugin->patchperl( version => $vers, source	=> $srcdir, patchexe =>	$patch );
	 };

WHAT CAN PLUGINS DO?
       Anything	you desire to a	Perl source tree.

WHY USE	AN ENVIRONMENT VARIABLE	TO SPECIFY PLUGINS?
       So that indicating a plugin to use can be specified independently of
       whatever	mechanism is calling Devel::PatchPerl to do its	bidding.

       Think perlbrew.

AUTHOR
       Chris Williams <chris@bingosnet.co.uk>

COPYRIGHT AND LICENSE
       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.

perl v5.32.1			  2021-01-11	   Devel::PatchPerl::Plugin(3)

NAME | VERSION | DESCRIPTION | INITIALISATION | WHAT CAN PLUGINS DO? | WHY USE AN ENVIRONMENT VARIABLE TO SPECIFY PLUGINS? | AUTHOR | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Devel::PatchPerl::Plugin&sektion=3&manpath=FreeBSD+13.1-RELEASE+and+Ports>

home | help