Commit graph

55 commits

Author SHA1 Message Date
jlam
272ec6a7a1 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.
2006-01-13 20:04:48 +00:00
jlam
2927908735 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.
2005-12-29 17:54:45 +00:00
jlam
f4cc8975af 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.
2005-12-18 15:25:29 +00:00
joerg
2e1ac9954c Nuke last chunk of patch, it got appended by configure. 2005-10-10 17:11:32 +00:00
joerg
3fa24ec5b9 Just use -pthread on DragonFly for thread linkage. 2005-10-10 17:07:36 +00:00
jlam
ced1a72013 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.
2005-08-12 19:59:03 +00:00
jlam
d2d692d4e6 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.
2005-08-08 16:39:58 +00:00
jlam
0680c23678 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.
2005-08-07 21:47:24 +00:00
jlam
c3f904e0b4 Remove redundant patch. 2005-08-07 00:29:47 +00:00
jlam
86f9268481 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.
2005-08-06 06:18:44 +00:00
jlam
c2fb31ba79 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.
2005-06-24 06:43:43 +00:00
jschauma
2e469426f7 Make this build under Irix with mipspro compilers:
MIPSPro compiler/preprocessor behaves differently if invoked on
stdin vs file.  In configure, we test for stdin, but lateron we use files.
So force it to work the way we know it does.
2004-04-12 02:51:22 +00:00
jlam
baf90848b6 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.
2004-01-13 01:08:57 +00:00
grant
c1fa93bd0a fix test for Solaris linker by also grepping for "ld: Solaris Link
Editors", reported by Dima Veselov <kab00m@lich.phys.spbu.ru> in
private mail.

also move hints/ patches to patch-b* to keep track of them more
easily.
2003-10-05 14:19:09 +00:00
grant
53e4b5d862 add rcs id 2003-10-05 14:16:41 +00:00
reed
393264ebf5 Link under BSD/OS too. (Okay'd by jlam.) 2003-10-04 07:38:45 +00:00
jlam
1c480293dd 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.
2003-06-23 07:45:01 +00:00
jlam
d200bfb2de 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.
2003-05-27 21:57:25 +00:00
grant
c2ec4cb5eb fix previous change for FreeBSD/gcc3. 2003-02-27 14:05:01 +00:00
grant
ed30d30f4b 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().
2003-02-21 14:42:14 +00:00
jschauma
3085a1c183 Make this compile and install cleanly on IRIX. 2002-12-24 00:56:53 +00:00
jlam
acef69cb6b Fix long-standing bug where -R${PREFIX}/lib wasn't being recorded in the
LDDLFLAGS because ${PREFIX} is not defined for the sub-scripts that are
executed by the Configure script.  This resulted in -R/lib.
2002-01-30 22:35:57 +00:00
jlam
44ec524e48 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.
2002-01-28 00:25:27 +00:00
jlam
15c0280d2d 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.
2001-10-14 19:55:47 +00:00
jlam
f49b05e650 Teach the ExtUtils modules (the ones that create Makefiles for perl
modules) about -Wl,-R.  We cause -Wl,-R/path/to/libdir in LIBS settings
to now get propagated correctly to the link command for shared modules.
The rpath flag is also silently coerced to start with -Wl,-R or -R
depending on the contents of ${LDDLFLAGS} to deal with either cc or ld
being invoked.
2001-10-02 06:37:55 +00:00
jlam
2eea86c397 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.
2001-10-01 07:05:10 +00:00
tron
95a495ffdf 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.
2001-09-17 18:04:42 +00:00
tron
f2f891d4fb Stop configure from trying to use "libiconv" because "/usr/include/iconv.h"
exists under SunOS.
2001-09-17 11:14:51 +00:00
jlam
71f03aac07 Search for <machine/ieeefp.h> instead of <ieeefp.h>. This fixes the
problem reported in pkg/13663 by John Klos <john@sixgirls.org> where on
older (pre-current) NetBSD/vax, <ieeefp.h> exists but <machine/ieeefp.h>
doesn't, which was broken since <ieeefp.h> included <machine/ieeefp.h>.
2001-09-14 05:00:35 +00:00
jlam
dfe309aab4 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}.
2001-09-12 18:58:57 +00:00
jlam
b56ee42f19 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.
2001-09-05 17:13:40 +00:00
jlam
755b6bf050 Remove unneeded patches (moved to lang/perl5-base/patches). 2000-09-05 09:22:00 +00:00
jlam
7ad6d1a295 Use PERL5_PACKLIST. Goodbye unsightly PLIST-* !! 2000-08-30 19:46:47 +00:00
jlam
27aa37dd3c 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.
2000-08-30 18:42:23 +00:00
tron
10f7165000 Downgrade "perl" package to working version 5.00404. 2000-01-18 22:31:46 +00:00
christos
2869c7e366 Upgrade perl to 5.005_03 2000-01-17 03:07:09 +00:00
kim
15899616b3 Make this compile on my current(ish) sparc... 1999-09-06 03:54:34 +00:00
agc
8136917532 Modifications for better Solaris support, to search for a fuller list of
libraries during configuration, and enabling dynamic support.
1999-08-31 18:51:35 +00:00
bad
2c406f32e6 Don't bother to pull in -lposix for the POSIX module. It contains nothing
of interest to this module.
1999-07-02 15:35:14 +00:00
bad
eaa90c0b8f Get rid of -lposix. It makes perl behave slightly different then the
rest of the system.
1999-06-15 12:27:23 +00:00
tv
28e918eeb1 Move the rpath setting from hints/netbsd.sh to Configure. In hints, it
adds an extra rpath of -Wl-R/CORE.
1998-12-02 21:14:41 +00:00
tv
6b2c748df4 d_vfork should be "$define", even if it produces a bogus "WHOA THERE"
warning; setting it to "true" doesn't work.
1998-12-02 15:41:02 +00:00
tv
6323f0b6b7 Revert to building libperl statically, and clean up. 1998-12-02 02:28:30 +00:00
tv
159844d752 Add proper shared object support for ELF(!), and make libperl shared on
non-NOPIC systems.
1998-12-01 02:47:18 +00:00
bad
d8afd682fc Can't rely on NSIG indicating that signal.h has been included.
(Random crap includes sys/signal.h which defines NSIG.)
Fixes various signal related problems after 1.3H.
1998-11-26 17:43:47 +00:00
agc
3c3438c738 Allow perl to configure itself properly, even if Kaffe 1.0's
libnet.so.1.0 is installed in ${PREFIX}/lib.
1998-09-07 22:40:28 +00:00
hubertf
995b53b0b7 Comment things out with "#", not ":".
(fixes PR 5953 by jbernard@ox.mines.edu)
1998-08-12 02:36:47 +00:00
agc
08c812cd79 Don't check for Configure input coming from a tty. 1998-08-07 11:39:04 +00:00
agc
41bfb30737 Add NetBSD RCS Ids. 1998-08-07 11:08:53 +00:00
mycroft
7fc121d366 Pass the right argument type to semctl(). 1998-04-23 12:14:25 +00:00