Commit | Line | Data |
d6376244 |
1 | /* patchlevel.h |
2 | * |
4bb101f2 |
3 | * Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, |
54ca4ee7 |
4 | * 2000, 2001, 2002, 2003, 2004, 2005, 2006, by Larry Wall and others |
d6376244 |
5 | * |
6 | * You may distribute under the terms of either the GNU General Public |
7 | * License or the Artistic License, as specified in the README file. |
8 | * |
9 | */ |
10 | |
f7d144c8 |
11 | #ifndef __PATCHLEVEL_H_INCLUDED__ |
4d8076ea |
12 | |
a9fb271f |
13 | /* do not adjust the whitespace! Configure expects the numbers to be |
14 | * exactly on the third column */ |
15 | |
16 | #define PERL_REVISION 5 /* age */ |
78a7c709 |
17 | #define PERL_VERSION 9 /* epoch */ |
56a89353 |
18 | #define PERL_SUBVERSION 5 /* generation */ |
4d8076ea |
19 | |
273cf8d1 |
20 | /* The following numbers describe the earliest compatible version of |
21 | Perl ("compatibility" here being defined as sufficient binary/API |
22 | compatibility to run XS code built with the older version). |
75347591 |
23 | Normally this should not change across maintenance releases. |
75347591 |
24 | |
ea3df0f8 |
25 | Note that this only refers to an out-of-the-box build. Many non-default |
26 | options such as usemultiplicity tend to break binary compatibility |
27 | more often. |
28 | |
ff935051 |
29 | This is used by Configure et al to figure out |
30 | PERL_INC_VERSION_LIST, which lists version libraries |
31 | to include in @INC. See INSTALL for how this works. |
75347591 |
32 | */ |
273cf8d1 |
33 | #define PERL_API_REVISION 5 /* Adjust manually as needed. */ |
a86913ef |
34 | #define PERL_API_VERSION 9 /* Adjust manually as needed. */ |
56a89353 |
35 | #define PERL_API_SUBVERSION 5 /* Adjust manually as needed. */ |
ff935051 |
36 | /* |
37 | XXX Note: The selection of non-default Configure options, such |
38 | as -Duselonglong may invalidate these settings. Currently, Configure |
39 | does not adequately test for this. A.D. Jan 13, 2000 |
40 | */ |
75347591 |
41 | |
e3321bb0 |
42 | #define __PATCHLEVEL_H_INCLUDED__ |
43 | #endif |
44 | |
7f0a50ff |
45 | /* |
46 | local_patches -- list of locally applied less-than-subversion patches. |
47 | If you're distributing such a patch, please give it a name and a |
48 | one-line description, placed just before the last NULL in the array |
49 | below. If your patch fixes a bug in the perlbug database, please |
50 | mention the bugid. If your patch *IS* dependent on a prior patch, |
51 | please place your applied patch line after its dependencies. This |
52 | will help tracking of patch dependencies. |
53 | |
2c9b9644 |
54 | Please either use 'diff --unified=0' if your diff supports |
22adf171 |
55 | that or edit the hunk of the diff output which adds your patch |
56 | to this list, to remove context lines which would give patch |
57 | problems. For instance, if the original context diff is |
58 | |
7f0a50ff |
59 | *** patchlevel.h.orig <date here> |
60 | --- patchlevel.h <date here> |
61 | *** 38,43 *** |
62 | --- 38,44 --- |
63 | ,"FOO1235 - some patch" |
64 | ,"BAR3141 - another patch" |
65 | ,"BAZ2718 - and another patch" |
66 | + ,"MINE001 - my new patch" |
67 | ,NULL |
68 | }; |
69 | |
70 | please change it to |
71 | *** patchlevel.h.orig <date here> |
72 | --- patchlevel.h <date here> |
73 | *** 41,43 *** |
74 | --- 41,44 --- |
75 | + ,"MINE001 - my new patch" |
2c9b9644 |
76 | ,NULL |
7f0a50ff |
77 | }; |
78 | |
79 | (Note changes to line numbers as well as removal of context lines.) |
80 | This will prevent patch from choking if someone has previously |
81 | applied different patches than you. |
f7047380 |
82 | |
83 | History has shown that nobody distributes patches that also |
84 | modify patchlevel.h. Do it yourself. The following perl |
85 | program can be used to add a comment to patchlevel.h: |
86 | |
87 | #!perl |
88 | die "Usage: perl -x patchlevel.h comment ..." unless @ARGV; |
89 | open PLIN, "patchlevel.h" or die "Couldn't open patchlevel.h : $!"; |
90 | open PLOUT, ">patchlevel.new" or die "Couldn't write on patchlevel.new : $!"; |
91 | my $seen=0; |
92 | while (<PLIN>) { |
93 | if (/\t,NULL/ and $seen) { |
94 | while (my $c = shift @ARGV){ |
95 | print PLOUT qq{\t,"$c"\n}; |
96 | } |
97 | } |
98 | $seen++ if /local_patches\[\]/; |
99 | print PLOUT; |
100 | } |
22adf171 |
101 | close PLOUT or die "Couldn't close filehandle writing to patchlevel.new : $!"; |
102 | close PLIN or die "Couldn't close filehandle reading from patchlevel.h : $!"; |
538f996c |
103 | close DATA; # needed to allow unlink to work win32. |
f7047380 |
104 | unlink "patchlevel.bak" or warn "Couldn't unlink patchlevel.bak : $!" |
105 | if -e "patchlevel.bak"; |
106 | rename "patchlevel.h", "patchlevel.bak" or |
107 | die "Couldn't rename patchlevel.h to patchlevel.bak : $!"; |
108 | rename "patchlevel.new", "patchlevel.h" or |
109 | die "Couldn't rename patchlevel.new to patchlevel.h : $!"; |
110 | __END__ |
111 | |
22adf171 |
112 | Please keep empty lines below so that context diffs of this file do |
113 | not ever collect the lines belonging to local_patches() into the same |
114 | hunk. |
f7047380 |
115 | |
7f0a50ff |
116 | */ |
f7047380 |
117 | |
e3321bb0 |
118 | #if !defined(PERL_PATCHLEVEL_H_IMPLICIT) && !defined(LOCAL_PATCH_COUNT) |
27da23d5 |
119 | static const char * const local_patches[] = { |
3255d14b |
120 | NULL |
56a89353 |
121 | ,"DEVEL" |
3255d14b |
122 | ,NULL |
7f0a50ff |
123 | }; |
124 | |
22adf171 |
125 | |
126 | |
b33f1439 |
127 | /* Initial space prevents this variable from being inserted in config.sh */ |
128 | # define LOCAL_PATCH_COUNT \ |
bb7a0f54 |
129 | ((int)(sizeof(local_patches)/sizeof(local_patches[0])-2)) |
f7d144c8 |
130 | |
cceca5ed |
131 | /* the old terms of reference, add them only when explicitly included */ |
cceca5ed |
132 | #define PATCHLEVEL PERL_VERSION |
133 | #undef SUBVERSION /* OS/390 has a SUBVERSION in a system header */ |
134 | #define SUBVERSION PERL_SUBVERSION |
135 | #endif |