/* patchlevel.h * * Copyright (C) 1993, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, * 2003, 2004, 2005, 2006, 2007, 2008, 2009, by Larry Wall and others * * You may distribute under the terms of either the GNU General Public * License or the Artistic License, as specified in the README file. * */ #ifndef __PATCHLEVEL_H_INCLUDED__ #include "BuildInfo.h" /* do not adjust the whitespace! Configure expects the numbers to be * exactly on the third column */ #define PERL_REVISION 5 /* age */ #define PERL_VERSION 16 /* epoch */ #define PERL_SUBVERSION 3 /* generation */ /* The following numbers describe the earliest compatible version of Perl ("compatibility" here being defined as sufficient binary/API compatibility to run XS code built with the older version). Normally this should not change across maintenance releases. Note that this only refers to an out-of-the-box build. Many non-default options such as usemultiplicity tend to break binary compatibility more often. This is used by Configure et al to figure out PERL_INC_VERSION_LIST, which lists version libraries to include in @INC. See INSTALL for how this works. Porting/bump-perl-version will automatically set these to the version of perl to be released for blead releases, and to 5.X.0 for maint releases. Manually changing them should not be necessary. */ #define PERL_API_REVISION 5 #define PERL_API_VERSION 16 #define PERL_API_SUBVERSION 0 /* XXX Note: The selection of non-default Configure options, such as -Duselonglong may invalidate these settings. Currently, Configure does not adequately test for this. A.D. Jan 13, 2000 */ #define __PATCHLEVEL_H_INCLUDED__ #endif /* local_patches -- list of locally applied less-than-subversion patches. If you're distributing such a patch, please give it a name and a one-line description, placed just before the last NULL in the array below. If your patch fixes a bug in the perlbug database, please mention the bugid. If your patch *IS* dependent on a prior patch, please place your applied patch line after its dependencies. This will help tracking of patch dependencies. Please either use 'diff --unified=0' if your diff supports that or edit the hunk of the diff output which adds your patch to this list, to remove context lines which would give patch problems. For instance, if the original context diff is *** patchlevel.h.orig --- patchlevel.h *** 38,43 *** --- 38,44 --- ,"FOO1235 - some patch" ,"BAR3141 - another patch" ,"BAZ2718 - and another patch" + ,"MINE001 - my new patch" ,NULL }; please change it to *** patchlevel.h.orig --- patchlevel.h *** 41,43 *** --- 41,44 --- + ,"MINE001 - my new patch" ,NULL }; (Note changes to line numbers as well as removal of context lines.) This will prevent patch from choking if someone has previously applied different patches than you. History has shown that nobody distributes patches that also modify patchlevel.h. Do it yourself. The following perl program can be used to add a comment to patchlevel.h: #!perl die "Usage: perl -x patchlevel.h comment ..." unless @ARGV; open PLIN, "patchlevel.h" or die "Couldn't open patchlevel.h : $!"; open PLOUT, ">patchlevel.new" or die "Couldn't write on patchlevel.new : $!"; my $seen=0; while () { if (/\t,NULL/ and $seen) { while (my $c = shift @ARGV){ $c =~ s|\\|\\\\|g; $c =~ s|"|\\"|g; print PLOUT qq{\t,"$c"\n}; } } $seen++ if /local_patches\[\]/; print PLOUT; } close PLOUT or die "Couldn't close filehandle writing to patchlevel.new : $!"; close PLIN or die "Couldn't close filehandle reading from patchlevel.h : $!"; close DATA; # needed to allow unlink to work win32. unlink "patchlevel.bak" or warn "Couldn't unlink patchlevel.bak : $!" if -e "patchlevel.bak"; rename "patchlevel.h", "patchlevel.bak" or die "Couldn't rename patchlevel.h to patchlevel.bak : $!"; rename "patchlevel.new", "patchlevel.h" or die "Couldn't rename patchlevel.new to patchlevel.h : $!"; __END__ Please keep empty lines below so that context diffs of this file do not ever collect the lines belonging to local_patches() into the same hunk. */ #if !defined(PERL_PATCHLEVEL_H_IMPLICIT) && !defined(LOCAL_PATCH_COUNT) # if defined(PERL_IS_MINIPERL) # define PERL_PATCHNUM "UNKNOWN-miniperl" # define PERL_GIT_UNPUSHED_COMMITS /*leave-this-comment*/ # elif defined(PERL_MICRO) # define PERL_PATCHNUM "UNKNOWN-microperl" # define PERL_GIT_UNPUSHED_COMMITS /*leave-this-comment*/ # else #include "git_version.h" # endif static const char * const local_patches[] = { NULL #ifdef PERL_GIT_UNCOMMITTED_CHANGES ,"uncommitted-changes" #endif PERL_GIT_UNPUSHED_COMMITS /* do not remove this line */ ,ACTIVEPERL_LOCAL_PATCHES_ENTRY ,"9d2204f activeperl: Backported environ patch needs to use SvREFCNT_dec instead of SvREFCNT_dec_NN for <= 5.16" ,"70d1ba5 activeperl: remove duplicate environment variables from environ" ,"db2a4fd activeperl: Update BuildInfo to 5.16.3.1604" ,"acafab2 activeperl: Export Perl_boot_core_ActivePerl symbol on AIX and Win32" ,"d562697 activeperl: Update sha256(uconfig.sh) in uconfig.h" ,"2896249 activeperl: Read/write files in text mode" ,"3a54614 activeperl: Allow CR/LF line endings in perldelta.pod" ,"18d9e6d activeperl: Avoids podcheck.t failing because of the links in ActivePerl.pm" ,"ac5d375 activeperl: Fixup Dynaloader XS_VERSION in Makefile.PL to match" ,"43158be activeperl: Always compare regen output in text mode" ,"c7486b2 activeperl: PerlApp needs to know the DynaLoader version in libperl.so" ,"133e9c1 activeperl: Disarm deprecate.pm" ,"b5586bc activeperl: Don't pick up git info for ActivePerl if the build process happen to find a git repo" ,"11f7ff2 activeperl: Remove \\r from the stored lines on Windows." ,"476013c activeperl: Don't record the version of perl5 found on the build system." ,"3e27150 activeperl: We always want manpages for ActivePerl" ,"38710e8 activeperl: Add ActivePerl module" ,"a5a3190 activeperl: Add BuildInfo.h header and Win32::BuildNumber() function" ,"f627201 aix: Try to set $Config::Config{full_ar} in the hints file because Configure doesn't seem to be able to figure it out when $ar contains additional parameters." ,"c15167f aix: Use .so extension for libperl.so etc. to avoid filename conflict with the static library. Otherwise we cannot build a dual distribution." ,"b03ad47 asmeta: 5.16.3" ,"57a2c51 asmeta: 5.16.2" ,"c8ce248 asmeta: 5.16.1" ,"ff5dd2a asmeta: 5.16.0" ,"0cf5fbf asmeta: Add ASMETA.yml file" ,"306e393 cpan: Avoid double ... wrapping" ,"8c6128c cpan: Skip QueryDosDevice device tests when they get access denied" ,"4fd523b cpan: Add colorization of sample code" ,"f8c5826 cpan: Colons in Windows paths are replaced by the pipe symbol because the podpath is already using the colon as a directory delimiter." ,"c1fc74b cpan: :raw DATA handles will return CRLF on Windows in 5.14+" ,"3b9a232 cpan: Skip failing pod2usage2 test on OS X until it has been fixed for case-insensitive filesystems." ,"1710edd cpan: suppress noise unless -verbose switch was used" ,"d21b01e cpan: Remove PerlEx stackframes from a backtrace the same way mod_perl stack frames are being removed." ,"7100524 darwin: Minimum supported OS X version is 10.5" ,"15442b5 extutils: Undo Borland compiler search modifications" ,"20d60a6 extutils: Make sure MakeMaker sets up INSTALL.*HTMLDIR when using INSTALL_BASE" ,"ec7bb05 extutils: MakeMaker HTML generation patches" ,"78f9fdb extutils: Relax $Config{cc} matching rules to allow for full path to bcc/cl/gcc." ,"3f5a168 extutils: Make 'perl -MExtUtils::Embed -e ldopts' output a direct reference to libperl.a if using -lperl would pick up libperl.so." ,"2c8b27a hpux: Must not overwrite archname if that is passed in via Configure switches" ,"5293ba5 hpux: Make MAXHOSTNAMELEN to be big enough for the biggest supported buffer, namely 256 on large-hostname systems." ,"a4a68d1 hpux: Portable uname() wrapper for HP-UX that supports both the old and the new uname()" ,"8e0cb1d hpux: disable SA_RESTART on SIGINT and SIGTERM to work around a bug in HP-UX 11.x that causes sleep() to get restarted" ,"83f6d7d hpux: Test fails on HP-UX 11.22 (IA64) because an additional FD is kept open by the loader. The FD seems to point either to the program being loaded (perl, or tusc when running perl under tusc), or to a password hash file if the program is being executed with `perl -e`." ,"7f94341 patchlevel: Add ACTIVEPERL_LOCAL_PATCHES_ENTRY to patchlevel.h" ,"aae447f solaris: Always use aligned memory access even if our build machines don't require it." ,"61621e2 solaris: i86pc looks too ugly. Use x86 instead in the archname." ,"8d59a0c win32: Change PNG layers to BMP in perl.ico so it works with older MSVC tools" ,"b3c9a0c win32: Update to Perl hex icon in older versions, prepping for switch to patch files" ,"a0eda51 win32: Backport CVE-2015-8608 (cherry-picked from d24b8d)" ,"fba386d win32: Update dll file name for perl-5.16" ,"816f7b8 win32: Add 'ppmarch' field to Config.pm on Windows" ,"8b1a73e win32: Add 'dlltool' key to Config_heavy.pl on Windows" ,"0f45791 win32: Allow for CRLF line endings in test files" ,"7d76c53 win32: SITELIB_EXP may be NULL on Windows" ,"5bba608 win32: Update gecko icon to the new orb image" ,"a4405c8 win32: Allow up to 2048 sockets in select() calls, even though performance is likely to be slow, as the fd_set is just an unordered list of file descriptors on Windows." ,"48e4e62 win32: Add ActivePerl specific version resources to perl.exe and perl510.dll. Add Gecko icon." ,"107d000 win32: Enable sitecustomize.pl support on Windows. Also set support email address." ,"7afeb0f win32: Fix installsitebin and installsitescript entries in Config_heavy.pl" ,NULL }; /* Initial space prevents this variable from being inserted in config.sh */ # define LOCAL_PATCH_COUNT \ ((int)(sizeof(local_patches)/sizeof(local_patches[0])-2)) /* the old terms of reference, add them only when explicitly included */ #define PATCHLEVEL PERL_VERSION #undef SUBVERSION /* OS/390 has a SUBVERSION in a system header */ #define SUBVERSION PERL_SUBVERSION #endif