This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
embed.fnc: Mark unlnk as Core only
[perl5.git] / Porting / pumpkin.pod
index a1fe675..e952fb2 100644 (file)
@@ -35,15 +35,13 @@ interested in all the latest developments, you should definitely
 subscribe.  The list is high volume, but generally has a
 fairly low noise level.
 
-Subscribe by sending the message (in the body of your letter)
+To subscribe to perl5-porters, send an email to
 
-       subscribe perl5-porters
-
-to perl5-porters-request@perl.org .
+       perl5-porters-subscribe@perl.org
 
 Archives of the list are held at:
 
-    http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/
+       https://lists.perl.org/list/perl5-porters.html
 
 =head1 How are Perl Releases Numbered?
 
@@ -292,41 +290,48 @@ F<l1_char_class_tab.h>, and F<perltoc.pod> files
 are all automatically generated by perl scripts.  In general, don't
 patch these directly; patch the data files instead.
 
-F<Configure> and F<config_h.SH> are also automatically generated by
-B<metaconfig>.  In general, you should patch the metaconfig units
-instead of patching these files directly.  However, very minor changes
-to F<Configure> may be made in between major sync-ups with the
-metaconfig units, which tends to be complicated operations.  But be
-careful, this can quickly spiral out of control.  Running metaconfig
-is not really hard.
-
 Also F<Makefile> is automatically produced from F<Makefile.SH>.
 In general, look out for all F<*.SH> files.
 
-Finally, the sample files in the F<Porting/> subdirectory are
-generated automatically by the script F<U/mksample> included 
-with the metaconfig units.  See L<"run metaconfig"> below for
-information on obtaining the metaconfig units.
+Finally, the sample files F<config.sh> and F<config_H> in the
+F<Porting/> subdirectory are generated by the script F<Porting/mksample>.
 
-=head1 How to Make a Distribution
+=head3 Files generated by metaconfig
 
-This section has now been expanded and moved into its own file,
-F<Porting/release_managers_guide.pod>.
+F<Configure>, F<config_h.SH> and F<Porting/Glossary> are generated by
+B<metaconfig> (see below for more information on how to use this system)
+and direct changes to these files should in general not be pushed to blead.
 
-I've kept some of the subsections here for now, as they don't directly
-relate to building a release any more, but still contain what might be
-useful information - DAPM 7/2009.
+The exceptions are:
+
+=over 4
+
+=item *
+
+security fixes
 
-=head2 run metaconfig
+=item *
+
+changes pre-approved by the metaconfig maintainers
+
+=back
 
-If you need to make changes to Configure or config_h.SH, it may be best to
-change the appropriate metaconfig units instead, and regenerate Configure.
+Such changes should also be notified to the metaconfig maintainers by
+creating an issue at <https://github.com/Perl/metaconfig/issues>.
 
-       metaconfig -m
+Alternatively, do consider if the F<*ish.h> files or the hint files might
+be a better place for your changes.
 
-will regenerate F<Configure> and F<config_h.SH>.  Much more information
-on obtaining and running metaconfig is in the F<U/README> file
-that comes with Perl's metaconfig units.
+=head1 Working with metaconfig
+
+Information about how to use metaconfig can be found in the F<README>
+and F<README_U> files in the metaconfig repository containing Perl's
+metaconfig units:
+
+       # anonymous clone
+       git clone https://github.com/Perl/metaconfig.git
+       # or using a registered github.com identity with ssh
+       git clone github.com:Perl/metaconfig.git
 
 Since metaconfig is hard to change, running correction scripts after
 this generation is sometimes needed. Configure gained complexity over
@@ -335,16 +340,14 @@ when compiling perl. Therefor, you need to run Porting/config_h.pl
 after that generation. All that and more is described in the README
 files that come with the metaunits.
 
-Perl's metaconfig units should be available on CPAN.  A set of units
-that will work with perl5.9.x is in a file with a name similar to
-F<mc_units-20070423.tgz> under L<http://www.cpan.org/authors/id/H/HM/HMBRAND/>.
-The mc_units tar file should be unpacked in your main perl source directory.
-Note: those units were for use with 5.9.x.  There may have been changes since
-then.  Check for later versions or contact perl5-porters@perl.org to obtain a
-pointer to the current version.
+=head1 How to Make a Distribution
 
-Alternatively, do consider if the F<*ish.h> files or the hint files might be
-a better place for your changes.
+This section has now been expanded and moved into its own file,
+F<Porting/release_managers_guide.pod>.
+
+I've kept some of the subsections here for now, as they don't directly
+relate to building a release any more, but still contain what might be
+useful information - DAPM 7/2009.
 
 =head2 MANIFEST
 
@@ -471,7 +474,7 @@ Let's not force people to keep changing it.
 
 =head2 PPPort
 
-F<cpan/Devel-PPPort/PPPort.pm> needs to be synchronized to include all
+F<dist/Devel-PPPort/PPPort.pm> needs to be synchronized to include all
 new macros added to .h files (normally F<perl.h> and F<XSUB.h>, but others
 as well). Since chances are that when a new macro is added the
 committer will forget to update F<PPPort.pm>, it's the best to diff for
@@ -520,7 +523,7 @@ It is courteous to update that if necessary.
 
 I find the F<makepatch> utility quite handy for making patches.
 You can obtain it from any CPAN archive under
-L<http://www.cpan.org/authors/Johan_Vromans/>.  There are a couple
+L<https://www.cpan.org/authors/id/J/JV/JV/>.  There are a couple
 of differences between my version and the standard one. I have mine do
 a
 
@@ -1385,11 +1388,11 @@ copyrights alone.  Doing more than that requires quite a bit of tracking.
 =head1 AUTHORS
 
 Original author:  Andy Dougherty doughera@lafayette.edu .
-Additions by Chip Salzenberg chip@perl.com and 
-Tim Bunce Tim.Bunce@ig.co.uk .
+Additions by Chip Salzenberg chip@perl.com, Tim Bunce and the perl5
+development team.
 
 All opinions expressed herein are those of the authorZ<>(s).
 
 =head1 LAST MODIFIED
 
-2009-07-08-01 Jesse Vincent
+2017-10-13 Dominic Hargreaves