Package: perl
Version: 5.10.0-23
Severity: important
Tags: patch

The h2ph checks failed on the kfreebsd-* builds:

Undefined subroutine &main::__LONG_MAX__ called at (eval 390) line 1.
Compilation failed in require at 
/build/buildd-perl_5.10.0-23-kfreebsd-i386-i5BPPs/perl-5.10.0/debian/tmp/usr/lib/perl/5.10/sys/socket.ph
 line 14.

This is #212708 / #480428 revisited, and it happens because
$Config{cppsymbols} doesn't contain __LONG__MAX__, which is defined
internally by gcc. The Configure script currently examines these internal
symbols (seen with 'cpp -dM /dev/null') only on linux for some reason,

Patch attached, I'll send it upstream next.
-- 
Niko Tyni   nt...@debian.org
>From 44762fdfd591236f3e60601cbc6e8640d3a498d9 Mon Sep 17 00:00:00 2001
From: Niko Tyni <nt...@debian.org>
Date: Sun, 14 Jun 2009 23:29:54 +0300
Subject: [PATCH] Add gcc predefined macros to $Config{cppsymbols} on kFreeBSD.

This is needed at least by h2ph, otherwise the generated .ph files
choke on missing __LONG_MAX__ and similar definitions.
---
 Configure |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/Configure b/Configure
index 42d9797..9a88278 100755
--- a/Configure
+++ b/Configure
@@ -20767,7 +20767,7 @@ $eunicefix Cppsym.try
 ./Cppsym < Cppsym.know > Cppsym.true
 : Add in any linux cpp "predefined macros":
 case "$osname::$gccversion" in
-  *linux*::*.*)
+  *linux*::*.*|*gnukfreebsd*::*.*)
     tHdrH=_tmpHdr
     rm -f $tHdrH'.h' $tHdrH
     touch $tHdrH'.h'
-- 
1.5.6.5

Reply via email to