environment (like da_DK.ISO_8859-15 as opposed to da_DK.ISO8859-15 on
-CURRENT), perl ports cannot be built. While this condition clearly is
an operator error, it is still no excuse for the build failure.
Fix that by cleaning locale-related variables for configure and build
steps. No plist changes, no portrevision bump.
Reported by: Flemming Jacobsen <fj quite-at batmule maybe-dot dk>
Fix buffer overflow in perl [CAN-2005-0156].
Bump PORTREVISION.
Upgrade from previous versions/revisions of lang/perl5.8 is recommended.
Submitted by: Nicholas Clark <nick $at$ ccl4 org>
Use more correct OSVERSION threshold to distinguish between
base system perl and perl from ports - the right value is 500036 [1].
Also, simplify OSVERSION-related logic in lang/perl5 and lang/perl5.8.
Now it goes as follows:
- for lang/perl5.8, if there is perl in the base system, install
use.perl script, use a helpful pkg-message, and do not automatically
update symlinks;
- for lang/perl5.8, if there is no perl in the base system, do not
install use.perl script, and update symlinks automatically;
- for lang/perl5, always install use.perl;
- for lang/perl5, never update symlinks automatically;
- for lang/perl5, vary produced pkg-message depending on the presence of
the base system perl.
Bump PORTREVISION for both lang/perl5 and lang/perl5.8.
[1] Approved by: portmgr
- redirect output from h2ph to /dev/null [1];
- fix File::Path insecure file/directory permissions [2];
this resolves CAN-2004-0452
(http://vuxml.freebsd.org/c418d472-6bd1-11d9-93ca-000a95bc6fae.html);
- for OSVERSION < 500036, create symlinks in /usr/bin not only for
perl and suidperl, but also for a2p, c2ph, find2perl, h2ph, h2xs,
perlbug, perlcc, perldoc, pl2pm, pod2html, pod2latex, pod2man,
pod2text, s2p, and splain; perl and suidperl are still enough for
more recent FreeBSD versions [3];
- clean up created symlinks upon deinstallation [4];
- try to cleanup symlinks created by older versions of lang/perl5 and
lang/perl5.8, during both installation and deinstallation [5];
- added support for DISABLE_BSDPAN environment variable [6];
- be explicit about use.perl usage after installation of 4.X systems
[7];
- respect __MAKE_CONF partially (the build-time value is used) [8];
- fix threaded build - respect PTHREAD_CFLAGS and PTHREAD_LIBS [9].
- use.perl is now the same as pkg-install is now the same as
pkg-deinstall; apart from the changes already mentioned above, this
is a shell script now;
- use.perl's logic is also simplified in several ways [10];
- fix a BSDPAN bug [11].
Outstanding issues: Module::Build support for BSDPAN, SU_CMD support (PR
70831), PR 64963 (partially), and anything else that I forgot.
[1] Nudged by: krion
[2] Reported by: nectar
Patch from: Chris Turner @ RedHat
[3] PR: 55760, 57151, 58406
[4] Requested by: kris
PR: 54262
[5] PR: 51281, 51539
[6] PR: 57134
[7] PR: 60736
[8] PR: 74431
[9] PR: 73233
[10] Perl version submitted by des, implemented in sh
[11] Reported by: Alexander Nagilum <freebsd %at% nagilum de>
who wish to keep compatibility with files generated by Storable::store
from a previous version of perl, and were unlucky enough to not use
portable Storable::nstore instead.
Submitted by: kuriyama
2. Make this port respect Makefile.local.
3. Transfer manpages to Makefile.man.
4. Move manpages for modules, included into distribution, into
lib/perl5/PERL_VER/perl/man/man3, to eliminate file conflicts
with p5 ports for modules included with perl.
5. Use PREFIX/SITE_PERL_REL instead of SITE_PERL in the Makefile.
6. Switch to bzipped sources.
7. Other small adjustments.
PR: 65925, 66096, 67205
Submitted by: foxfair (1), Charles Swiger <chuck@pkix.net> (1), krion (3)
Reported by: Roy Badami <roy@gnomon.org.uk> (2)
When installing with pkg_add(1), the ${SITE_PERL} directory was not created
causing system headers not to be perlified and installed by h2ph. This made
some things break in very mysterious ways.
The pkg-install script used by pkg_add(1) doesn't know about the many special
variables in bsd.port.mk, so it shouldn't try to rely on them.
Noticed by: bento, kris
Approved by: kris
without PERL_CONFIGURE trickery), the interaction of 5.8.1's MakeMaker
and BSDPAN can lead to parts of perl-using ports to be installed to
/lib, which is bad. Fix that.
Reported by: Mike Harding <mvh@ix.netcom.com>
Also:
Make suidperl optional (ENABLE_SUIDPERL knob). Switch to perlmalloc by
default, unless threaded perl is built, to improve performance.
Modernize pkg-plist (switch to SITE_PERL where possible). Update WWW.
Many thanks to foxfair who prepared most of this update.
coredump on FreeBSD/amd64 when one uses $^N variable and there were
no captures in the last executed regexp.
One third of this fix was applied to the perl tree in December 2002,
with the rest hopefully applied in the next couple of days.
Reported by: jwd
Add two knobs:
WITH_PERL_MALLOC - to compile with perl's own malloc, as opposed to
the freebsd system malloc. Some might find this useful, since perl's
malloc is marginally faster in typical cases, and orders of
magnitude faster in degenerate cases. Use with care.
WITH_GDBM - to compile with gdbm support.
to INSTALLMAN1DIR and INSTALLMAN3DIR, respectively, if there are no
corresponding variables in Config.pm, which is unfortunately the case
for perl 5.8.0. This fixes manpage installation path for p5 ports built
with perl5.8.0 as /usr/bin/perl.
Force installs. This is to allow (semi-)automatic garbage removal by
"find /usr/libdata -ctime -N -delete".
Well - substitute /usr/libdata with /usr/local/lib/perl5 here.
Requested by: sheldonh
2. Do not link with libbind even if Configure detects it. A particular
reason for that is that perl's getpw* stop working with NIS.
Reported by: Russell Cattelan <cattelan@thebarn.com>
from normal rmdir'ing and unexec rmdir'ing, do a find | xargs rm for
generated .ph files, since those will differ in different versions of
FreeBSD just like .h files may not be the same.
2. Install.pm is broken in 5.6.1 and leads to the wrong .packlist
generation, which, in turn, breaks BSDPAN. Fix that.
3. Extend use.perl to patch /etc/manpath.config so that manpages for
modules installed by this and other p5- ports are be available.
PR: 39108 (item 1)
Reported by: Dan Nelson <dan@dan.emsphone.com> (item 1)
@INC array. This takes care of the infamous problem of updating the
packages already in the perl distribution. With this change, no tricks
are any longer necessary for such p5 ports, except the usual tweaking of
INSTALLDIRS in Makefile.PL. This last one can also be taken care of by
an appropriate BSDPAN modifications, but until we have the `natural'
@INC order in the 4.X base system perl, it is meaningless.
Do not include iconv.h and do not link with libiconv. Iconv is not used
by perl in any way currently, but it used to link it if found.
Fix perl on freebsd/sparc64.
PR: 33212 (iconv), 37605 (iconv), 38813 (sparc64)
Reported by: Vivek Khera <khera@kciLink.com> (iconv),
Martin Nilsson <martin@gneto.com> (iconv)
Submitted by: jake (sparc64)
the problems with threaded perl build. The threaded perl is curently
unsupported by this port but seems to work fine with this fix applied.
Reported by: Jens Fallesen <jens@fallesen.dk>
more stuff than the old one, which confuses makedepend script in the
distribution).
PORTREVISION is not bumped since there was no functionality change.
Reported-by: too many to list here
2. Remove the dependency on perl (rather important for this port).
3. Make the script this port installs use the version of perl from ports.
Reported-by: (item 2) Juriy Goloveshkin <j@gu.ru>, Mark Huizer <xaa@timewasters.nl>
Compile perl with BSDPAN support, both -current and -stable. The
version of BSDPAN used here coincides accidentally with the one present
in the -current system perl, but is installed in a different place.
Provide a script, use.perl, to facilitate switching of the perl used by
default between the system perl and this port. Also print a message
describing the usage of use.perl (this works for the port and for the
package built from it). The switching to the port version is done by
removing /usr/bin/perl and /usr/bin/suidperl (they both have link count
>1, so this is reversible), and making them to be symlinks to the
corresponding binaries in $PREFIX/bin. Also, assignments of the correct
values of PERL_VER, PERL_VERSION, and PERL_ARCH are appended to
/etc/make.conf. Last, NOPERL=yes is appended to /etc/make.conf, so that
the changes made will survive system upgrades from source. The
switching to the system version is more or less a reverse of the process
described above.
Set and use PERL_ARCH which is independed from the one used by the
system perl.
Fix the port for post-malloc.h -current.
Fix a small bogon when PREFIX was used in pkg-install (PKG_PREFIX should
have been used instead).
Reviewed by: markm, joe