Commit graph

100 commits

Author SHA1 Message Date
jlam
45f42ddba8 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.
2005-03-24 02:33:08 +00:00
jlam
50c3906534 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.
2005-03-23 16:52:01 +00:00
kleink
7c45415089 Make this compile on NetBSD 3. 2005-03-19 11:56:39 +00:00
garbled
294e8bc714 Some patches to make perl58 build on AIX 4.3.3. Tested build only on 4.3.3. 2005-03-09 03:49:23 +00:00
agc
475ab002d7 Add RMD160 digests 2005-02-24 09:03:05 +00:00
jlam
5ef84919fe Fix a local root exploit and a buffer overflow (CAN-2005-{0155,0156}).
Patches from Nicholas Clark in private mail.  Bump the PKGREVISION to
3.
2005-02-02 19:09:52 +00:00
tv
0a56cb7e05 Add usemymalloc=false for Interix; this is now part of the hints file
officially submitted to perl.org.  (Nonfunctional change, as pkgsrc
already sets -Uusemymalloc at build time.)
2005-01-21 20:23:22 +00:00
jlam
4b1d594265 Teach perl58 about DragonFlyBSD. Patches provided by Todd Willey in
PR pkg/28963 with minor modifications by me.  Also teach all of the
BSDs (and Interix) to pass the rpath to libperl.so if a module needs
to link with libperl.so when built with MakeMaker.pm.  Bump the
PKGREVISION to 2.
2005-01-18 00:56:43 +00:00
jschauma
c6d726de74 Under IRIX64, this really needs -Dcc='${CC} -64' even if '-64' is in
CFLAGS.
2005-01-17 20:21:44 +00:00
tv
acbc46e495 Fix email address in header of hints/interix.sh. 2005-01-06 06:46:52 +00:00
tv
de6b002330 Add LIBSWANTED and SYSLIBPATH for Interix to fix configure step. 2005-01-06 06:46:26 +00:00
minskim
0a68f22994 Set LC_ALL to "C". Otherwise, the package doesn't build due to
warnings from perl.  See PR pkg/24211 for related discussion.
2005-01-04 23:38:31 +00:00
jlam
85efacebfc Fix instances of insecure use of /tmp that is subject to symlink attacks
due to race conditions [CAN-2004-0976].  Also fix builds on *BSD boxes
without a hostname set.  Bump the PKGREVISION to 1.
2005-01-04 09:50:15 +00:00
jlam
26d50782db Update lang/perl58 to perl-5.8.6. Selected hanges from version 5.8.5
include:

* By default, platforms that have native threads will build a threaded
  perl.  Note that you will likely have to rebuild your Perl modules
  after this update unless your Perl is already threaded.

* The perl interpreter is now more tolerant of UTF-16-encoded scripts.
* Several core modules were updated.
* Perl has a new -dt command-line flag, which enables threads support in
  the debugger.

* "foreach" on threads::shared array used to be able to crash Perl. This
  bug has now been fixed.
* A regexp in "STDOUT"'s destructor used to coredump, because the regexp
  pad was already freed. This has been fixed.
* Using "delete" on an array no longer leaks memory. A "pop" of an item
  from a shared array reference no longer causes a leak.
* "eval_sv()" failing a taint test could corrupt the stack - this has
  been fixed.
* On platforms with 64 bit pointers numeric comparison operators used to
  erroneously compare the addresses of references that are overloaded,
  rather than using the overloaded values. This has been fixed.
* From now on all applications embedding perl will behave as if perl were
  compiled with -DPERL_USE_SAFE_PUTENV.
2004-12-29 19:41:25 +00:00
grant
4cf31e6533 actually bump PKGREVISION of perl58 and BUILDLINK_RECOMMENDED to address
PR pkg/28619. this should have been part of the PKGREVISION bump of p5-*.
2004-12-20 13:25:09 +00:00
jlam
eb18c31212 Native threading on VAX isn't ready for primetime in NetBSD>=2.0.
Build Perl without threads-support until VAX native threads are known
to work.  The hack was added to the Makefile instead of to hacks.mk
since it sets a variable which is used within the package Makefile.
2004-12-18 22:35:05 +00:00
wiz
8f84de9622 Remove duplicate "the" in comment. 2004-12-15 14:57:58 +00:00
jlam
a7f077f4f1 The Open Group says that localtime_r() doesn't need to ensure that
the tz* related variables are initialized when it is invoked.  In
fact, Solaris does do this while NetBSD 2.0 does not.  Explicitly call
tzset() before calling localtime_r() to initialize the local timezone
data.  This fixes the output of:

	perl -e '$t = localtime($^T); print "$t\n";' ; date

to always print the time in the local timezone twice instead of the
first time in UTC and the second in the local timezone.  Bump the
PKGREVISION.
2004-12-11 16:19:29 +00:00
jlam
376c76f0de On NetBSD/alpha, building perl with -mieee causes perl to not pass
the test for integer.pm (pkg/28498).  Until this is fixed in either
NetBSD, GCC or perl, strip out -mieee from the compiler command line.
This "fixes" pkg/28498.
2004-12-10 23:48:50 +00:00
jlam
d12d4a8c7a On VAX, feeding a base "NaN" to nawk causes nawk to core dump since
it tries to interpret it as a number, which causes an FP exception.
Fix this by replacing "NaN" with "*NaN*" which hides the problem.
This makes perl Configure and build correctly on NetBSD-2.0/vax.  Fix
provided by John Klos in private email.
2004-12-10 23:12:47 +00:00
jlam
c72bae5236 Don't bother with using perl5/module.mk and PERL5_PACKLIST to generate
the PLIST and use custom post-install code instead.  This avoids
needing to guess at the correct value PERL5_ARCHLIB before perl has
been configured and built.  This should fix PR pkg/28433.
2004-12-10 06:01:08 +00:00
jlam
0970f0ef4c Nuke bsd.perl.mk... we compute these values where they're needed in
perl5/buildlink3.mk already, so no need to generate this file to be
included by bsd.pkg.mk anymore.  Bump the PKGREVISION.
2004-12-10 04:27:39 +00:00
grant
e1dfb8ff6b fix hints to not append CFLAGS to LDFLAGS on OSF1 when calling the
linker because the it does not understand all the compiler flags.

fixes build on OSF1.
2004-11-26 03:29:43 +00:00
jlam
b0427900c8 Perl is all about loadable perl modules, so include dlopen.buildlink3.mk.
If we include pthread.buildlink3.mk, then build with Perl ithreads
support.  Bump the PKGREVISION.

Nuke the perl58-thread package.  The perl package can now be forcibly
built with thread support by setting PERL5_USE_THREADS to "yes".
2004-11-25 22:02:49 +00:00
jlam
ed98fd1662 Modify the probed linker flags by using a call-back script that is
generated by the hints file and invoked from within the Configure
script.  This "pkgsrc.cbu" script is called after all other call-back
scripts are called, so it's the last to modify ldflags and lddlflags.
This should fix builds on non-NetBSD platforms.
2004-11-23 17:32:36 +00:00
jlam
55ba984801 Move selection of the default perl58 (whether it is threaded or not) into
bsd.pkg.mk.  lang/perl58 now always builds perl58, while lang/perl58-thread
builds perl58-thread (POLS).  Fixes PR pkg/28343.
2004-11-17 22:55:14 +00:00
jlam
4bed44310d Narrow down the scope of the powerpc-codegen hack to only NetBSD/powerpc
as there aren't reports from other OSes yet (it's likely okay using
Darwin).
2004-11-14 08:00:14 +00:00
jlam
201a688e30 Remove optimisation flags from GCC command line when building on powerpc
to avoid a codegen bug:

	http://mail-index.netbsd.org/port-macppc/2004/10/18/0001.html
2004-11-14 07:50:58 +00:00
jlam
2ab1ac2122 Separate out hacks from package Makefile into hacks.mk. 2004-11-14 07:48:30 +00:00
jlam
25692439cd Whitespace nit. 2004-11-12 23:30:07 +00:00
jlam
0786cc66d4 Default to building perl-thread on platforms with native pthreads.
Perl-5.8.x and up are supposed to properly support pthreads if they're
available.  The GNU pth support isn't quite there yet, so we can't build
with thread support on all platforms.
2004-11-12 23:29:34 +00:00
jlam
1f0bab159b When building perl-thread, ensure that PTHREAD_{CFLAGS,LDFLAGS,LIBS}
are properly recorded in Config.pm.  These values will then be used
when building perl modules using ExtUtils::MakeMaker.  Bump the
PKGREVISION.
2004-11-12 23:27:46 +00:00
jlam
7c16e9acf0 Nuke the code that rebuilt the perl binary as a statically-linked
executable.  Until someone produces benchmarks that show that this
actually makes a difference, this is just added complexity with no
measurable benefit.  Bump the PKGREVISION.
2004-11-10 20:16:57 +00:00
wiz
6565c87ba9 Update to 5.8.5:
Incompatible Changes

There are no changes incompatible with 5.8.4.

Core Enhancements

Perl's regular expression engine now contains support for matching on the intersection of two Unicode character classes. You can also now refer to user-defined character classes from within other user defined character classes.
Modules and Pragmata

    * Carp improved to work nicely with Safe. Carp's message reporting should now be anomaly free - it will always print out line number information.
    * CGI upgraded to version 3.05
    * charnames now avoids clobbering $_
    * Digest upgraded to version 1.08
    * Encode upgraded to version 2.01
    * FileCache upgraded to version 1.04
    * libnet upgraded to version 1.19
    * Pod::Parser upgraded to version 1.28
    * Pod::Perldoc upgraded to version 3.13
    * Pod::LaTeX upgraded to version 0.57
    * Safe now works properly with Carp
    * Scalar-List-Utils upgraded to version 1.14
    * Shell's documentation has been re-written, and its historical partial auto-quoting of command arguments can now be disabled.
    * Test upgraded to version 1.25
    * Test::Harness upgraded to version 2.42
    * Time::Local upgraded to version 1.10
    * Unicode::Collate upgraded to version 0.40
    * Unicode::Normalize upgraded to version 0.30

Utility Changes

Perl's debugger

The debugger can now emulate stepping backwards, by restarting and rerunning all bar the last command from a saved command history.

h2ph

h2ph is now able to understand a very limited set of C inline functions -- basically, the inline functions that look like CPP macros. This has been introduced to deal with some of the headers of the newest versions of the glibc. The standard warning still applies; to quote h2ph's documentation, you may need to dicker with the files produced.
Installation and Configuration Improvements

Perl 5.8.5 should build cleanly from source on LynxOS.

Selected Bug Fixes

    * The in-place sort optimisation introduced in 5.8.4 had a bug. For example, in code such as

    @a = sort ($b, @a)

      the result would omit the value $b. This is now fixed.
    * The optimisation for unnecessary assignments introduced in 5.8.4 could give spurious warnings. This has been fixed.
    * Perl should now correctly detect and read BOM-marked and (BOMless) UTF-16 scripts of either endianness.
    * Creating a new thread when weak references exist was buggy, and would often cause warnings at interpreter destruction time. The known bug is now fixed.
    * Several obscure bugs involving manipulating Unicode strings with substr have been fixed.
    * Previously if Perl's file globbing function encountered a directory that it did not have permission to open it would return immediately, leading to unexpected truncation of the list of results. This has been fixed, to be consistent with Unix shells' globbing behaviour.
    * Thread creation time could vary wildly between identical runs. This was caused by a poor hashing algorithm in the thread cloning routines, which has now been fixed.
    * The internals of the ithreads implementation were not checking if OS-level thread creation had failed. threads->create() now returns undef in if thead creation fails instead of crashing perl.

New or Changed Diagnostics

    * Perl -V has several improvements
          o correctly outputs local patch names that contain embedded code snippets or other characters that used to confuse it.
          o arguments to -V that look like regexps will give multiple lines of output.
          o a trailing colon suppresses the linefeed and ';' terminator, allowing embedding of queries into shell commands.
          o a leading colon removes the 'name=' part of the response, allowing mapping to any name.
    * When perl fails to find the specified script, it now outputs a second line suggesting that the user use the -S flag:

    $ perl5.8.5 missing.pl
    Can't open perl script "missing.pl": No such file or directory.
    Use -S to search $PATH for it.

Changed Internals

The Unicode character class files used by the regular expression engine are now built at build time from the supplied Unicode consortium data files, instead of being shipped prebuilt. This makes the compressed Perl source tarball about 200K smaller. A side effect is that the layout of files inside lib/unicore has changed.

pkgsrc: fails the same test that 5.8.4 fails (sigaction).
2004-11-07 16:20:11 +00:00
jklos
853271db7d Removed an extra line accidentally left while debugging (oops). 2004-11-04 22:51:58 +00:00
wiz
c588a4e332 Remove double empty line. 2004-10-28 08:59:45 +00:00
jklos
ac07533a57 Make sure that STATIC_PERL is set to no on PowerPC platforms so that
it compiles properly on 2.0 and current systems. PowerPC processors
have lots of registers, so this isn't even a loss at all.
2004-10-28 08:22:48 +00:00
jlam
9518343102 Remove MIPSpro bits that added -n32 or -64 depending on the ABI; this
handling has been moved into mk/compiler/mipspro.mk.
2004-10-01 20:52:25 +00:00
jlam
464ba60c6d Don't check in /usr/local/lib on FreeBSD for system libraries. 2004-09-08 11:59:09 +00:00
jlam
ca70938428 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.
2004-08-27 06:29:06 +00:00
abs
7cd5375a52 Update perl to 5.8.4nb1
On >= NetBSD 2.0, if PERL5_USE_THREADS is _not_ defined, add pthread to libs.
This does not make perl threaded, but permits it to link against libraries
which are. This makes p5-GD (which pulls in threaded freetype) work again.
2004-06-25 17:41:47 +00:00
xtraeme
1656569aca Fix PERL5_ARCHLIB in lang/perl58-thread, which contains the suffix
"-thread-multi", with this change games/frozen-bubble finally works, yay!.

Bump PKGREVISION.
2004-06-17 16:07:24 +00:00
christos
3d1c2dfa16 make this compile with perl58-thread by excluding the _r functions for
protoent and servent. Also there is a stray setrgid there which looks
correct to me.
2004-06-09 20:47:20 +00:00
jschauma
77c09ecc76 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.)
2004-05-05 03:14:33 +00:00
tv
00b32b74a8 Don't use poll() on Interix. 2004-04-28 15:55:25 +00:00
jlam
69507ec564 Fix conflicts. 2004-04-26 04:42:40 +00:00
jlam
f2a57bef15 Update lang/perl58 to 5.8.4. Changes from version 5.8.3 include Unicode
enhancements and optimizations and bug fixes in handling UTF8 strings.
2004-04-26 04:42:12 +00:00
tv
88a6915436 Make sure PKGDIRMODE is always set in bsd.prefs.mk so it can be checked
in lang/perl58/Makefile.  (It had been set previously only in bsd.pkg.mk.)
2004-04-25 22:42:51 +00:00
tv
368b0246a5 Use 0x57000000, not 0x97000000 for NT linker on Interix. 2004-04-25 20:41:27 +00:00
xtraeme
f401030d89 Make sure PKGDIRMODE is defined before checking its value. 2004-04-24 22:54:45 +00:00