This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perlapi: capitalize 'op'
[perl5.git] / PACKAGING
CommitLineData
ba673321
DH
1If you read this file _as_is_, just ignore the funny characters you
2see. It is written in the POD format (see pod/perlpod.pod) which is
3specifically designed to be readable as is.
4
5=head1 NAME
6
7PACKAGING - notes and best practice for packaging perl 5
8
9=head1 SYNOPSIS
10
11This document is aimed at anyone who is producing their own version of
12perl for distribution to other users. It is intended as a collection
13of useful tips, advice and best practice, rather than being a complete
14packaging manual. The starting point for installing perl remains
15F<INSTALL>.
16
17=head1 Customizing test running
18
19A small number of porting tests (those in t/porting) are not well suited
20to typical distribution packaging scenarios. For example, they assume
21they are working in a git clone of the upstream Perl repository, or
22enforce rules which are not relevant to downstream packagers. These can
23be skipped by setting the environment variable PERL_BUILD_PACKAGING.
24A complete list of tests which this applied to can be found by searching
25the codebase for this string.
26
27An alternative strategy would be to skip all porting tests, but many of
28them are useful if additional patches might be applied.
29
4f8ef02e
N
30=head1 Customizing patchlevel to advertise your local patches
31
32You can advertise your custom local patches by using patchlevel.h as a
33standalone Perl script.
34
35=head2 Sample usage:
36
37 perl -x patchlevel.h "This is a custom patch"
38
cd2a978d
N
39=head1 Disabling known flapping tests
40
41Some tests could fail under heavy load, whereas in most cases
42they would simply succeed. Usually, continuous integration systems
43will at one point or the other reach that problem.
44
45To disable these known tests, please set the environment
46variable CI to true.
47
48 CI=true
49
ba673321 50=cut