Up to [cvs.NetBSD.org] / pkgsrc / lang / perl5
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
perl5: remove workaround for /self/proc/exe being '/' The patch is from 2008, and according to martin@ on current-users@, the problem was fixed in 2007 in sys/miscfs/procfs/procfs_vnops.c rev 1.152). If the problem is still there, please file a NetBSD bug report. Bump PKGREVISION.
perl5: stop two she-bang replacements that broke tests after discussion with upstream pkglint cleanups while here.
perl5: pkglint -F
perl: update to 5.40.0. Core Enhancements New __CLASS__ Keyword :reader attribute for field variables Permit a space in -M command-line option Restrictions to use VERSION declarations New builtin::inf and builtin::nan functions (experimental) New ^^ logical xor operator try/catch feature is no longer experimental for iterating over multiple values at a time is no longer experimental builtin module is no longer experimental The :5.40 feature bundle adds try use v5.40; imports builtin functions Security CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property CVE-2023-47039 - Perl for Windows binary hijacking vulnerability Incompatible Changes reset EXPR now calls set-magic on scalars Calling the import method of an unknown package produces a warning return no longer allows an indirect object Class barewords no longer resolved as file handles in method calls under no feature "bareword_filehandles"
perl: update to 5.38.0. Core Enhancements New class Feature Unicode 15.0 is supported Deprecation warnings now have specific subcategories %{^HOOK} API introduced PERL_RAND_SEED Defined-or and logical-or assignment default expressions in signatures @INC Hook Enhancements and $INC and INCDIR Forbidden control flow out of defer or finally now detected at compile-time Optimistic Eval in Patterns REG_INF has been raised from 65,536 to 2,147,483,647 New API functions optimize_optree and finalize_optree Some gotos are now permitted in defer and finally blocks New regexp variable ${^LAST_SUCCESSFUL_PATTERN} Locale category LC_NAME now supported on participating platforms Incompatible Changes readline() no longer clears the stream error and eof flags INIT blocks no longer run after an exit() in BEGIN Syntax errors no longer produce "phantom error messages" utf8::upgrade() Changes to "thread-safe" locales Deprecations Use of ' as a package name separator is deprecated Switch and Smart Match operator More details at https://metacpan.org/release/RJBS/perl-5.38.0/view/pod/perldelta.pod
perl5: Stop using csh on SunOS. illumos is in the process of removing it from the system, but perl still prefers it when globbing if available, and will still try to exec /bin/csh.
perl5: updated to 5.36.1 perl v5.36.1 Incompatible Changes There are no changes intentionally incompatible with 5.36.0. If any exist, they are bugs, and we request that you submit a report. See "Reporting Bugs" below. Modules and Pragmata Updated Modules and Pragmata • Module::CoreList has been upgraded from version 5.20220520 to 5.20230423. Configuration and Compilation • "Configure" probed for the return type of malloc() and free() by testing whether declarations for those functions produced a function type mismatch with the implementation. On Solaris, with a C++ compiler, this check always failed, since Solaris instead imports malloc() and free() from "std::" with "using" for C++ builds. Since the return types of malloc() and free() are well defined by the C standard, skip probing for them. "Configure" command-line arguments and hints can still override these type in the unlikely case that is needed. Testing Tests were added and changed to reflect the other additions and changes in this release. Selected Bug Fixes • An eval() as the last statement in a regex code block could trigger an interpreter panic; e.g. /(?{ ...; eval {....}; })/ • An "eval EXPR" referring to a lexical sub defined in grandparent scope no longer produces an assertion failures. • Writing to a magic variables associated with the selected output handle, $^, $~, $=, "$-" and $%, no longer crashes perl if the IO object has been cleared from the selected output handle.
perl5: update to 5.34.1 * Modules and Pragmata ** Updated Modules and Pragmata B::Deparse has been upgraded from version 1.56 to 1.57. Encode has been upgraded from version 3.08 to 3.08_01. GDBM_File has been upgraded from version 1.19 to 1.19_01. Module::CoreList has been upgraded from version 5.20210520 to 5.20220313. perl5db.pl has been upgraded from version 1.60 to 1.60_01. * Testing Tests were added and changed to reflect the other additions and changes in this release. * Selected Bug Fixes B::Deparse now correctly handles try/catch blocks with more complex scopes.
perl5: Add bits from UnixWare, from Boyd Lynn Gerber
perl5: Remove bash requirement on SunOS. This was to work around pdksh bugs, but we have mksh now.
perl5: Address CVE-2021-36770
perl5: Compare inode numbers as string. Bump revision. PR pkg/55997 Internal stat() function for perl stores inode number as string, if it cannot be represented by host's integer. However, unfortunately, some components compare them as integer. Therefore, if 64-bit integers are not supported, files cannot be handled, whose inode number is larger than UINT32_MAX. Usually, inode numbers on real filesystems are well below UINT32_MAX. But, inode numbers larger than UINT32_MAX are assigned for tmpfs on LP64 kernels. This results in build failures for perl on COMPAT_NETBSD32 if working directory is tmpfs, and perl-64bitint and friends are not specified. Now, inode numbers are compared as string, which works just fine even if 64-bit integers are not supported. Cherry-picked from upstream. See https://github.com/Perl/perl5/pull/18788 and related pull-requests for more details.
*: recursive bump for perl 5.34
perl5: avoid hardcoding path to pwd
perl: update to 5.32.1. Incompatible Changes There are no changes intentionally incompatible with Perl 5.32.0. If any exist, they are bugs, and we request that you submit a report. See "Reporting Bugs" below. Modules and Pragmata Updated Modules and Pragmata Data::Dumper has been upgraded from version 2.174 to 2.174_01. A number of memory leaks have been fixed. DynaLoader has been upgraded from version 1.47 to 1.47_01. Module::CoreList has been upgraded from version 5.20200620 to 5.20210123. Opcode has been upgraded from version 1.47 to 1.48. A warning has been added about evaluating untrusted code with the perl interpreter. Safe has been upgraded from version 2.41 to 2.41_01. A warning has been added about evaluating untrusted code with the perl interpreter. Documentation New Documentation perlgov Documentation of the newly formed rules of governance for Perl. perlsecpolicy Documentation of how the Perl security team operates and how the team evaluates new security reports. Changes to Existing Documentation We have attempted to update the documentation to reflect the changes listed in this document. If you find any we have missed, open an issue at https://github.com/Perl/perl5/issues. Additionally, the following selected changes have been made: perlop Document range op behaviour change. Diagnostics The following additions or changes have been made to diagnostic output, including warnings and fatal error messages. For the complete list of diagnostic messages, see perldiag. Changes to Existing Diagnostics \K not permitted in lookahead/lookbehind in regex; marked by <-- HERE in m/%s/ This error was incorrectly produced in some cases involving nested lookarounds. This has been fixed. [GH #18123] Configuration and Compilation Newer 64-bit versions of the Intel C/C++ compiler are now recognized and have the correct flags set. We now trap SIGBUS when Configure checks for va_copy. On several systems the attempt to determine if we need va_copy or similar results in a SIGBUS instead of the expected SIGSEGV, which previously caused a core dump. [GH #18148] Testing Tests were added and changed to reflect the other additions and changes in this release. Platform Support Platform-Specific Notes MacOS (Darwin) The hints file for darwin has been updated to handle future macOS versions beyond 10. Perl can now be built on macOS Big Sur. [GH #17946, GH #18406] Minix Build errors on Minix have been fixed. [GH #17908] Selected Bug Fixes Some list assignments involving undef on the left-hand side were over-optimized and produced incorrect results. [GH #16685, GH #17816] Fixed a bug in which some regexps with recursive subpatterns matched incorrectly. [GH #18096] Fixed a deadlock that hung the build when Perl is compiled for debugging memory problems and has PERL_MEM_LOG enabled. [GH #18341] Fixed a crash in the use of chained comparison operators when run under "no warnings 'uninitialized'". [GH #17917, GH #18380] Exceptions thrown from destructors during global destruction are no longer swallowed. [GH #18063]
perl5: remove bogus CONFLICTS The perl modules install into the vendor_perl subdirectory, so there is no actual conflict. Bump PKGREVISION.
perl: Revert previous, thinko
perl5: remove conflict with p5-CPAN-Meta-YAML, corelist says it was never part of perl
perl: mark as superseding p5-Time-HiRes and p5-DB_File
perl: update to 5.32.0. https://perldoc.perl.org/5.32.0/perldelta.html Core Enhancements The isa Operator Unicode 13.0 is supported Chained comparisons capability New Unicode properties Identifier_Status and Identifier_Type supported It is now possible to write qr/\p{Name=...}/, or qr!\p{na=/(SMILING|GRINNING) FACE/}! Improvement of POSIX::mblen(), mbtowc, and wctomb Alpha assertions are no longer experimental Script runs are no longer experimental Feature checks are now faster Perl is now developed on GitHub Compiled patterns can now be dumped before optimization Security [CVE-2020-10543] Buffer overflow caused by a crafted regular expression [CVE-2020-10878] Integer overflow via malformed bytecode produced by a crafted regular expression [CVE-2020-12723] Buffer overflow caused by a crafted regular expression Additional Note Incompatible Changes Certain pattern matching features are now prohibited in compiling Unicode property value wildcard subpatterns Unused functions POSIX::mbstowcs and POSIX::wcstombs are removed A bug fix for (?[...]) may have caused some patterns to no longer compile \p{_user-defined_} properties now always override official Unicode ones Modifiable variables are no longer permitted in constants Use of perlfunc/vec EXPR,OFFSET,BITS on strings with code points above 0xFF is forbidden Use of code points over 0xFF in string bitwise operators Sys::Hostname::hostname() does not accept arguments Plain "0" string now treated as a number for range operator \K now disallowed in look-ahead and look-behind assertions Performance Enhancements Modules and Pragmata Updated Modules and Pragmata Removed Modules and Pragmata Documentation Changes to Existing Documentation Diagnostics New Diagnostics Changes to Existing Diagnostics Utility Changes the perlbug manpage the streamzip manpage
Partially fix lang/perl5 on QNX This makes it at least link miniperl, but it still fails during the build with: panic: MUTEX_UNLOCK (1) [util.c:2616] at make_ext.pl line 613. panic: MUTEX_LOCK (22) [op.c:864]. panic: MUTEX_UNLOCK (1) [util.c:2616] at make_ext.pl line 513. panic: MUTEX_LOCK (22) [op.c:864].
lang/perl5: remove obsolete SUBST actions These did not have any effect since the files have changed meanwhile.
lang/perl5: Fix compiler check via pkglint AUTOFIX: Makefile:267: Replacing "${PKGSRC_COMPILER} == \"xlc\"" with "${PKGSRC_COMPILER:Mxlc}".
perl5: updated to 5.30.1 what is new for perl v5.30.1 Incompatible Changes There are no changes intentionally incompatible with 5.30.1. If any exist, they are bugs, and we request that you submit a report. See "Reporting Bugs" below. Modules and Pragmata Updated Modules and Pragmata o Module::CoreList has been upgraded from version 5.20190522 to 5.20191110. Documentation Changes to Existing Documentation We have attempted to update the documentation to reflect the changes listed in this document. If you find any we have missed, send email to perlbug@perl.org <mailto:perlbug@perl.org>. Additionally, documentation has been updated to reference GitHub as the new canonical repository and to describe the new GitHub pull request workflow. Configuration and Compilation o The "ECHO" macro is now defined. This is used in a "dtrace" rule that was originally changed for FreeBSD, and the FreeBSD make apparently predefines it. The Solaris make does not predefine "ECHO" which broke this rule on Solaris. Testing Tests were added and changed to reflect the other additions and changes in this release. Platform Support Platform-Specific Notes Win32 The locale tests could crash on Win32 due to a Windows bug, and separately due to the CRT throwing an exception if the locale name wasn't validly encoded in the current code page. For the second we now decode the locale name ourselves, and always decode it as UTF-8. Selected Bug Fixes o Setting $) now properly sets supplementary group ids, if you have the necessary privileges. o "readline @foo" now evaluates @foo in scalar context. Previously, it would be evaluated in list context, and since readline() pops only one argument from the stack, the stack could underflow, or be left with unexpected values on it. o sv_gets() now recovers better if the target SV is modified by a signal handler. o Matching a non-"SVf_UTF8" string against a regular expression containing Unicode literals could leak an SV on each match attempt. o "sprintf("%.*a", -10000, $x)" would cause a buffer overflow due to mishandling of the negative precision value. o "scalar()" on a reference could cause an erroneous assertion failure during compilation.
perl5: evaluating this regex to force utf8_heavy.pl to load no longer works, use a unicode 'tr///' instead. Fixes Bugzilla checksetup.pl, which uses Safe. Thanks to many on #perl on freenode. PR pkg/54625 Bump PKGREVISION
lang: align variable assignments pkglint -Wall -F --only aligned --only indent -r No manual corrections.
perl5: backport upstream commits to remove a codepath that assumes unaligned accesses are OK. Remove relevant hacks.mk entry to disable optimizations. PR pkg/53568
perl: updated to 5.30.0 what is new for perl v5.30.0 Core Enhancements Limited variable length lookbehind in regular expression pattern matching is now experimentally supported Using a lookbehind assertion (like "(?<=foo?)" or "(?<!ba{1,9}r)" previously would generate an error and refuse to compile. Now it compiles (if the maximum lookbehind is at most 255 characters), but raises a warning in the new "experimental::vlb" warnings category. This is to caution you that the precise behavior is subject to change based on feedback from use in the field. See "(?<=pattern)" in perlre and "(?<!pattern)" in perlre. The upper limit "n" specifiable in a regular expression quantifier of the form "{m,n}" has been doubled to 65534 The meaning of an unbounded upper quantifier "{m,}" remains unchanged. It matches 2**31 - 1 times on most platforms, and more on ones where a C language short variable is more than 4 bytes long. Unicode 12.1 is supported Because of a change in Unicode release cycles, Perl jumps from Unicode 10.0 in Perl 5.28 to Unicode 12.1 in Perl 5.30. For details on the Unicode changes, see <https://www.unicode.org/versions/Unicode11.0.0/> for 11.0; <https://www.unicode.org/versions/Unicode12.0.0/> for 12.0; and <https://www.unicode.org/versions/Unicode12.1.0/> for 12.1. (Unicode 12.1 differs from 12.0 only in the addition of a single character, that for the new Japanese era name.) The Word_Break property, as in past Perl releases, remains tailored to behave more in line with expectations of Perl users. This means that sequential runs of horizontal white space characters are not broken apart, but kept as a single run. Unicode 11 changed from past versions to be more in line with Perl, but it left several white space characters as causing breaks: TAB, NO BREAK SPACE, and FIGURE SPACE (U+2007). We have decided to continue to use the previous Perl tailoring with regards to these. Wildcards in Unicode property value specifications are now partially supported You can now do something like this in a regular expression pattern qr! \p{nv= /(?x) \A [0-5] \z / }! which matches all Unicode code points whose numeric value is between 0 and 5 inclusive. So, it could match the Thai or Bengali digits whose numeric values are 0, 1, 2, 3, 4, or 5. This marks another step in implementing the regular expression features the Unicode Consortium suggests. Most properties are supported, with the remainder planned for 5.32. Details are in "Wildcards in Property Values" in perlunicode. qr'\N{name}' is now supported Previously it was an error to evaluate a named character "\N{...}" within a single quoted regular expression pattern (whose evaluation is deferred from the normal place). This restriction is now removed. Turkic UTF-8 locales are now seamlessly supported Turkic languages have different casing rules than other languages for the characters "i" and "I". The uppercase of "i" is LATIN CAPITAL LETTER I WITH DOT ABOVE (U+0130); and the lowercase of "I" is LATIN SMALL LETTER DOTLESS I (U+0131). Unicode furnishes alternate casing rules for use with Turkic languages. Previously, Perl ignored these, but now, it uses them when it detects that it is operating under a Turkic UTF-8 locale. It is now possible to compile perl to always use thread-safe locale operations. Previously, these calls were only used when the perl was compiled to be multi-threaded. To always enable them, add -Accflags='-DUSE_THREAD_SAFE_LOCALE' to your Configure flags. Eliminate opASSIGN macro usage from core This macro is still defined but no longer used in core "-Drv" now means something on "-DDEBUGGING" builds Now, adding the verbose flag ("-Dv") to the "-Dr" flag turns on all possible regular expression debugging. Incompatible Changes Assigning non-zero to $[ is fatal Setting $[ to a non-zero value has been deprecated since Perl 5.12 and now throws a fatal error. See "Assigning non-zero to $[ is fatal" in perldeprecation. Delimiters must now be graphemes See "Use of unassigned code point or non-standalone grapheme for a delimiter." in perldeprecation Some formerly deprecated uses of an unescaped left brace "{" in regular expression patterns are now illegal But to avoid breaking code unnecessarily, most instances that issued a deprecation warning, remain legal and now have a non-deprecation warning raised. See "Unescaped left braces in regular expressions" in perldeprecation. Previously deprecated sysread()/syswrite() on :utf8 handles is now fatal Calling sysread(), syswrite(), send() or recv() on a ":utf8" handle, whether applied explicitly or implicitly, is now fatal. This was deprecated in perl 5.24. There were two problems with calling these functions on ":utf8" handles: o All four functions only paid attention to the ":utf8" flag. Other layers were completely ignored, so a handle with ":encoding(UTF-16LE)" layer would be treated as UTF-8. Other layers, such as compression are completely ignored with or without the ":utf8" flag. o sysread() and recv() would read from the handle, skipping any validation by the layers, and do no validation of their own. This could lead to invalidly encoded perl scalars. my() in false conditional prohibited Declarations such as "my $x if 0" are no longer permitted. Fatalize $* and $# These special variables, long deprecated, now throw exceptions when used. Fatalize unqualified use of dump() The "dump()" function, long discouraged, may no longer be used unless it is fully qualified, i.e., "CORE::dump()". Remove File::Glob::glob() The "File::Glob::glob()" function, long deprecated, has been removed and now throws an exception which advises use of "File::Glob::bsd_glob()" instead. "pack()" no longer can return malformed UTF-8 It croaks if it would otherwise return a UTF-8 string that contains malformed UTF-8. This protects against potential security threats. This is considered a bug fix as well. Any set of digits in the Common script are legal in a script run of another script There are several sets of digits in the Common script. "[0-9]" is the most familiar. But there are also "[\x{FF10}-\x{FF19}]" (FULLWIDTH DIGIT ZERO - FULLWIDTH DIGIT NINE), and several sets for use in mathematical notation, such as the MATHEMATICAL DOUBLE-STRUCK DIGITs. Any of these sets should be able to appear in script runs of, say, Greek. But the design of 5.30 overlooked all but the ASCII digits "[0-9]", so the design was flawed. This has been fixed, so is both a bug fix and an incompatibility. All digits in a run still have to come from the same set of ten digits. JSON::PP enables allow_nonref by default As JSON::XS 4.0 changed its policy and enabled allow_nonref by default, JSON::PP also enabled allow_nonref by default. Deprecations In XS code, use of various macros dealing with UTF-8. This deprecation was scheduled to become fatal in 5.30, but has been delayed to 5.32 due to problems that showed up with some CPAN modules. For details of what's affected, see perldeprecation. Performance Enhancements o Translating from UTF-8 into the code point it represents now is done via a deterministic finite automaton, speeding it up. As a typical example, "ord("\x7fff")" now requires 12% fewer instructions than before. The performance of checking that a sequence of bytes is valid UTF-8 is similarly improved, again by using a DFA. o Eliminate recursion from finalize_op(). o A handful of small optimizations related to character folding and character classes in regular expressions. o Optimization of "IV" to "UV" conversions. o Speed up of the integer stringification algorithm by processing two digits at a time instead of one. o Improvements based on LGTM analysis and recommendation. o Code optimizations in regcomp.c, regcomp.h, regexec.c. o Regular expression pattern matching of things like "qr/[^a]/" is significantly sped up, where a is any ASCII character. Other classes can get this speed up, but which ones is complicated and depends on the underlying bit patterns of those characters, so differs between ASCII and EBCDIC platforms, but all case pairs, like "qr/[Gg]/" are included, as is "[^01]".
perl5: find -> ${FIND}
lang/perl5: do not use -delete option of find(1) Do not use -delete option of find(1). It is not supported on Solaris's native find(1) reported by Sad Clouds.
perl5: updated to 5.28.2 NAME perldelta - what is new for perl v5.28.2 DESCRIPTION This document describes differences between the 5.28.1 release and the 5.28.2 release. If you are upgrading from an earlier release such as 5.28.0, first read perl5281delta, which describes differences between 5.28.0 and 5.28.1. Incompatible Changes Any set of digits in the Common script are legal in a script run of another script There are several sets of digits in the Common script. "[0-9]" is the most familiar. But there are also "[\x{FF10}-\x{FF19}]" (FULLWIDTH DIGIT ZERO - FULLWIDTH DIGIT NINE), and several sets for use in mathematical notation, such as the MATHEMATICAL DOUBLE-STRUCK DIGITs. Any of these sets should be able to appear in script runs of, say, Greek. But the previous design overlooked all but the ASCII digits "[0-9]", so the design was flawed. This has been fixed, so is both a bug fix and an incompatibility. All digits in a run still have to come from the same set of ten digits. Modules and Pragmata Updated Modules and Pragmata o Module::CoreList has been upgraded from version 5.20181129_28 to 5.20190419. o PerlIO::scalar has been upgraded from version 0.29 to 0.30. o Storable has been upgraded from version 3.08 to 3.08_01. Platform Support Platform-Specific Notes Windows The Windows Server 2003 SP1 Platform SDK build, with its early x64 compiler and tools, was accidentally broken in Perl 5.27.9. This has now been fixed. Mac OS X Perl's build and testing process on Mac OS X for "-Duseshrplib" builds is now compatible with Mac OS X System Integrity Protection (SIP). SIP prevents binaries in /bin (and a few other places) being passed the "DYLD_LIBRARY_PATH" environment variable. For our purposes this prevents "DYLD_LIBRARY_PATH" from being passed to the shell, which prevents that variable being passed to the testing or build process, so running "perl" couldn't find libperl.dylib. To work around that, the initial build of the perl executable expects to find libperl.dylib in the build directory, and the library path is then adjusted during installation to point to the installed library. Selected Bug Fixes o If an in-place edit is still in progress during global destruction and the process exit code (as stored in $?) is zero, perl will now treat the in-place edit as successful, replacing the input file with any output produced. This allows code like: perl -i -ne 'print "Foo"; last' to replace the input file, while code like: perl -i -ne 'print "Foo"; die' will not. o A regression in Perl 5.28 caused the following code to fail close(STDIN); open(CHILD, "|wc -l")' because the child's stdin would be closed on exec. This has now been fixed. o "pack "u", "invalid uuencoding"" now properly NUL terminates the zero-length SV produced. o Failing to compile a format now aborts compilation. Like other errors in sub-parses this could leave the parser in a strange state, possibly crashing perl if compilation continued. o See "Any set of digits in the Common script are legal in a script run of another script".
perl5: updated to 5.28.1 what is new for perl v5.28.1: Security [CVE-2018-18311] Integer overflow leading to buffer overflow and segmentation fault Integer arithmetic in "Perl_my_setenv()" could wrap when the combined length of the environment variable name and value exceeded around 0x7fffffff. This could lead to writing beyond the end of an allocated buffer with attacker supplied data. [CVE-2018-18312] Heap-buffer-overflow write in S_regatom (regcomp.c) A crafted regular expression could cause heap-buffer-overflow write during compilation, potentially allowing arbitrary code execution. Incompatible Changes There are no changes intentionally incompatible with 5.28.0. If any exist, they are bugs, and we request that you submit a report. See "Reporting Bugs" below. Modules and Pragmata Updated Modules and Pragmata o Module::CoreList has been upgraded from version 5.20180622 to 5.20181129_28. Selected Bug Fixes o Perl 5.28 introduced an "index()" optimization when comparing to -1 (or indirectly, e.g. >= 0). When this optimization was triggered inside a "when" clause it caused a warning ("Argument %s isn't numeric in smart match"). This has now been fixed. o Matching of decimal digits in script runs, introduced in Perl 5.28, had a bug that led to "1\N{THAI DIGIT FIVE}" matching "/^(*sr:\d+)$/" when it should not. This has now been fixed. o The new in-place editing code no longer leaks directory handles.
Add support for Minix
lang/perl5: $^X fallback work when platform-specific technique fails Apply 03b94aa47e981af3c7b0118bfb11facda2b95251 from upstream make $^X fallback work when platform-specific technique fails. Bump PKGREVISION.
lang/perl5: Fix file descriptor leak in in-place editing Back-port perl commit 3d5e9c119db6b727684fe75dfcfe5831c4351bec to fix a file descriptor leak in in-place editing which is breaking the build of xentools48. Should fix PR 53578. Bump PKGREVISION.
perl: update to 5.28.0. Removed some ancient patches. Fix a pkglint warning. Core Enhancements Unicode 10.0 is supported delete on key/value hash slices Experimentally, there are now alphabetic synonyms for some regular expression assertions Mixed Unicode scripts are now detectable In-place editing with perl -i is now safer Initialisation of aggregate state variables Full-size inode numbers The sprintf %j format size modifier is now available with pre-C99 compilers Close-on-exec flag set atomically String- and number-specific bitwise ops are no longer experimental Locales are now thread-safe on systems that support them New read-only predefined variable ${^SAFE_LOCALES} Security [CVE-2017-12837] Heap buffer overflow in regular expression compiler [CVE-2017-12883] Buffer over-read in regular expression parser [CVE-2017-12814] $ENV{$key} stack buffer overflow on Windows Default Hash Function Change Incompatible Changes Subroutine attribute and signature order Comma-less variable lists in formats are no longer allowed The :locked and :unique attributes have been removed \N{} with nothing between the braces is now illegal Opening the same symbol as both a file and directory handle is no longer allowed Use of bare << to mean <<"" is no longer allowed Setting $/ to a reference to a non-positive integer no longer allowed Unicode code points with values exceeding IV_MAX are now fatal The B::OP::terse method has been removed Use of inherited AUTOLOAD for non-methods is no longer allowed Use of strings with code points over 0xFF is not allowed for bitwise string operators Setting ${^ENCODING} to a defined value is now illegal Backslash no longer escapes colon in PATH for the -S switch the -DH (DEBUG_H) misfeature has been removed Yada-yada is now strictly a statement Sort algorithm can no longer be specified Over-radix digits in floating point literals Return type of unpackstring() Deprecations Use of vec on strings with code points above 0xFF is deprecated Some uses of unescaped "{" in regexes are no longer fatal Use of unescaped "{" immediately after a "(" in regular expression patterns is deprecated Assignment to $[ will be fatal in Perl 5.30 hostname() won't accept arguments in Perl 5.32 Module removals Performance Enhancements Modules and Pragmata Removal of use vars Use of DynaLoader changed to XSLoader in many modules Updated Modules and Pragmata Removed Modules and Pragmata More details are in the included perldelta.pod.
*: Move SUBST_STAGE from post-patch to pre-configure Performing substitutions during post-patch breaks tools such as mkpatches, making it very difficult to regenerate correct patches after making changes, and often leading to substituted string replacements being committed.
perl5: updated to 5.26.2 5.26.2: Security [CVE-2018-6797] heap-buffer-overflow (WRITE of size 1) in S_regatom (regcomp.c) A crafted regular expression could cause a heap buffer write overflow, with control over the bytes written. [CVE-2018-6798] Heap-buffer-overflow in Perl__byte_dump_string (utf8.c) Matching a crafted locale dependent regular expression could cause a heap buffer read overflow and potentially information disclosure. [CVE-2018-6913] heap-buffer-overflow in S_pack_rec pack() could cause a heap buffer write overflow with a large item count. Assertion failure in Perl__core_swash_init (utf8.c) Control characters in a supposed Unicode property name could cause perl to crash. This has been fixed. Updated Modules and Pragmata Module::CoreList has been upgraded from version 5.20170922_26 to 5.20180414_26. PerlIO::via has been upgraded from version 0.16 to 0.17. Term::ReadLine has been upgraded from version 1.16 to 1.17. Unicode::UCD has been upgraded from version 0.68 to 0.69. Selected Bug Fixes The readpipe() built-in function now checks at compile time that it has only one parameter expression, and puts it in scalar context, thus ensuring that it doesn't corrupt the stack at runtime. Fixed a use after free bug in pp_list introduced in Perl 5.27.1. Parsing a sub definition could cause a use after free if the sub keyword was followed by whitespace including newlines (and comments). The tokenizer now correctly adjusts a parse pointer when skipping whitespace in an ${identifier} construct. Accesses to ${^LAST_FH} no longer assert after using any of a variety of I/O operations on a non-glob. sort now performs correct reference counting when aliasing $a and $b, thus avoiding premature destruction and leakage of scalars if they are re-aliased during execution of the sort comparator. Some convoluted kinds of regexp no longer cause an arithmetic overflow when compiled. Fixed a duplicate symbol failure with -flto -mieee-fp builds. pp.c defined _LIB_VERSION which -lieee already defines. A NULL pointer dereference in the S_regmatch() function has been fixed. Failures while compiling code within other constructs, such as with string interpolation and the right part of s///e now cause compilation to abort earlier.
perl5: Fix CFLAGS. We need to remove -std=c89 so that compilers which default to C99 don't fail, and don't automatically add -fstack-protector flags, leave it to the user to decide via PKGSRC_USE_SSP. Fixes clang on SmartOS. Bump PKGREVISION.
perl: Remove patch-dist_Carp_lib_Carp.pm This patch is a workaround for a perl core problem. The patch has not been accepted upstream, and in its current form introduces other bugs, see https://rt.perl.org/Ticket/Display.html?id=132448 Bump PKGREVISION.
Update perl to version 5.26.1. Pkgsrc changes: * Remove patch which has been integrated upstream Upstream changes: NAME perldelta - what is new for perl v5.26.1 DESCRIPTION This document describes differences between the 5.26.0 release and the 5.26.1 release. If you are upgrading from an earlier release such as 5.24.0, first read perl5260delta, which describes differences between 5.24.0 and 5.26.0. Security [CVE-2017-12837] Heap buffer overflow in regular expression compiler Compiling certain regular expression patterns with the case-insensitive modifier could cause a heap buffer overflow and crash perl. This has now been fixed. [perl #131582] <https://rt.perl.org/Public/Bug/Display.html?id=131582> [CVE-2017-12883] Buffer over-read in regular expression parser For certain types of syntax error in a regular expression pattern, the error message could either contain the contents of a random, possibly large, chunk of memory, or could crash perl. This has now been fixed. [perl #131598] <https://rt.perl.org/Public/Bug/Display.html?id=131598> [CVE-2017-12814] $ENV{$key} stack buffer overflow on Windows A possible stack buffer overflow in the %ENV code on Windows has been fixed by removing the buffer completely since it was superfluous anyway. [perl #131665] <https://rt.perl.org/Public/Bug/Display.html?id=131665> Incompatible Changes There are no changes intentionally incompatible with 5.26.0. If any exist, they are bugs, and we request that you submit a report. See "Reporting Bugs" below. Modules and Pragmata Updated Modules and Pragmata * base has been upgraded from version 2.25 to 2.26. The effects of dotless @INC on this module have been limited by the introduction of a more refined and accurate solution for removing '.' from @INC while reducing the false positives. * charnames has been upgraded from version 1.44 to 1.45. * Module::CoreList has been upgraded from version 5.20170530 to 5.20170922_26. Platform Support Platform-Specific Notes FreeBSD * Building with g++ on FreeBSD-11.0 has been fixed. [perl #131337] <https://rt.perl.org/Public/Bug/Display.html?id=131337> Windows * Support for compiling perl on Windows using Microsoft Visual Studio 2017 (containing Visual C++ 14.1) has been added. * Building XS modules with GCC 6 in a 64-bit build of Perl failed due to incorrect mapping of "strtoll" and "strtoull". This has now been fixed. [perl #131726] <https://rt.perl.org/Public/Bug/Display.html?id=131726> [cpan #121683] <https://rt.cpan.org/Public/Bug/Display.html?id=121683> [cpan #122353] <https://rt.cpan.org/Public/Bug/Display.html?id=122353> Selected Bug Fixes * Several built-in functions previously had bugs that could cause them to write to the internal stack without allocating room for the item being written. In rare situations, this could have led to a crash. These bugs have now been fixed, and if any similar bugs are introduced in future, they will be detected automatically in debugging builds. [perl #131732] <https://rt.perl.org/Public/Bug/Display.html?id=131732> * Using a symbolic ref with postderef syntax as the key in a hash lookup was yielding an assertion failure on debugging builds. [perl #131627] <https://rt.perl.org/Public/Bug/Display.html?id=131627> * List assignment ("aassign") could in some rare cases allocate an entry on the mortal stack and leave the entry uninitialized. [perl #131570] <https://rt.perl.org/Public/Bug/Display.html?id=131570> * Attempting to apply an attribute to an "our" variable where a function of that name already exists could result in a NULL pointer being supplied where an SV was expected, crashing perl. [perl #131597] <https://rt.perl.org/Public/Bug/Display.html?id=131597> * The code that vivifies a typeglob out of a code ref made some false assumptions that could lead to a crash in cases such as $::{"A"} = sub {}; \&{"A"}. This has now been fixed. [perl #131085] <https://rt.perl.org/Public/Bug/Display.html?id=131085> * "my_atof2" no longer reads beyond the terminating NUL, which previously occurred if the decimal point is immediately before the NUL. [perl #131526] <https://rt.perl.org/Public/Bug/Display.html?id=131526> * Occasional "Malformed UTF-8 character" crashes in "s//" on utf8 strings have been fixed. [perl #131575] <https://rt.perl.org/Public/Bug/Display.html?id=131575> * "perldoc -f s" now finds "s///". [perl #131371] <https://rt.perl.org/Public/Bug/Display.html?id=131371> * Some erroneous warnings after utf8 conversion have been fixed. [perl #131190] <https://rt.perl.org/Public/Bug/Display.html?id=131190> * The "jmpenv" frame to catch Perl exceptions is set up lazily, and this used to be a bit too lazy. The catcher is now set up earlier, preventing some possible crashes. [perl #105930] <https://rt.perl.org/Public/Bug/Display.html?id=105930> * Spurious "Assuming NOT a POSIX class" warnings have been removed. [perl #131522] <https://rt.perl.org/Public/Bug/Display.html?id=131522> Acknowledgements Perl 5.26.1 represents approximately 4 months of development since Perl 5.26.0 and contains approximately 8,900 lines of changes across 85 files from 23 authors. Excluding auto-generated files, documentation and release tools, there were approximately 990 lines of changes to 38 .pm, .t, .c and .h files. Perl continues to flourish into its third decade thanks to a vibrant community of users and developers. The following people are known to have contributed the improvements that became Perl 5.26.1: Aaron Crane, Andy Dougherty, Aristotle Pagaltzis, Chris 'BinGOs' Williams, Craig A. Berry, Dagfinn Ilmari Mannsaaker, David Mitchell, E. Choroba, Eric Herman, Father Chrysostomos, Jacques Germishuys, James E Keenan, John SJ Anderson, Karl Williamson, Ken Brown, Lukas Mai, Matthew Horsfall, Ricardo Signes, Sawyer X, Steve Hay, Tony Cook, Yves Orton, Zefram. The list above is almost certainly incomplete as it is automatically generated from version control history. In particular, it does not include the names of the (very much appreciated) contributors who reported issues to the Perl bug tracker. Many of the changes included in this version originated in the CPAN modules included in Perl's core. We're grateful to the entire CPAN community for helping Perl to flourish. For a more complete list of all of Perl's historical contributors, please see the AUTHORS file in the Perl source distribution. Reporting Bugs If you find what you think is a bug, you might check the perl bug database at <https://rt.perl.org/> . There may also be information at <http://www.perl.org/> , the Perl Home Page. If you believe you have an unreported bug, please run the perlbug program included with your release. Be sure to trim your bug down to a tiny but sufficient test case. Your bug report, along with the output of "perl -V", will be sent off to perlbug@perl.org to be analysed by the Perl porting team. If the bug you are reporting has security implications which make it inappropriate to send to a publicly archived mailing list, then see "SECURITY VULNERABILITY CONTACT INFORMATION" in perlsec for details of how to report the issue. Give Thanks If you wish to thank the Perl 5 Porters for the work we had done in Perl 5, you can do so by running the "perlthanks" program: perlthanks This will send an email to the Perl 5 Porters list with your show of thanks. SEE ALSO The Changes file for an explanation of how to view exhaustive details on what changed. The INSTALL file for how to build Perl. The README file for general stuff. The Artistic and Copying files for copyright information.
perl5: patch for CVE-2017-12837, CVE-2017-12883 CVE-2017-12837: heap buffer overflow in regular expression compiler CVE-2017-12883: buffer over-read in regular expression parser From upstream commits: https://perl5.git.perl.org/perl.git/commitdiff/2be4edede4ae226e2eebd4eff28cedd2041f300f https://perl5.git.perl.org/perl.git/commitdiff/96c83ed78aeea1a0496dd2b2d935869a822dc8a5 bump PKGREVISION
Use ldflags during build. Allow -Wl,-z arguments into lddlflags. Fixes RELRO build. Bump PKGREVISION. While here, remove bogus comment from patch and remove reference to two non-existing files.
Apply patch from latest OpenBSD errata (CVE-2017-6512) here, too.
Update to 5.22.2 Changelog: NAME perldelta - what is new for perl v5.22.2 DESCRIPTION This document describes differences between the 5.22.1 release and the 5.22.2 release. If you are upgrading from an earlier release such as 5.22.0, first read perl5221delta, which describes differences between 5.22.0 and 5.22.1. Security Fix out of boundary access in Win32 path handling This is CVE-2015-8608. For more information see [perl #126755] <https://rt.perl.org/Ticket/Display.html?id=126755>. Fix loss of taint in "canonpath()" This is CVE-2015-8607. For more information see [perl #126862] <https://rt.perl.org/Ticket/Display.html?id=126862>. Set proper umask before calling mkstemp(3) In 5.22.0 perl started setting umask to 0600 before calling mkstemp(3) and restoring it afterwards. This wrongfully tells open(2) to strip the owner read and write bits from the given mode before applying it, rather than the intended negation of leaving only those bits in place. Systems that use mode 0666 in mkstemp(3) (like old versions of glibc) create a file with permissions 0066, leaving world read and write permissions regardless of current umask. This has been fixed by using umask 0177 instead. [perl #127322] <https://rt.perl.org/Ticket/Display.html?id=127322> Avoid accessing uninitialized memory in Win32 "crypt()" Validation that will detect both a short salt and invalid characters in the salt has been added. ://rt.perl.org/Ticket/Display.html?id=126922> Remove duplicate environment variables from "environ" Previously, if an environment variable appeared more than once in "environ[]", %ENV would contain the last entry for that name, while a typical "getenv()" would return the first entry. We now make sure %ENV contains the same as what "getenv()" returns. Secondly, we now remove duplicates from "environ[]", so if a setting with that name is set in %ENV we won't pass an unsafe value to a child process. This is CVE-2016-2381. Incompatible Changes There are no changes intentionally incompatible with Perl 5.22.1. If any exist, they are bugs, and we request that you submit a report. See "Reporting Bugs" below. Modules and Pragmata Updated Modules and Pragmata • File::Spec has been upgraded from version 3.56 to 3.56_01. "canonpath()" now preserves taint. See "Fix loss of taint in "canonpath()"". • Module::CoreList has been upgraded from version 5.20151213 to 5.20160429. The version number of Digest::SHA listed for Perl 5.18.4 was wrong and has been corrected. Likewise for the version number of Config in 5.18.3 and 5.18.4. [perl #127624] <https://rt.perl.org/Ticket/Display.html?id=127624> Documentation Changes to Existing Documentation perldiag • The explanation of the warning "unable to close filehandle %s properly: %s" which can occur when doing an implicit close of a filehandle has been expanded and improved. perlfunc • The documentation of "hex()" has been revised to clarify valid inputs. Configuration and Compilation • Dtrace builds now build successfully on systems with a newer dtrace that require an input object file that uses the probes in the .d file. Previously the probe would fail and cause a build failure. [perl #122287] <https://rt.perl.org/Ticket/Display.html?id=122287> • Configure no longer probes for libnm by default. Originally this was the "New Math" library, but the name has been re-used by the GNOME NetworkManager. [perl #127131] <https://rt.perl.org/Ticket/Display.html?id=127131> • Configure now knows about gcc 5. • Compiling perl with -DPERL_MEM_LOG now works again. Platform Support Platform-Specific Notes Darwin Compiling perl with -Dusecbacktrace on Darwin now works again. [perl #127764] <https://rt.perl.org/Ticket/Display.html?id=127764> OS X/Darwin Builds with both -DDEBUGGING and threading enabled would fail with a "panic: free from wrong pool" error when built or tested from Terminal on OS X. This was caused by perl's internal management of the environment conflicting with an atfork handler using the libc "setenv()" function to update the environment. Perl now uses "setenv()"/"unsetenv()" to update the environment on OS X. [perl #126240] <https://rt.perl.org/Ticket/Display.html?id=126240> ppc64el The floating point format of ppc64el (Debian naming for little- endian PowerPC) is now detected correctly. Tru64 A test failure in t/porting/extrefs.t has been fixed. Internal Changes • An unwarranted assertion in "Perl_newATTRSUB_x()" has been removed. If a stub subroutine definition with a prototype has been seen, then any subsequent stub (or definition) of the same subroutine with an attribute was causing an assertion failure because of a null pointer. [perl #126845] <https://rt.perl.org/Ticket/Display.html?id=126845> Selected Bug Fixes • Calls to the placeholder &PL_sv_yes used internally when an "import()" or "unimport()" method isn't found now correctly handle scalar context. [perl #126042] <https://rt.perl.org/Ticket/Display.html?id=126042> • The "pipe()" operator would assert for "DEBUGGING" builds instead of producing the correct error message. The condition asserted on is detected and reported on correctly without the assertions, so the assertions were removed. [perl #126480] <https://rt.perl.org/Ticket/Display.html?id=126480> • In some cases, failing to parse a here-doc would attempt to use freed memory. This was caused by a pointer not being restored correctly. [perl #126443] <https://rt.perl.org/Ticket/Display.html?id=126443> • Perl now reports more context when it sees an array where it expects to see an operator, and avoids an assertion failure. [perl #123737] <https://rt.perl.org/Ticket/Display.html?id=123737> • If a here-doc was found while parsing another operator, the parser had already read end of file, and the here-doc was not terminated, perl could produce an assertion or a segmentation fault. This now reliably complains about the unterminated here-doc. [perl #125540] <https://rt.perl.org/Ticket/Display.html?id=125540> • Parsing beyond the end of the buffer when processing a "#line" directive with no filename is now avoided. [perl #127334] <https://rt.perl.org/Ticket/Display.html?id=127334> • Perl 5.22.0 added support for the C99 hexadecimal floating point notation, but sometimes misparsed hex floats. This has been fixed. [perl #127183] <https://rt.perl.org/Ticket/Display.html?id=127183> • Certain regex patterns involving a complemented posix class in an inverted bracketed character class, and matching something else optionally would improperly fail to match. An example of one that could fail is "qr/_?[^\Wbar]\x{100}/". This has been fixed. [perl #127537] <https://rt.perl.org/Ticket/Display.html?id=127537> • Fixed an issue with "pack()" where "pack "H"" (and "pack "h"") could read past the source when given a non-utf8 source and a utf8 target. [perl #126325] <https://rt.perl.org/Ticket/Display.html?id=126325> • Fixed some cases where perl would abort due to a segmentation fault, or a C-level assert. [perl #126193] <https://rt.perl.org/Ticket/Display.html?id=126193> [perl #126257] <https://rt.perl.org/Ticket/Display.html?id=126257> [perl #126258] <https://rt.perl.org/Ticket/Display.html?id=126258> [perl #126405] <https://rt.perl.org/Ticket/Display.html?id=126405> [perl #126602] <https://rt.perl.org/Ticket/Display.html?id=126602> [perl #127773] <https://rt.perl.org/Ticket/Display.html?id=127773> [perl #127786] <https://rt.perl.org/Ticket/Display.html?id=127786> • A memory leak when setting $ENV{foo} on Darwin has been fixed. [perl #126240] <https://rt.perl.org/Ticket/Display.html?id=126240> • Perl now correctly raises an error when trying to compile patterns with unterminated character classes while there are trailing backslashes. [perl #126141] <https://rt.perl.org/Ticket/Display.html?id=126141> • "NOTHING" regops and "EXACTFU_SS" regops in "make_trie()" are now handled properly. [perl #126206] <https://rt.perl.org/Ticket/Display.html?id=126206> • Perl now only tests "semctl()" if we have everything needed to use it. In FreeBSD the "semctl()" entry point may exist, but it can be disabled by policy. [perl #127533] <https://rt.perl.org/Ticket/Display.html?id=127533> • A regression that allowed undeclared barewords as hash keys to work despite strictures has been fixed. [perl #126981] <https://rt.perl.org/Ticket/Display.html?id=126981> • As an optimization (introduced in Perl 5.20.0), "uc()", "lc()", "ucfirst()" and "lcfirst()" sometimes modify their argument in- place rather than returning a modified copy. The criteria for this optimization has been made stricter to avoid these functions accidentally modifying in-place when they should not, which has been happening in some cases, e.g. in List::Util. • Excessive memory usage in the compilation of some regular expressions involving non-ASCII characters has been reduced. A more complete fix is forthcoming in Perl 5.24.0. Acknowledgements Perl 5.22.2 represents approximately 5 months of development since Perl 5.22.1 and contains approximately 3,000 lines of changes across 110 files from 24 authors. Excluding auto-generated files, documentation and release tools, there were approximately 1,500 lines of changes to 52 .pm, .t, .c and .h files. Perl continues to flourish into its third decade thanks to a vibrant community of users and developers. The following people are known to have contributed the improvements that became Perl 5.22.2: Aaron Crane, Abigail, Andreas Koenig, Aristotle Pagaltzis, Chris 'BinGOs' Williams, Craig A. Berry, Dagfinn Ilmari Mannsaaker, David Golden, David Mitchell, H.Merijn Brand, James E Keenan, Jarkko Hietaniemi, Karen Etheridge, Karl Williamson, Matthew Horsfall, Niko Tyni, Ricardo Signes, Sawyer X, Stevan Little, Steve Hay, Todd Rinaldo, Tony Cook, Vladimir Timofeev, Yves Orton. The list above is almost certainly incomplete as it is automatically generated from version control history. In particular, it does not include the names of the (very much appreciated) contributors who reported issues to the Perl bug tracker. Many of the changes included in this version originated in the CPAN modules included in Perl's core. We're grateful to the entire CPAN community for helping Perl to flourish. For a more complete list of all of Perl's historical contributors, please see the AUTHORS file in the Perl source distribution.
Pullup ticket #4962 - requested by sevan lang/perl5: security fix Revisions pulled up: - lang/perl5/Makefile 1.237 - lang/perl5/distinfo 1.134 - lang/perl5/patches/patch-perl.c 1.1 --- Module Name: pkgsrc Committed By: sevan Date: Tue Apr 19 22:14:39 UTC 2016 Modified Files: pkgsrc/lang/perl5: Makefile distinfo Added Files: pkgsrc/lang/perl5/patches: patch-perl.c Log Message: Add patch to address CVE-2016-2381 Bump pkgrev Reviewed by wiz@
Add patch to address CVE-2016-2381 Bump pkgrev Reviewed by wiz@
Perl now requires C99 with the introduction of C99 math functions in POSIX.pm
Remove reference to file no longer part of the perl distribution. Add a Configure test to verify that including <fenv.h> doesn't produce a build error, as it will in quite few cases on NetBSD on archs which are not amd64, i386 or sparc in NetBSD 6.x. If the test build fails, pretend we don't have fenv.h. Validated that the result builds on NetBSD/evbarm 6.0 and NetBSD/i386 6.1.5. Build fix, so no need to bump PKGREVISION. OK by wiz@
Add support for Bitrig
Replace perl interpreter in one more file.
Remove path to non-existing file, and fix path to existing one.
Perl 5.20.1 has been released, this is the latest stable version of Perl. Changes include performance enhancements and various bug fixes. Perl 5.20.1 represents approximately 4 months of development since Perl 5.20.0 and contains approximately 12,000 lines of changes across 170 files from 36 authors.
Pullup ticket #4507 - requested by spz lang/perl5: security patch Revisions pulled up: - lang/perl5/Makefile 1.230 - lang/perl5/distinfo 1.123 - lang/perl5/patches/patch-dist_Data-Dumper_Dumper.pm 1.1 - lang/perl5/patches/patch-dist_Data-Dumper_Dumper.xs 1.1 --- Module Name: pkgsrc Committed By: spz Date: Mon Sep 29 11:36:02 UTC 2014 Modified Files: pkgsrc/lang/perl5: Makefile distinfo Added Files: pkgsrc/lang/perl5/patches: patch-dist_Data-Dumper_Dumper.pm patch-dist_Data-Dumper_Dumper.xs Log Message: Minimally invasive fix for CVE-2014-4330, also known as https://www.lsexperts.de/advisories/lse-2014-06-10.txt, a stack overflow vulnerability in Data::Dumper Patches taken from http://perl5.git.perl.org/perl.git/commitdiff/19be3be6968e2337bcdfe480693fff795ecd1304, to be removed when updating to 5.20.1 (or later). perl-5.20.0nb2 is fit for pkg_add -u replacement of perl-5.20.0nb1
Minimally invasive fix for CVE-2014-4330, also known as https://www.lsexperts.de/advisories/lse-2014-06-10.txt, a stack overflow vulnerability in Data::Dumper Patches taken from http://perl5.git.perl.org/perl.git/commitdiff/19be3be6968e2337bcdfe480693fff795ecd1304, to be removed when updating to 5.20.1 (or later). perl-5.20.0nb2 is fit for pkg_add -u replacement of perl-5.20.0nb1
Use bash on SunOS, as pdksh (at least on x86_64) has issues for the moment.
Don't try to extract the library search path from gcc/clang. It will leak .buildlink into the final build and create a broken p5-gdbm. Bump revision.
-lnetwork is wanted for Haiku.
Due to directory style layout change, Haiku's SYSLIBPATH may not be /boot/common/lib. Undef it for Haiku and COMPILER_LIB_DIRS instead (also for other platforms not set here). XXX: all platforms should be SYSLIBPATH=${COMPILER_LIB_DIRS}, or XXX: _OPSYS_LIB_DIRS for such platforms should be fixed.
Note CGI core module is older for www/p5-CGI-Fast.
core contains experimental-0.007
clean up "older for" notation.
Update CONFLICTS lines and add a SUPERSEDES line for p5-experimental.
Changes 5.20.0: Experimental Subroutine signatures subs now take a prototype attribute More consistent prototype parsing rand now uses a consistent random number generator New slice syntax Experimental Postfix Dereferencing Unicode 6.3 now supported New \p{Unicode} regular expression pattern property Better 64-bit support use locale now works on UTF-8 locales use locale now compiles on systems without locale ability More locale initialization fallback options -DL runtime option now added for tracing locale setting -F now implies -a and -a implies -n $a and $b warnings exemption
revbump perl after update
Fix build under SCO OpenServer 5.0.7/3.2 and add workaround for empty result of nl_langinfo(CODESET). This workaround is needed for devel/gtexinfo.
Set USE_GCC_RUNTIME=yes for packages which build shared libraries but do not use libtool to do so. This is required to correctly depend upon a gcc runtime package (e.g. gcc47-libs) when using USE_PKGSRC_GCC_RUNTIME.
pkg/48500: add a hack on NetBSD/alpha to add the gcc compiler flag -fno-tree-ter, removing the alignment warnings printed by the NetBSD/alpha kernel when perl was executed. bump PKGREVISION
Fix OpenBSD 5.3 build and supress warning under OpenBSD 5.4 * OpenBSD has no libdb like NetBSD
Changes 5.18.2: * B has been upgraded from version 1.42_01 to 1.42_02. * B::Concise has been upgraded from version 0.95 to 0.95_01. * English has been upgraded from version 1.06 to 1.06_01. This fixes an error about the performance of $`, $&, and c<$'>. * File::Glob has been upgraded from version 1.20 to 1.20_01. Bugs fixed: * Perl 5.18.1 introduced a regression along with a bugfix for lexical subs. Some B::SPECIAL results from B::CV::GV became undefs instead. This broke Devel::Cover among other libraries. * Perl 5.18.0 introduced a regression whereby [:^ascii:], if used in the same character class as other qualifiers, would fail to match characters in the Latin-1 block. * Perl 5.18.0 introduced a regression when using ->SUPER::method with AUTOLOAD by looking up AUTOLOAD from the current package, rather than the current package’s superclass. * Perl 5.18.0 introduced a regression whereby -bareword was no longer permitted under the strict and integer pragmata when used together. * Previously PerlIOBase_dup didn't check if pushing the new layer succeeded before (optionally) setting the utf8 flag. This could cause segfaults-by-nullpointer. * A buffer overflow with very long identifiers has been fixed. * A regression from 5.16 in the handling of padranges led to assertion failures if a keyword plugin declined to handle the second ‘my’, but only after creating a padop. * The construct $r=qr/.../; /$r/p is now handled properly, an issue which had been worsened by changes 5.18.0.
Fix/Update DEPENDS paterns for perl CORE modules, with some trivial fixes. Bump PKGREVISION for runtime dependency pattern changed packages.
Mark p5-* packages older than CORE module one as CONFLICTS. Base on 'corelist -v 5.18.1'.
Don't include -Wl,--whole-archive in the default LDFLAGS on NetBSD. It breaks the build in packages when the compiler doesn't implicitly disable it later. Bump revision.
Disable -fstack-protector on SunOS, it causes more trouble than its worth. Bump PKGREVISION.
Ensure -lssp is added to $lddlflags on SunOS when using -fstack-protector, fixing a number of packages with __stack_chk_* symbol failures. Bump PKGREVISION.
Changes 5.18.1: * B has been upgraded from 1.42 to 1.42_01, fixing bugs related to lexical subroutines. * Digest::SHA has been upgraded from 5.84 to 5.84_01, fixing a crashing bug. * Module::CoreList has been upgraded from 2.89 to 2.96. * Starting in v5.18.0, a construct like /[#](?{})/x would have its # incorrectly interpreted as a comment. The code block would be skipped, unparsed. This has been corrected. * A number of memory leaks related to the new, experimental regexp bracketed character class feature have been plugged. * The OP allocation code now returns correctly aligned memory in all cases for struct pmop. Previously it could return memory only aligned to a 4-byte boundary, which is not correct for an ithreads build with 64 bit IVs on some 32 bit platforms. Notably, this caused the build to fail completely on sparc GNU/Linux. * The debugger's man command been fixed. It was broken in the v5.18.0 release. The man command is aliased to the names doc and perldoc - all now work again. * @_ is now correctly visible in the debugger, fixing a regression introduced in v5.18.0's debugger. * Fixed a small number of regexp constructions that could either fail to match or crash perl when the string being matched against was allocated above the 2GB line on 32-bit systems. * Perl v5.16 inadvertently introduced a bug whereby calls to XSUBs that were not visible at compile time were treated as lvalues and could be assigned to, even when the subroutine was not an lvalue sub. This has been fixed. * Perl v5.18 inadvertently introduced a bug whereby dual-vars (i.e. variables with both string and numeric values, such as $! ) where the truthness of the variable was determined by the numeric value rather than the string value. * Perl v5.18 inadvertently introduced a bug whereby interpolating mixed up- and down-graded UTF-8 strings in a regex could result in malformed UTF-8 in the pattern: specifically if a downgraded character in the range \x80..\xff followed a UTF-8 string * Lexical constants (my sub a() { 42 }) no longer crash when inlined. * Parameter prototypes attached to lexical subroutines are now respected when compiling sub calls without parentheses. Previously, the prototypes were honoured only for calls with parentheses. * Syntax errors in lexical subroutines in combination with calls to the same subroutines no longer cause crashes at compile time. * The dtrace sub-entry probe now works with lexical subs, instead of crashing * Undefining an inlinable lexical subroutine (my sub foo() { 42 } undef &foo) would result in a crash if warnings were turned on. * Deep recursion warnings no longer crash lexical subroutines.
Fix build under GNU/kFreeBSD. * Add variable for GNU/kFreeBSD.
Fix netbsd hints: --whole-archive is a linker flag, not a compiler flag. Bump PKGREVISION. Hopefully improves p5-gettext with clang from pkgsrc.
Revert unintentional change to Makefile.
Fix build on FreeBSD/amd64 9.1-RELEASE. * FreeBSD 9.1's dtrace support has -h flag but "dtrace -h -s ../perldtrace.d" filed with following syntax error. "/usr/lib/dtrace/psinfo.d", line 37: syntax error near "uid_t" Adding dtrace support for perl5 on FreeBSD is hasty, I feel. dtrace support for FreeBSD perl5 is disabled.
Add patch from upstream git to try fixing test failures on 32bit NetBSD. From http://perl5.git.perl.org/perl.git/commitdiff/4149c7198d9b78d861df289cce40dd865cab57e7 Bump PKGREVISION.
No reason to mark as CONFLICTS with p5-Locale-Maketext-1.[0-9]*{,nb*}, core one is 1.22 whereas misc/p5-Locale-Maketext is 1.23.
Change the way we fix up $rm_try to avoid a tools directory reference. Fixes errors seen on SmartOS with PKG_DEVELOPER=yes when the fixed file was regenerated after the fixup, and appears to have the added benefit of removing the warnings about out of date builds during install.
We are excited to announce perl v5.18.0, the first stable release of version 18 of Perl 5. You can find a full list of changes in the file "perldelta.pod" located in the "pod" directory inside the release and on the web. Perl v5.18.0 represents approximately 12 months of development since Perl v5.16.0 and contains approximately 400,000 lines of changes across 2,100 files from 113 authors.
prevent to use C++ as default linker for Cygwin.
Changes 5.16.3: This release contains one major and a number of minor security fixes. It fixes a possible vulnerability to a denial-of-service attack by use of a carefully-crafted set of hash keys, a segmentation fault when reading or writing strings greater than 2^31 bytes in size, and a memory leak in Encode.xs's UTF-8 encoding implementation.
Pullup ticket #4100 - requested by tez lang/perl5: security patch Revisions pulled up: - lang/perl5/Makefile 1.198 - lang/perl5/distinfo 1.95 - lang/perl5/patches/patch-CVE-2013-1667 1.1 --- Module Name: pkgsrc Committed By: tez Date: Fri Mar 8 21:28:18 UTC 2013 Modified Files: pkgsrc/lang/perl5: Makefile distinfo Added Files: pkgsrc/lang/perl5/patches: patch-CVE-2013-1667 Log Message: add patch for CVE-2013-1667 from: https://bugzilla.redhat.com/show_bug.cgi?id=912276 bump PKGREVISION
add patch for CVE-2013-1667 from: https://bugzilla.redhat.com/show_bug.cgi?id=912276 bump PKGREVISION
tell library related staffs for Cygwin.
also use gmake for Cygwin. and as noted in comment, let to use GNUmakefile as MAKE_FILE.
ld='g++' in hints/cygwin.sh, c++ is required on Cygwin.
Work around a NULL dereference (bug report was submitted upstream)
Pullup ticket #4011 - requested by dholland lang/perl5: packaging fix Revisions pulled up: - lang/perl5/Makefile 1.193 - lang/perl5/distinfo 1.90 - lang/perl5/patches/patch-hints_netbsd.sh 1.3 --- Module Name: pkgsrc Committed By: dholland Date: Thu Jan 3 10:11:34 UTC 2013 Modified Files: pkgsrc/lang/perl5: Makefile distinfo Added Files: pkgsrc/lang/perl5/patches: patch-hints_netbsd.sh Log Message: Don't hardwire /usr/pkg; use $PREFIX instead. This fixes various problems with linking and rpaths, such as the NetBSD manifestation of PR 47187, and probably others; I haven't tried yet but I suspect at least my manifestation of PR 44985 will be fixed too.
Don't hardwire /usr/pkg; use $PREFIX instead. This fixes various problems with linking and rpaths, such as the NetBSD manifestation of PR 47187, and probably others; I haven't tried yet but I suspect at least my manifestation of PR 44985 will be fixed too.
Pullup ticket #3990 - requested by is lang/perl5: security patch Revisions pulled up: - lang/perl5/Makefile patch - lang/perl5/distinfo patch - lang/perl5/patches/patch-AUTHORS patch - lang/perl5/patches/patch-dist_Locale-Maketext_lib_Locale_Maketext.pm patch --- Apply patch submitted by Ignatios Souvatzis to fix the security vulnerability reported in SA51498.
patch SA51498 from the git repo
Set ccflags and ldflags in Policy.sh instead of with CONFIGURE_ARGS.
Move XCOFF special handling to Policy.sh.
Remove the addition on ${LOCALBASE}/lib rpath to ldflags as this is already done by the buildlink system.
Move options from Makefile to options.mk and remove a duplicate .include of mk/compiler.mk
Move a hack from the Makefile to hacks.mk
Tidy-up the perl5-post-install commands. (removing two missed references to PERL5_SCRIPTDIR and PERL5_MAN1DIR while at it)
Remove the uneeded PERL5_SCRIPTDIR and PERL5_MAN1DIR variables.
Remove the dynamic plist additions and add the two files to the static PLIST
REPLACE_PERL one more file and add a SUBST_MESSAGE. The rm class doesn't always work for me because miniperl regenerates some Makefiles and then overwrites the substed file. I haven't tracked the exact reason that triggers this down yet.
Changes 5.16.1: Enhancements were made to code features such as "use", which now explicitly enables feature bundles, a more consistent "eval" operator, and a revamped "substr" function. The "__SUB__" sequence now returns a reference to the current subroutine, allowing for recursive subroutines to be written more simply. Support for Unicode 6.1 was improved. Many other minor improvements and bugfixes, along with several deprecations, were made
Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.
Teach perllink(1) to transparently handle the case where a file has been compressed with "gzip". This stops it from creating a lot of broken symbolic links if "MANZ" is defined. Bump package revision because of this change.
Backport a fix for a serious bug from upstream, where pkgsrc's CFLAGS were being used to replace EU::CBuilder's ccflags, resulting in tests and modules failing in specific situations (e.g. on SunOS with ABI=32). https://rt.perl.org/rt3//Public/Bug/Display.html?id=89478 Bump PKGREVISION.
Force ExtUtils::MakeMaker to ignore installed packlist when creating new packlist. It prevents generating wrong PLIST during make replace. Bump PKGREVISION.
Always add PREFIX/lib to libpth. When building as normal user, it often exists already. This is not the case for bulk builds though. This fixes p5-MARC-Charset, since p5-gdbm ended up without rpath to PREFIX/lib. Fix some Perl interpreter paths while here. Bump revision.
PKGREVISION does not belong in Makefile.common.
If building with threads support, add PTHREAD_LDFLAGS to LDFLAGS. Fixes build on Ubuntu 11.04. Unlikely to have an effect on platforms that already built, so no PKGREVISION bump. Ok'd in freeze by wiz@
The CPAN module DB_File tries to link against -ldb, but NetBSD does not provide a separate library so compilation fails. Add a hints file to correct the list of libraries used on NetBSD.
Changes 5.14.1: * Several modules were updated to fix minor bugs. * Tests were fixed. * Documentation was improved. Changes 5.14.0: * Unicode version 6.0 is now supported. * Regular expressions can now be reset to the default modifiers. * Four new regular expression modifiers, "/d", "/l" , "/u", and "/a", were introduced. * The substitution operators now support the modifier "/r" to work non-destructively, leaving the original unmodified. * Larger octals can now be specified. * Array and hash operators can now experimentally operate directly on hard references. * printf-like functions now understand post-1980 size modifiers. * Exception handling was made more reliable and consistent. * Other enhancements and many bug fixes were made PkgSrc: * Fixed configuring on Mac OS X 10.7.
Allow sitebin to be overridden by PERL5_SITEBIN. No change to default build
Pullup ticket #3404 - requested by taca lang/perl5: security patch Revisions pulled up: - lang/perl5/Makefile 1.171 - lang/perl5/distinfo 1.74 - lang/perl5/patches/patch-pp.c 1.1 --- Module Name: pkgsrc Committed By: taca Date: Thu Apr 7 04:03:58 UTC 2011 Modified Files: pkgsrc/lang/perl5: Makefile distinfo Added Files: pkgsrc/lang/perl5/patches: patch-pp.c Log Message: Add a patch to fix for http://secunia.com/advisories/43921/ from perl's git repository (539689e74a). Bump PKGREVISION.
Add a patch to fix for http://secunia.com/advisories/43921/ from perl's git repository (539689e74a). Bump PKGREVISION.
Improve MirBSD support, from Benny Siegert in PR 44491.
Add support for MirBSD to pkgsrc. Patches from Benny Siegert and Thorsten Glaser.
Fix some patterns (hint: do not mix {} and <>
Pass CFLAGS and LDFLAGS, otherwise fails on Mac OS X with different SDKs.
Updating lang/perl5 from 5.12.2 to 5.12.2nb1 pkgsrc changes: - updating bundled modules * threads from 1.75 to 1.78 * threads::shared from 1.32 to 1.33 * Math::BigInt from 1.89_01 to 1.95 (without test merges) Upstream changes of avove modules >>> threads <<< 1.78 Wed Sep 22 17:21:22 2010 - Handle missing signal handler in thread (threads bug #60460) 1.77 Fri Mar 26 13:36:33 2010 - Fix race condition in t/threads.t (threads bug #55633) 1.76 Tue Mar 9 14:02:43 EST 2010 - Handle magic on arg to ->object() (bug #73330) - Make ->object(threads->tid()) work like ->self() (bug #73330) - Noted memory consumption issue in POD - Added reusable thread pool example >>> threads::shared <<< 1.33 Tue Mar 9 14:03:47 EST 2010 - Handle shared object reference during global destruction - Document that changing array length via $#array doesn't work >>> Math::BigInt <<< 2010-09-03 v1.90 rafl * fix bnok() for k==0 and k==n-1 2010-09-10 v1.91 rafl * fix various documentation bugs 2010-09-10 v1.92 rafl * re-upload v1.91 with a fixed SIGNATURE 2010-09-13 v1.93 rafl * Depend on perl >= 5.6.2 * Remove obsolete core test directory boilerplate * Convert from Test to Test::More 2010-09-13 v1.94 rafl DEVELOPMENT RELEASE * Attempt to fix Math::BigInt::Lite failures 2010-09-14 v1.95 rafl * Re-upload v1.94 as a stable release
Updating lang/perl5 from 5.12.1nb2 to 5.12.2 Upstream changes: Incompatible Changes There are no changes intentionally incompatible with 5.12.1. If any exist, they are bugs and reports are welcome. Core Enhancements Other than the bug fixes listed below, there should be no user-visible changes to the core language in this release. Modules and Pragmata New Modules and Pragmata This release does not introduce any new modules or pragmata. Pragmata Changes In the previous release, no VERSION; statements triggered a bug which could cause feature bundles to be loaded and strict mode to be enabled unintentionally. Updated Modules Carp Upgraded from version 1.16 to 1.17. Carp now detects incomplete caller() overrides and avoids using bogus @DB::args. To provide backtraces, Carp relies on particular behaviour of the caller built-in. Carp now detects if other code has overridden this with an incomplete implementation, and modifies its backtrace accordingly. Previously incomplete overrides would cause incorrect values in backtraces (best case), or obscure fatal errors (worst case) This fixes certain cases of Bizarre copy of ARRAY caused by modules overriding caller() incorrectly. CPANPLUS A patch to cpanp-run-perl has been backported from CPANPLUS 0.9004. This resolves [perl #55964] and [perl #57106], both of which related to failures to install distributions that use Module::Install::DSL. File::Glob A regression which caused a failure to find CORE::GLOBAL::glob after loading File::Glob to crash has been fixed. Now, it correctly falls back to external globbing via pp_glob. File::Copy File::Copy::copy(FILE, DIR) is now documented. File::Spec Upgraded from version 3.31 to 3.31_01. Several portability fixes were made in File::Spec::VMS: a colon is now recognized as a delimiter in native filespecs; caret-escaped delimiters are recognized for better handling of extended filespecs; catpath() returns an empty directory rather than the current directory if the input directory name is empty; abs2rel() properly handles Unix-style input. Utility Changes * perlbug now always gives the reporter a chance to change the email address it guesses for them. * perlbug should no longer warn about uninitialized values when using the -d and -v options. Changes to Existing Documentation * The existing policy on backward-compatibility and deprecation has been added to perlpolicy, along with definitions of terms like deprecation. * "srand" in perlfunc's usage has been clarified. * The entry for "die" in perlfunc was reorganized to emphasize its role in the exception mechanism. * Perl's INSTALL file has been clarified to explicitly state that Perl requires a C89 compliant ANSI C Compiler. * IO::Socket's getsockopt() and setsockopt() have been documented. * alarm()'s inability to interrupt blocking IO on Windows has been documented. * Math::TrulyRandom hasn't been updated since 1996 and has been removed as a recommended solution for random number generation. * perlrun has been updated to clarify the behaviour of octal flags to perl. * To ease user confusion, $# and $*, two special variables that were removed in earlier versions of Perl have been documented. * The version of perlfaq shipped with the Perl core has been updated from the official FAQ version, which is now maintained in the briandfoy/perlfaq branch of the Perl repository at git://perl5.git.perl.org/perl.git. Installation and Configuration Improvements Configuration improvements * The d_u32align configuration probe on ARM has been fixed. Compilation improvements * An "incompatible operand types" error in ternary expressions when building with clang has been fixed. * Perl now skips setuid File::Copy tests on partitions it detects to be mounted as nosuid. Selected Bug Fixes * A possible segfault in the T_PRTOBJ default typemap has been fixed. * A possible memory leak when using caller() to set @DB::args has been fixed. * Several memory leaks when loading XS modules were fixed. * unpack() now handles scalar context correctly for %32H and %32u, fixing a potential crash. split() would crash because the third item on the stack wasn't the regular expression it expected. unpack("%2H", ...) would return both the unpacked result and the checksum on the stack, as would unpack("%2u", ...). [perl #73814] * Perl now avoids using memory after calling free() in pp_require when there are CODEREFs in @INC. * A bug that could cause "Unknown error" messages when "call_sv(code, G_EVAL)" is called from an XS destructor has been fixed. * The implementation of the open $fh, '>' \$buffer feature now supports get/set magic and thus tied buffers correctly. * The pp_getc, pp_tell, and pp_eof opcodes now make room on the stack for their return values in cases where no argument was passed in. * When matching unicode strings under some conditions inappropriate backtracking would result in a Malformed UTF-8 character (fatal) error. This should no longer occur. See [perl #75680] Platform Specific Notes AIX * README.aix has been updated with information about the XL C/C++ V11 compiler suite. Windows * When building Perl with the mingw64 x64 cross-compiler incpath, libpth, ldflags, lddlflags and ldflags_nolargefiles values in Config.pm and Config_heavy.pl were not previously not being set correctly because, with that compiler, the include and lib directories are not immediately below $(CCHOME). VMS * git_version.h is now installed on VMS. This was an oversight in v5.12.0 which caused some extensions to fail to build. * Several memory leaks in stat() have been fixed. * A memory leak in Perl_rename() due to a double allocation has been fixed. * A memory leak in vms_fid_to_name() (used by realpath() and realname()) has been fixed.
adding some CONFLICTS (modules which are newer in core)
Bump package revision again after unnecessary "gawk" dependence was removed.
Updating lang/perl5 from 5.12.1 to 5.12.1nb1 pkgsrc changes: - preparing for databases/p5-gdbm (using Makefile.common) - supporting external access to perl install dirs (dirs.mk) - fixing some errors/warnings from pkglint - adding conflict to packages of CPAN modules which are in Perl5 code on the one hand and are broken with perl-5.10+ Bumping PKGREVISION (dependencies changed, rebuild highly recommended). Recursive rebuild is not required.
Improve Haiku Support * Make perl executable * Add rpath for linkage, to allow using libraries outside of default LIB_PATH. * Allow PREFIX != /boot/common (patch-cp)
Update perl from version 5.10.1nb2 to version 5.12.1. Pkgsrc changes: - Adjust some patches - Remove patches integrated upstream - Use Perl's "Policy.sh" framework (along the way remove some patches) - Link in an enterprise friendly way on HPUX - in buildlink3.mk bump minimum required pkgsrc Perl version to 5.12.0 - placate some pkglint warnings Upstream changes: - From version 5.12.1 announce This release contains minor bug fixes and updates of several core modules, as well as minor documentation updates. It should be fully backward compatible with Perl 5.12.0. - From version 5.12.0 announce: Perl 5.12.0 represents approximately two years of development since version 5.10.0 and contains over 750,000 lines of changes across over 3,000 files from over 200 authors and committers. [...] Notable changes in Perl 5.12 include: * Perl now conforms much more closely to the Unicode standard. Additionally, this release includes an upgrade to version 5.2 of the standard. * New experimental APIs allow developers to extend Perl with "pluggable" keywords and syntax. * Perl now has a better sense of time and will be able to keep accurate time well past the "Y2038" barrier. * New syntax allows developers to specify package version numbers directly in "package" statements * Perl now warns the user about the use of deprecated features by default. - For a complete list of changes see included perl5120delta(1) and perl5121delta(1) or http://perldoc.perl.org/perl5120delta.html and http://perldoc.perl.org/perl5121delta.html
Pullup previous changes on HEAD to pkgsrc-2010Q2 branch to fix branching error, and to sync with reality.
Pullup ticket #3151 - requested by spz lang/perl5: security patch Revisions pulled up: - lang/perl5/Makefile 1.159 - lang/perl5/distinfo 1.65 - lang/perl5/patches/patch-fa 1.1 --- Module Name: pkgsrc Committed By: spz Date: Sun Jun 27 13:38:39 UTC 2010 Modified Files: pkgsrc/lang/perl5: Makefile distinfo Added Files: pkgsrc/lang/perl5/patches: patch-fa Log Message: fix CVE-2010-1168 and CVE-2010-1447 by updating Safe.pm to the current, not-affected version
fix CVE-2010-1168 and CVE-2010-1447 by updating Safe.pm to the current, not-affected version
Resolve building problem on SunOS and SPARC. Fix PR 40560
Reset maintainer, developer lost his commit bit.
Fix fetch: adjust MASTER_SITES to CPAN's src/5.0/ directory.
Update perl from version 5.10.0nb6 to version 5.10.1. Pkgsrc changes: - Adjust some patches - Remove patches integrated upstream Upstream changes: "5.10.1 is a maintenance release for perl 5.10, incorporating various minor bugfixes and optimisations." Nonetheless some incompatibles changes are noteworthy and are related to: - flip-flop and defined-or operators behavior in switch statement - type-based dispatch and overloading of the smart match operator - 'use feature :5.10*' semantics - Perl development switched to git - internal structure of the ext/ perl source directory changed - removal of the modules Test::Harness::Straps, ExtUtils::MakeMaker::bytes and ExtUtils::MakeMaker::vmsish - the Module::CoreList module no longer contains the %:patchlevel hash - a bugfix related to the handling of the /m modifier and qr resulted in a change of behaviour between 5.8.x and 5.10.0 (this was missing from perl 5.10.0 perldelta). For a complete list of changes see included perl5101delta(1) or http://perldoc.perl.org/perl5101delta.html
Drop MAKE_JOBS_SAFE=no. Was updated a while back; MAKE_JOBS=16 works.
Adding patch to allow nearly all CPAN modules can use the license of installed perl
- enabling some tuning options to control 64-bit usage of built perl - add support for Module::Install Oked by joerg@
Use standard location for LICENSE line (in MAINTAINER/HOMEPAGE/COMMENT block). Uncomment some commented out LICENSE lines while here.
Adding patch from perl-5.10.1 upstream to fix "Unkown error bug" described in http://rt.perl.org/rt3/Public/Bug/Display.html?id=49472 Bumping PKGREVISION
Add missing \ in multiline variable assignments. Only affects AIX.
merge upstream commit b376053de54af4268a31e5a60d1f9e57db30af11: [perl #49003] pp_ftrread appears to use the wrong access mode for -x when using "use filetest 'access';" Bump PKGREVISION. Noted by Leo R. Lundgren.
Fix subst pattern to create parsable entry for XLC's cpp.
Further refine AIX support.
Improve AIX support to the point that dynamic modules work. Bump revision. In collaboration with Jens Rehsack.
Add fixes for CVE-2008-2827 and CVE-2008-5302 from CPAN respectively Debian. While there also fix two check interpreter warnings.
Add rpath entries for XCOFF/AIX as well. Tested by Jens Rehsack.
Fixed a memory leak in the qr operator. PKGREVISION++
Remove some extraneous quoting which makes this package not build on Linux under certain circumstances. Does not change the contents of the package for other platforms, so no revision bump.
Adjust PERL5_REQD from 5.8.7 to 5.10.0, so as to prevent attempts at using p5-* packages built with the new perl from being installed together with an older version of perl. The p5-* packages will not work because the new and old perls install modules in different directories. As a consequence, bump package revision.
WRKDIR's basename can be anything hence be a bit more generic while removing workdir reference in "lib/Config_heavy.pl"
Update perl5 from version 5.8.8nb8 to 5.10.0. A large number of packages have had their internal regression tests run successfully with this update, including mod_perl for Apache. Pkgsrc changes: a number of our local patches are no longer needed. Upstream changes from version 5.8.8: # Core Enhancements * The feature pragma * New -E command-line switch * Defined-or operator * Switch and Smart Match operator * Regular expressions * say() * Lexical $_ * The _ prototype * UNITCHECK blocks * New Pragma, mro * readdir() may return a "short filename" on Windows * readpipe() is now overridable * Default argument for readline() * state() variables * Stacked filetest operators * UNIVERSAL::DOES() * Formats * Byte-order modifiers for pack() and unpack() * no VERSION * chdir, chmod and chown on filehandles * OS groups * Recursive sort subs * Exceptions in constant folding * Source filters in @INC * New internal variables * Miscellaneous * UCD 5.0.0 * MAD * kill() on Windows # Incompatible Changes * Packing and UTF-8 strings * Byte/character count feature in unpack() * The $* and $# variables have been removed * substr() lvalues are no longer fixed-length * Parsing of -f _ * :unique * Effect of pragmas in eval * chdir FOO * Handling of .pmc files * $^V is now a version object instead of a v-string * @- and @+ in patterns * $AUTOLOAD can now be tainted * Tainting and printf * undef and signal handlers * strictures and dereferencing in defined() * (?p{}) has been removed * Pseudo-hashes have been removed * Removal of the bytecode compiler and of perlcc * Removal of the JPL * Recursive inheritance detected earlier # Modules and Pragmata * Upgrading individual core modules * Pragmata Changes * New modules * Selected Changes to Core Modules # Utility Changes # New Documentation # Performance Enhancements * In-place sorting * Lexical array access * XS-assisted SWASHGET * Constant subroutines * PERL_DONT_CREATE_GVSV * Weak references are cheaper * sort() enhancements * Memory optimisations * UTF-8 cache optimisation * Sloppy stat on Windows * Regular expressions optimisations # Installation and Configuration Improvements * Configuration improvements * Compilation improvements * Installation improvements * New Or Improved Platforms # Selected Bug Fixes # New or Changed Diagnostics # Changed Internals * Reordering of SVt_* constants * Elimination of SVt_PVBM * New type SVt_BIND * Removal of CPP symbols * Less space is used by ops * New parser * Use of const * Mathoms * AvFLAGS has been removed * av_* changes * $^H and %^H * B:: modules inheritance changed * Anonymous hash and array constructors ... See 'perldoc perldelta' or http://perldoc.perl.org/perldelta.html for explanation of each of these points.
Pullup ticket #2408 - requested by he Security patch for perl Revisions pulled up: - lang/perl5/Makefile 1.137 - lang/perl5/distinfo 1.48 - lang/perl5/patches/patch-ad 1.11 - lang/perl5/patches/patch-af 1.13 - lang/perl5/patches/patch-ag 1.11 - lang/perl5/patches/patch-ai 1.5 - lang/perl5/patches/patch-aj 1.9 - lang/perl5/patches/patch-ak 1.3 - lang/perl5/patches/patch-da 1.2 --- Module Name: pkgsrc Committed By: he Date: Sun Jun 1 22:04:07 UTC 2008 Modified Files: pkgsrc/lang/perl5: Makefile distinfo pkgsrc/lang/perl5/patches: patch-da Added Files: pkgsrc/lang/perl5/patches: patch-ad patch-af patch-ag patch-ai patch-aj patch-ak Log Message: Apply a patch from Debian to fix the security vulnerability identified by http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-1927. Patch fetched from http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=26;filename=27_fix_regcomp_utf8;att=1;bug=454792 which, according to comments, is from upstream change 27688. Revision bumped to nb8.
Apply a patch from Debian to fix the security vulnerability identified by http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-1927. Patch fetched from http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=26;filename=27_fix_regcomp_utf8;att=1;bug=454792 which, according to comments, is from upstream change 27688. Revision bumped to nb8.
Don't pass ABI flags on IRIX, compiler.mk already handles this through _WRAP_EXTRA_ARGS.
A nasty side effect of using TOOLS_SED here is that perl will try to outsmart us and call the tool by name in some parts of the build. eg just "nbsed" instead of "/usr/pkg/bin/nbsed". This can only have worked before as long as ${PREFIX}/bin was in the user's path. Fix this by TOOLS_ALIASES.sed+=${TOOLS_SED:T} so that an "nbsed" is available in the PATH.
bump PKGREVISION for previous change to patch-ah.
Set LIBSWANTED for Linux as suggested by jlam in PR 31088.
Bump PKGREVISION because of the mk/tools/perl.mk changes. There was a window during which perllink didn't work properly on Darwin.
For the moment disable the building of a shared libperl.dylib on Darwin => 9.0 as it breaks the build. This should just be considered a temporary work around until the actual problem can be fixed as this worked for Darwin < 9.0. There are no changes to perl on any other platforms. This should address PR# 37225
Added commented-out LICENSE=something.
Pullup ticket 2222 - requested by drochner security fix for perl - pkgsrc/lang/perl5/Makefile 1.129 - pkgsrc/lang/perl5/distinfo 1.43 - pkgsrc/lang/perl5/patches/patch-da 1.1 Module Name: pkgsrc Committed By: drochner Date: Tue Nov 6 19:54:53 UTC 2007 Modified Files: pkgsrc/lang/perl5: Makefile distinfo Added Files: pkgsrc/lang/perl5/patches: patch-da Log Message: add a patch from Redhat bugzilla #323571 to fix CVE-2007-5116: A flaw was found in Perl's regular expression engine. Specially crafted input to a regular expression can cause Perl to improperly allocate memory, possibly resulting in arbitrary code running with the permissions of the user running Perl.
add a patch from Redhat bugzilla #323571 to fix CVE-2007-5116: A flaw was found in Perl's regular expression engine. Specially crafted input to a regular expression can cause Perl to improperly allocate memory, possibly resulting in arbitrary code running with the permissions of the user running Perl.
Don't assume any pre-installed perl5. This is necessary for pbulk builds when Perl is installed in the "outer" pkgsrc. Otherwise, references to the pbulk directory are stored in the binary package.
Commit the patch from PR pkg/35319 which should fix perl compilation on newer versions (11) of solaris. Verified that the 'bmake test' output is unchanged on 32-bit solaris-2.9/sparc.
This package is not MAKE_JOBS_SAFE.
ABI is usually undefined, so a defined() check is needed.
Further improve packlist logic to handle DESTDIR for Perl modules as well. Perl itself is special as the DESTDIR does *not* end up in the packlist, but for normal modules it does.
DESTDIR support. Slightly refactor Perl build to avoid calling the newly build executable, either by using the same constants or by sourcing the config.sh script created by Configure. Don't create $installsitearch and don't attempt to remove $installvendorarch, the former is easy and the latter not needed.
Added a debugging option to the package (disabled by default).
Consistently use $perlprog to refer to the perl executable in the perllink script. This was causing errors when building perl from pkgsrc. The perllink script didn't create any symlinks because it tried to invoke "perl", which silently fails with revision 1.20 of mk/tools/perl.mk (after the pkgsrc-2006Q2 branch). Bump the PKGREVISION to 3.
GCC versions prior to 3.4 have a bug handling the "unused" attribute in declarations when compiling C++ code. Patch the perl.h and XSUB.h headers to avoid using this attribute if using GCC<3.4 and building C++ modules. This fixes PR pkg/33403 by OBATA Akio. Bump PKGREVISION to 2.
Put any compiled binaries into vendor- and site-specific locations to avoid conflicts with each other. We let the perllink script handle all the appropriate symlinking. Bump PKGREVISION to 1.
Ensure that perl uses /bin/sh (or the appropriate functional equivalent) for executing shell commands. Fix from PR pkg/32812 by Anne Bennett.
Update lang/perl5 to 5.8.8. Changes from version 5.8.7 include: * Updates of many standard Perl modules. * Performance enhancements for loadable modules and memory usage. * Fixed bug when running with "-w". Previously when running with warnings enabled globally via "-w", selective disabling of specific warning categories would actually turn off all warnings. This is now fixed; now "no warnings 'io';" will only turn off warnings in the "io" class. This bug fix may cause some programs to start correctly issuing warnings. * Perl 5.8.4 introduced a change so that assignments of "undef" to a scalar, or of an empty list to an array or a hash, were optimised away. As this could cause problems when "goto" jumps were involved, this change has been backed out. * Using the sprintf function with some formats could lead to a buffer overflow in some specific cases. This has been fixed, along with several other bugs, notably in bounds checking. * Fixed bug in pkgsrc-installed perl-5.8.7 and all subsequent PKGREVISIONs, where perl didn't look for site modules under /usr/pkg/lib/perl5/site_perl, but only under /usr/pkg/lib/perl5/site_perl/5.8.0, and similarly for the vendor modules. * Honor PKGMANDIR when installing man pages.
Use SUBST framework instead of FILES_SUBST_SED.
Pullup ticket 1031 - requested by Johnny C. Lam fix binary compatibility with previous versions of perl-5.8.x Revisions pulled up: - pkgsrc/lang/perl5/Makefile 1.115 Module Name: pkgsrc Committed By: jlam Date: Sun Jan 15 07:40:30 UTC 2006 Modified Files: pkgsrc/lang/perl5: Makefile Log Message: Restore binary compatibility with previous versions of perl-5.8.x that were lost in PKGREVISION nb7. We do this by avoiding inspecting the value of ${WRKSRC} within the package Makefile and instead deferring using ${WRKSRC} until we actually need the value (after extraction). This is necessary because WRKSRC is defined in bsd.pkg.mk, which is too late. Bump the PKGREVISION to 8.
Restore binary compatibility with previous versions of perl-5.8.x that were lost in PKGREVISION nb7. We do this by avoiding inspecting the value of ${WRKSRC} within the package Makefile and instead deferring using ${WRKSRC} until we actually need the value (after extraction). This is necessary because WRKSRC is defined in bsd.pkg.mk, which is too late. Bump the PKGREVISION to 8.
Pullup ticket 1026 - requested by Johnny C. Lam security fix for perl5 Revisions pulled up: - pkgsrc/lang/perl5/Makefile 1.112, 1.113, 1.114 - pkgsrc/lang/perl5/distinfo 1.32 - pkgsrc/lang/perl5/patches/patch-cm removed Module Name: pkgsrc Committed By: jlam Date: Fri Jan 13 16:48:11 UTC 2006 Modified Files: pkgsrc/lang/perl5: Makefile Log Message: Remove snapshot and release-candidate code since they're outdated and are no longer applicable to the current "stable" development branch. Also, fix the HOMEPAGE to point to perl.org instead of perl.com. --- Module Name: pkgsrc Committed By: jlam Date: Fri Jan 13 19:15:11 UTC 2006 Modified Files: pkgsrc/lang/perl5: Makefile Log Message: Finish removing extraneous code only useful for snapshots missed in the previous commit. --- Module Name: pkgsrc Committed By: jlam Date: Fri Jan 13 20:04:48 UTC 2006 Modified Files: pkgsrc/lang/perl5: Makefile distinfo Removed Files: pkgsrc/lang/perl5/patches: patch-cm Log Message: Use the vendor-supplied set of fixes for the following security advisories: CVE-2005-3916 - format string vulnerability in scripts using syslog() CVS-2005-3962 - format string vulnerability in Perl_sv_vcatpvfn() Bump the PKGREVISION to 7.
Use the vendor-supplied set of fixes for the following security advisories: CVE-2005-3916 - format string vulnerability in scripts using syslog() CVS-2005-3962 - format string vulnerability in Perl_sv_vcatpvfn() Bump the PKGREVISION to 7.
Finish removing extraneous code only useful for snapshots missed in the previous commit.
Remove snapshot and release-candidate code since they're outdated and are no longer applicable to the current "stable" development branch. Also, fix the HOMEPAGE to point to perl.org instead of perl.com.
Pullup ticket 987 - requested by Johnny C. Lam build fix for lang/perl5 Revisions pulled up: - pkgsrc/lang/perl5/Makefile 1.111 Module Name: pkgsrc Committed By: jlam Date: Fri Dec 30 23:16:33 UTC 2005 Modified Files: pkgsrc/lang/perl5: Makefile Log Message: Ensure that the hints files are always writable before modifying them. Fixes build problems on platforms without threads.
Ensure that the hints files are always writable before modifying them. Fixes build problems on platforms without threads.
Pullup ticket 981 - requested by Johnny C. Lam build fix for lang/perl5 Revisions pulled up: - pkgsrc/lang/perl5/Makefile 1.110 - pkgsrc/lang/perl5/distinfo 1.31 - pkgsrc/lang/perl5/patches/patch-ca 1.4 Module Name: pkgsrc Committed By: jlam Date: Thu Dec 29 17:54:45 UTC 2005 Modified Files: pkgsrc/lang/perl5: Makefile distinfo pkgsrc/lang/perl5/patches: patch-ca Log Message: Perl has no dependencies, so force patch the Configure script to make library searches to start in the system directories instead of in the pkgsrc-controlled directories. This change is in the same spirit as the one that caused the PKGREVISION bump to 6, but is more likely to work on IRIX where plibpth needs to be set from the Configure script. This time, we patch the Configure script instead of setting libpth in the hints file because we depend on the values of variables which are defined after the hints file is sourced by the Configure script. XXX This breaks building perl on a platform that has native pthreads XXX with PREFER_NATIVE_PTHREADS=no, but that's not really worthwhile XXX to fix.
Perl has no dependencies, so force patch the Configure script to make library searches to start in the system directories instead of in the pkgsrc-controlled directories. This change is in the same spirit as the one that caused the PKGREVISION bump to 6, but is more likely to work on IRIX where plibpth needs to be set from the Configure script. This time, we patch the Configure script instead of setting libpth in the hints file because we depend on the values of variables which are defined after the hints file is sourced by the Configure script. XXX This breaks building perl on a platform that has native pthreads XXX with PREFER_NATIVE_PTHREADS=no, but that's not really worthwhile XXX to fix.
Tell the Configure script the correct LDFLAGS needed to link threaded applications much sooner. We do this by making every hints file create a usethreads.cbu script that prepends the correct LDFLAGS to the ldflags and lddlflags Perl variables. This should fix PR pkg/31091, which detailed a problem with building threaded perl on a platform withat native pthreads that used GNU Pth as its pthread library. While we're here, also fix some minor variable quoting issues. Bump the PKGREVISION to 6.
Fix for Perl format string vulnerability noted in CVE-2005-3962: perl suffers from an integer wrap overflow inside the explicit parameter format string functionality. This has been confirmed to be a vector for remote code execution. Bump PKGREVISION to 5.
Change my MAINTAINER email address to the one I've been using for pkgsrc work.
Ran "pkglint --autofix", which corrected some of the quoting issues in CONFIGURE_ARGS.
Split out the packlist-handling code from modules.mk into a separate packlist.mk file, and replace the custom code in perl5/Makefile that duplicated the same packlist handling to just use the routines in packlist.mk.
Bump revision since the linking changed on DragonFly. Suggested by jlam@.
Remove some more *LEGACY* settings that are over a month old and thus were before 2005Q3.
Set LIBSWANTED and SYSLIBPATH for DragonFly. Tests that failed are: ../ext/POSIX/t/posix.t not ok 3 - read to array element # TODO read to array element not working # Failed at /home/reed/pkgsrc/lang/perl5/work/perl-5.8.7/ext/POSIX/t/posix.t lin e 40 # got undef # expected 'perl # ' not ok 11 - masked SIGINT received
Remove the empty $sitearch directory even if it's outside of ${PREFIX} -- the perl installation will always create it and it's surprising when it suddenly appears on your filesystem.
Restore perllocal.pod-generating behavior of ExtUtils::MakeMaker because some Perl modules make some (bad) assumptions about the structure of a MakeMaker-generated Makefile. Instead, remove the perllocal.pod file whenever a p5-* module or perl itself is removed. While here, rename some of the install/deinstall templates to more descriptive names. Bump the PKGREVISION to 3.
Alter the configuration so that: $(prefix) == $(siteprefix) == $(vendorprefix) so that if a perl module is configured with "perl Makefile.PL PREFIX=...", then that single PREFIX definition will override all three of the above, and files will be properly installed into the correct relative path. Also, patch a test so that it understands the different behavior of the pkgsrc ExtUtils::MakeMaker module. Bump the PKGREVISION to 2.
Fix an error in ExtUtils::MakeMaker that didn't output the definitions for INSTALLSITESCRIPT and INSTALLVENDORSCRIPT in MakeMaker-generated Makefiles. Bump the PKGREVISION to 1.
Update lang/perl5 to 5.8.7. Changes from version 5.8.6 include updates for many "core" modules, UTF-8 and Unicode bugfixes, and ithreads bugfixes. The major changes are in the pkgsrc infrastructure to handle Perl and Perl modules. All pkgsrc-installed Perl modules are now installed in "vendor" directories, and the perl interpreter has been modifed to search for libraries in the following order: site, vendor, perl. The Perl library is stored in a directory that is named for the Perl ABI version associated with the Perl release, so any updates of Perl to newer versions can be done "in-place" as long as Perl ABI version remains the same. All Perl scripts and man pages are stored in locations that won't conflict between site, vendor, and perl modules, and a new utility perllink(1) now manages symlinks to those scripts and man pages under the usual ${LOCALBASE}/bin and ${LOCALBASE}/man/man1. PERL5_SITEPREFIX may be set to the prefix where local, site-specific modules will be installed, e.g. PERL5_SITEPREFIX=/usr/local. Note that modules installed here are completely unmanaged by pkgsrc. Update the buildlink and tool dependencies on perl to require perl>=5.8.7 to reflect the new locations for Perl modules and the Perl shared library.
sort out 32- and 64bit flags for IRIX
Use "test -h", instead of "test", to test symlinks. This should have been committed with the previous change. Noted by jlam@. Bump PKGREVISION.
Make sure that the path to "test" in ${TOOLS_DIR} is not embedded in Config.pm. Bump PKGREVISION.
Drop the perl-5.6.x package from pkgsrc. Remove lang/perl58 and update lang/perl5 to perl-5.8.6nb4. Modify packages that referred to lang/perl58 to point to lang/perl5 instead.
Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used.
Perl's Configure needs to be restricted from finding libraries that we don't want it to find. The usual buildlink techniques don't work here since the Configure script uses a file existence test instead of a linker test to see if the library exists. For each operating system that we support in pkgsrc, there should be corresponding LIBSWANTED.${OPSYS} and SYSLIBPATH.${OPSYS} definitions in the Perl package Makefiles to ensure we only get what we ask for. In this particular case, add the appropriate definitions for OpenBSD so that we don't pick up random libraries that may also be installed on the system.
Forcibly set the locations for the version-specific directories. Before, we were possibly using the values gleaned from a pre-existing perl binary via perl5/vars.mk (pulled in by bsd.pkg.use.mk), which would lead to the new perl using the pre-existing perl's version-specific libraries. Bump the PKGREVISION of lang/perl5 to 11 and lang/perl58 to 4.
Drop maintainership of perl-5.6.x. We should move pkgsrc to using perl58 for everything, and remove this package altogether.
Remove duplicate "the" in comment.
Change ALL_TARGET to BUILD_TARGET.
Remove MIPSpro bits that added -n32 or -64 depending on the ABI; this handling has been moved into mk/compiler/mipspro.mk.
Replace RPATH_FLAG with LINKER_RPATH_FLAG and COMPILER_RPATH_FLAG, which are the full option names used to set rpath directives for the linker and the compiler, respectively. In places were we are invoking the linker, use "${LINKER_RPATH_FLAG} <path>", where the space is inserted in case the flag is a word, e.g. -rpath. The default values of *_RPATH_FLAG are set by the compiler/*.mk files, depending on the compiler that you use. They may be overridden on a ${OPSYS}-specific basis by setting _OPSYS_LINKER_RPATH_FLAG and _OPSYS_COMPILER_RPATH_FLAG, respectively. Garbage-collect _OPSYS_RPATH_NAME and _COMPILER_LD_FLAG.
Do not unset USE_GCC3, just complain if building with GCC on AIX. Okayed by grant.
Rework how proper ABI flags are set on IRIX, using patch provided by Georg Schwarz in PR pkg/25057: - check for PKGSRC_COMPILER instead of USE_MIPSPRO: USE_MIPSPRO would imply the former, but not the other way around. That is, it's conceivable to have a system that has PKGSRC_COMPILER set (to mipspro), but not USE_MIPSPRO. - Allow passing of -Duse64bitint if ABI == 64 even if the compiler is not mipspro. (Note: we could test this on a non-IRIX 64bit platform by setting ABI to '64'. I think that should work, too, but I can't test that right now.)
Add Interix to NOT_FOR_PLATFORM; porting will be done on only perl 5.8.
Address PR pkg/25147: only set mipspro specific compiler flags when using mipspro. Otherwise, defaults will do.
Test if a conditional variable is defined before expanding it. From Ralf-P. Weinmann on tech-pkg@.
Bump the PKGREVISION of lang/perl5. Changes between versions 5.6.1nb9 and 5.6.1nb10 include pulling in changes from the latest Perl sources that add a more complete set of directories on NetBSD systems to the rpath of Perl modules so that they may find libperl.so. The module build/installation is now robust against the user overriding the value of INSTALLARCHLIB.
Adding a MESSAGE file noting where these packages search for plugins or modules that may be added by other packages.
Fix PLIST issues for perl5 in the overwrite case after removing packlist -> PLIST generator from bsd.pkg.mk to perl5/module.mk.
Make sure perl5 build doesn't wait for manual input at the site-specific manual pages step in Configure. (Okay'd by jlam@.) This closes my PR #23009.
Missing space before ]
Make this look more like lang/perl58/Makefile, and bl3ify.
For BSD/OS, define LIBSWANTED.BSDOS and SYSLIBPATH.BSDOS. (I hadn't needed before, since didn't have other libraries installed that it tried to detect.)
On AIX, perl doesn't like building with gcc. Force it to use /usr/bin/cc instead.
Use LIBSWANTED.IRIX and remove inclusion of libiconv buildlink as it's no longer needed. Suggested by jlam@.
Only include libiconv/buildlink2.mk on IRIX. It's not needed on NetBSD.
Unlike perl58, this versions appears to require some libiconv functionality, so add the appropriate buildlink. Doesn't affect NetBSD, but makes this work under Irix. Apparently this is a change I forgot to commit a long time ago.
Explicitly choose the library directory structure. Also create ${PREFIX}/share/mk before installing into it.
s/netbsd.org/NetBSD.org/
Make this work on Irix with both n32 and 64 ABI.
Bump PKGREVISIONs of lang/perl5 and lang/perl58: modify the build so that libgcc.a isn't linked "whole archive" into the perl executable on newer NetBSD systems (>1.5.x). Newer NetBSD systems have libgcc_pic.a linked into shared libraries, so this hack isn't needed. This change was tested by building and testing textproc/xerces-p, a C++ perl5 module that uses functions in libgcc.a.
Modify lang/perl5 and lang/perl58 to install man3 pages again. However, we install them into a private directory under the the normal Perl installation and configure Perl so that site-specific Perl man3 pages are installed into a private directory within site_perl. This avoids manpage conflicts between 3rd-party modules, the standard Perl library, and other packages. The changes implement some unfinished work that is alluded to in the MakeMaker.pm module by allowing "installsiteman{1,3}dir" to be set during the configuration process and are used to provide default values for INSTALLSITEMAN{1,3}DIR during the Perl module build/install process. Bump PKGREVISIONs for lang/perl5 and lang/perl58.
(1) Publicly export the value of _OPSYS_RPATH_NAME as RPATH_FLAG; Makefiles simply need to use this value often, for better or for worse. (2) Create a new variable FIX_RPATH that lists variables that should be cleansed of -R or -rpath values if ${_USE_RPATH} is "no". By default, FIX_RPATH contains LIBS, X11_LDFLAGS, and LDFLAGS, and additional variables may be appended from package Makefiles.
fix some indenting and strip unneeded parens.
adopt some patches from FreeBSD ports, allowing this to build on FreeBSD 5.0 (and probably Solaris w/ gcc3). also, make really sure we don't try to use perl's malloc().
convert to use test target from bsd.pkg.mk addresses PR pkg/19416
Whitespace fix
mark this NOT_FOR_PLATFORM Darwin, since the earliest version of perl with Darwin support is perl58 and attempting to build this version fails.
correct HOMEPAGE.
Merge changes in packages from the buildlink2 branch that have buildlink2.mk files back into the main trunk. This provides sufficient buildlink2 infrastructure to start merging other packages from the buildlink2 branch that have already been converted to use the buildlink2 framework.
Rename USE_BUILDLINK2_ONLY to USE_BUILDLINK2 for less verbosity. Also convert a few more packages to use the buildlink2 framework.
First pass at conversion of various packages to use the buildlink2 framework. Add many buildlink2.mk files to add to the framework. Please see buildlink2.txt for more details.
Move post-patch target that modified files to pre-configure, so that the result of "make patch" can be used for "mkpatches".
Update lang/perl5 to 5.6.1nb7. Changes from version 5.6.1nb6 include changing the default module/library search path to have site_perl come before the standard directories. In other words, the previous search path on an i386 was: /usr/pkg/lib/perl5/5.6.1/i386-netbsd /usr/pkg/lib/perl5/5.6.1 /usr/pkg/lib/perl5/site_perl/5.6.1/i386-netbsd /usr/pkg/lib/perl5/site_perl/5.6.1 /usr/pkg/lib/perl5/site_perl but it is now: /usr/pkg/lib/perl5/site_perl/5.6.1/i386-netbsd /usr/pkg/lib/perl5/site_perl/5.6.1 /usr/pkg/lib/perl5/site_perl /usr/pkg/lib/perl5/5.6.1/i386-netbsd /usr/pkg/lib/perl5/5.6.1 The rationale for this is that when we install a module that is newer than one in the standard library, the new module goes into the site_perl directory as it's an add-on module. However, we can't use the newer module without modifying either the scripts of the perl environment to find the newer module explicitly because of the order of the library search path: the site_perl directories come after the standard directories. The normal solution is to directly replace the module in the standard library with the newer module. However, this isn't really on option when installing via pkgsrc because the older module files are owned by the perl package. By placing the the site_perl directories before the standard directories, newer modules that we install via pkgsrc are simply found before the older ones in the standard library.
Typo.
Use 'rm -f' instead of 'rm' in case the files don't already exist.
Install perl5.6.1 as statically linked if perl is statically linked. Also provide a way to avoid building a statically linked perl on platforms where it doesn't matter. Currently, by empirical evidence in pkg/14871, this includes mipsel and probably mipseb. Other platforms can add themselves if/when they discover it doesn't matter for them either. Closes pkg/14871 by John Hawkinson <jhawk@mit.edu>.
Use PKGREVISION to manage package-specific versions numbers that differ from the distfile version number. G/C the version number stuff from perl5/Makefile.common, preserving only PERL5_DIST_VERS as it's still used by libperl.
Add 'dl' to the LIBSWANTED.SunOS line. Now the perl configure script finds a dlopen on SunOS and builds a shared libperl, which makes it possible to build mod_perl.
Add a patch to the perl package that causes perl modules from CPAN to link directly against -lperl when built. Combined with the previous update of perl to add ${LOCALBASE}/lib to the rpath when creating shared libraries/modules, these two changes make using mod_perl.so (ap-perl) more painless. All perl shared modules now contain interlibrary dependencies to the shared libraries they need. Instead of needing (at least on ELF): LoadFile !/usr/lib/libm.so LoadFile lib/perl5/5.6.1/i386-netbsd/CORE/libperl.so ... # Any other libraries needed by perl shared modules need to listed # with LoadFile here. ... LoadModule perl_module lib/httpd/mod_perl.so AddModule mod_perl.c you'd need only the last two lines as the mod_perl authors intended. I've tested this patch for many weeks now, successfully loading and using the p5-Apache-ASP module as my test bed, and I haven't noticed any problems with normal perl usage. Also comment the Makefile slightly better.
The previous change (making ExtUtils recognize -Wl,-R as the prefix for a linker rpath flag) deserves a bump in the package version number. Go to perl-5.6.1nb5.
Update perl to 5.6.1nb4. Changes from version 5.6.1nb3 include: * Ensure that shared objects/libraries created by perl Makefiles include the correct run-time library search path by also including the local libraries directories. For example, shared objects are linked on ELF platforms with "cc -Wl,-R/usr/pkg/lib -L/usr/pkg/lib", and not just "cc -L/usr/pkg/lib" as before.
The perl Configure script has a check for several directories, including /usr/local/scripts and forces the scripts to be installed there if it exists. We override this by explicitly setting "scriptdir" to "${PREFIX}/bin". This should fix the problem noted in pkg/14050 by Brian Stark <bpstark@pacbell.net>.
Note that if LIBSWANTED.${OPSYS} isn't defined, then the perl defaults for that OS is used.
Solve SunOS build problem in a much cleaner way by predefining "libswanted" for Perl's configuration script as suggested by Johnny C. Lam in private e-mail.
Update perl to 5.6.1nb3. User-visible changes from the previous version include: - Re-adding ${LOCALBASE}/include and ${LOCALBASE}/lib to the local compiler search paths, Other changes include: - Migrating the setting to not install man3 pages from patch-ab into the package Makefile so that they aren't installed across all pkgsrc platforms. - Better document SYSLIBPATH.${OPSYS}.
Note conflict with perl-base-*, pointed out by David Brownlee <abs@formula1.com>.
Update perl to 5.6.1nb2. Changes from perl-5.6.1nb1 include undoing the perl mess I created a year ago and making this a vanilla perl installation again, and explicitly setting the system library path so that /usr/local/* doesn't appear anywhere. The installed perl library now also includes CGI.pm-2.752. The www/p5-CGI package installs in to ${PERL5_SITEARCH} so there is no conflict with the "standard" CGI.pm.
Perl5 needs a "nb1" version bump to make sure everything which depends on it is updated not to have the perl-mk dependency. This braindead nature of pkgsrc to register all dependencies recursively into binary pkgs *will* be fixed.
* Make perl stop installing anything in the man3 directory. It's starting to install things like "open.3" and "lib.3" which confuse users. Perl ships with a documentation tool, "perldoc", for this purpose; create a MESSAGE indicating that it should be used instead. (Perl still installs command line program manual pages in man1.) * Integrate bsd.perl.mk into the perl5-base build where it should have been from the beginning. The separate perl-mk pkg makes binary packages of perl-mk completely useless[*]. Older perl builders will not break, since <bsd.pkg.mk> contains fallback definitions that are evaluated at pkg build time. ===== [*] bsd.perl.mk is tightly bound to the version of perl that is installed. The version name "perl-mk-1.1" is completely useless as a binary pkg, since keeping multiple binary versions of perl on a FTP server means that one of the perl-mk's will get clobbered. However, putting the current pkgsrc PERL5_DIST_VERS in the perl-mk pkg is also a problem, because that doesn't necessarily reflect the installed version of perl. Snarfing the installed version at perl-mk build time would be even uglier, since you could not then walk the tree without perl being installed. The cleanest solution is to integrate bsd.perl.mk into the perl5-base pkg, and let those who have not upgraded perl yet use the runtime definitions in <bsd.pkg.mk>.
Update perl to 5.6.1. Changes from perl-5.6.0 include many bug fixes, the plugging of several memory leaks, fixes to the regular expression engine, the addition of a Unicode character classes, better support for 64-bit platorms, and updates of many modules in the base Perl Library. See perldelta.pod for more details. Also update p5-Data-Dumper, p5-Devel-DProf, and p5-Devel-Peek to the latest versions distributed with the perl-5.6.1 sources, and libperl to 5.6.1 to match the perl package.
Update perl to 5.6.0nb6 as a result of requiring the new version of perl-base (5.6.0nb2).
Update dependency on perl-mk to 1.1.
Modified the link process of the perl executable so that all libgcc.a is included in the perl executable. We need this to make the upcoming xerces-perl package working. This hack should be made obsolete by gcc-3.0, which will have a libgcc.so. See http://mail-index.netbsd.org/tech-pkg/2001/04/07/0000.html for more details
Bump to 5.6.0nb4: Depend on perl-mk.
Move the COMMENT from being in its own file to a definition in the package Makefile.
Update perl5 to 5.6.0nb3. This is now a meta-pkg which pulls in perl-base, as well as other modules from a standard installation of perl-5.6.0.
Use PERL5_PACKLIST. Goodbye unsightly PLIST-* !!
Update perl to 5.6.0nb2 from perl5-current. Changes from version 5.00404 (from commit log of perl5-current/Makefile): * Interpreter cloning, threads, and concurrency * Lexically scoped warning categories * Unicode and UTF-8 support * Support for interpolating named characters * "our" declarations * Support for strings represented as a vector of ordinals * Improved Perl version numbering system * New syntax for declaring subroutine attributes * File and directory handles can be autovivified * open() with more than two arguments * 64-bit support * Large file support * Long doubles * "more bits" * Enhanced support for sort() subroutines * C<sort $coderef @foo> allowed * File globbing implemented internally * POSIX character class syntax [: :] supported * Improved C<qw//> operator * pack() format 'Z' supported * pack() format modifier '!' supported * pack() and unpack() support counted strings * Comments in pack() templates * Weak references * Binary numbers supported * Lvalue subroutines * Some arrows may be omitted in calls through references * Boolean assignment operators are legal lvalues * exists() is supported on subroutine names * exists() and delete() are supported on array elements * Pseudo-hashes work better * Automatic flushing of output buffers * Better diagnostics on meaningless filehandle operations * Where possible, buffered data discarded from duped input filehandle * eof() has the same old magic as <> * binmode() can be used to set :crlf and :raw modes * C<-T> filetest recognizes UTF-8 encoded files as "text" * system(), backticks and pipe open now reflect exec() failure * Improved diagnostics * Diagnostics follow STDERR * syswrite() ease-of-use * Better syntax checks on parenthesized unary operators * Bit operators support full native integer width * Improved security features * C<require> and C<do> may be overridden * $^X variables may now have names longer than one character * New variable $^C reflects C<-c> switch * New variable $^V contains Perl version as a string * Optional Y2K warnings * Modules * Pragmata * dprofpp * find2perl * h2xs * perlcc * perldoc * The Perl Debugger * Simple sort() using { $a <=> $b } and the like are optimized * Optimized assignments to lexical variables * Faster subroutine calls * -Dusethreads means something different * New Configure flags * Threadedness and 64-bitness now more daring * Long Doubles ... See 'perldoc perldelta' for a full list.
Adapt to new handling of "${CONFIGURE}".
Downgrade "perl" package to working version 5.00404.
Change PLIST handling to differentiate between ELF and a.out, as well as shared and static (NOPIC). Works with ELF on -current now. NOPIC and SunOS support may be broken; someone else with the necessary resources should test and possibly fix these cases.
Upgrade perl to 5.005_03
Use the shared PLIST on Solaris and remove Socket from the egrep -v.
Modifications for better Solaris support, to search for a fuller list of libraries during configuration, and enabling dynamic support.
Fix the PLIST in the solaris case
s/netbsd/${LOWER_OPSYS}/
Pass "${CFLAGS}" to configure script as suggested by Adam Ciarcinski.
s/make/${MAKE}/g
Re-enable 5.003 bin-compat. Though it's not *supposed* to do so, compiling modules with this turned on makes the resulting modules or libperl-linking programs reference 5.003 namespace symbols.
Do not use Perl's malloc (will interfere with modules that interact with code that is outside of Perl's reach). The BSD malloc is Fine.
Do not enable binary compatibility with Perl 5.003. We have never had a Perl 5.003 pkg, so the compatibility is moot; turning it on exposes namespace polluting symbols.
Revert to building libperl statically, and clean up.
Add proper shared object support for ELF(!), and make libperl shared on non-NOPIC systems.
Use PLIST-md.shared on alpha and place an exception into perl's Makefile, not into the generic bsd.pkg.mk.
The Grand Homepagification: - New, optional Makefile variable HOMEPAGE, specifies a URL for the home page of the software if it has one. - The value of HOMEPAGE is used to add a link from the README.html files. - pkglint updated to know about it. The "correct" location for HOMEPAGE in the Makefile is after MAINTAINER, in that same section.
Configure uses ${PREFIX} so pass it in the environment. (Or was it our patch only that introduced it -- then it might need to be ${prefix} in patches/patch-aa instead). In any case, this fix works (now gdbm is found if it is already installed as a package).
Update package Makefiles for automatic manual page handling.
Substitute all obvious FreeBSD ppl as MAINTAINER with packages@netbsd.org.
Use the bsd.pkg.mk and bsd.pkg.subdir.mk files in the pkgsrc tree. Remove redundant (and sometimes erroneous) comments.
Strip a2p.
Use MACHINE_ARCH for archname; Reported by Johnny C. Lam <lamj@stat.cmu.edu> in PR 4990.
portlint: fix RCS Id+MAN3, delete empty line
Fix setting CONFIGURE_ARGS ("=" -> "+=")
Update for perl 5.004_04 and MI/MD PLIST.
Add NetBSD RCS Id. Add default directories for Perl's Configure script to search on NetBSD. Now why can't it grab these from the installer's path or other environment variables?
Initial import of FreeBSD lang ports into the NetBSD packages system.
Initial revision