summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xConfigure2
-rw-r--r--hints/hpux.sh44
-rw-r--r--hints/solaris_2.sh59
-rwxr-xr-xinstallperl1
-rw-r--r--perl.h11
-rwxr-xr-x[-rw-r--r--]perlapi.c0
-rwxr-xr-x[-rw-r--r--]perlapi.h0
-rw-r--r--pod/perl.pod1
-rw-r--r--pp.c2
-rw-r--r--[-rwxr-xr-x]t/op/filetest.t0
-rw-r--r--[-rwxr-xr-x]t/op/subst_amp.t0
11 files changed, 68 insertions, 52 deletions
diff --git a/Configure b/Configure
index 053f227dfd..0b3f8a10ba 100755
--- a/Configure
+++ b/Configure
@@ -20,7 +20,7 @@
# $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
#
-# Generated on Sat Mar 11 20:26:09 EET 2000 [metaconfig 3.0 PL70]
+# Generated on Sun Mar 12 19:42:40 EET 2000 [metaconfig 3.0 PL70]
# (with additional metaconfig patches by perlbug@perl.com)
cat >/tmp/c1$$ <<EOF
diff --git a/hints/hpux.sh b/hints/hpux.sh
index 91ba86831e..e4da964725 100644
--- a/hints/hpux.sh
+++ b/hints/hpux.sh
@@ -179,32 +179,26 @@ EOM
*LP64*|*PA-RISC2.0*) ;;
*) xxx=/no/64-bit$xxx ;;
esac'
- case "$ccisgcc" in
- "$define") ld=$cc ;;
- *) ld=/usr/bin/ld ;;
- esac
+ if test -n "$ccisgcc" -o -n "$gccversion"; then
+ ld="$cc"
+ else
+ ld=/usr/bin/ld
+ fi
ar=/usr/bin/ar
full_ar=$ar
- case "$ccisgcc" in
- "$define") ;;
- *) # The strict ANSI mode (-Aa) doesn't like the LL suffixes.
+ if test -z "$ccisgcc" -a -z "$gccversion"; then
+ # The strict ANSI mode (-Aa) doesn't like the LL suffixes.
+ ccflags=`echo " $ccflags "|sed 's@ -Aa @ @g'`
case "$ccflags" in
- *-Aa*)
- echo "(Changing from strict ANSI compilation to extended because of 64-bitness)"
- ccflags=`echo $ccflags|sed 's@ -Aa @ -Ae @'`
- ;;
+ *-Ae*) ;;
*) ccflags="$ccflags -Ae" ;;
esac
- ;;
- esac
+ fi
set `echo " $libswanted " | sed -e 's@ dl @ @'`
libswanted="$*"
- case "$ccisgcc" in
- "$define") ;;
- esac
;;
esac
@@ -213,7 +207,6 @@ case "$ccisgcc" in
"$define") test -d /lib/pa1.1 && ccflags="$ccflags -L/lib/pa1.1" ;;
esac
-
case "$ccisgcc" in
"$define") ;;
*) case "`getconf KERNEL_BITS 2>/dev/null`" in
@@ -394,14 +387,15 @@ case "$uselargefiles" in
# but we cheat for now.
ccflags="$ccflags -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
- # The strict ANSI mode (-Aa) doesn't like large files.
- case "$ccflags" in
- -Aa*)
- echo "(Changing from strict ANSI compilation to extended because of large files)"
- ccflags=`echo $ccflags|sed 's@ -Aa @ -Ae @'`
- ;;
- *) ccflags="$ccflags -Ae" ;;
- esac
+ if test -z "$ccisgcc" -a -z "$gccversion"; then
+ # The strict ANSI mode (-Aa) doesn't like large files.
+ ccflags=`echo " $ccflags "|sed 's@ -Aa @ @g'`
+ case "$ccflags" in
+ *-Ae*) ;;
+ *) ccflags="$ccflags -Ae" ;;
+ esac
+ fi
+
;;
esac
EOCBU
diff --git a/hints/solaris_2.sh b/hints/solaris_2.sh
index 5a8cbfab8b..d6556d263f 100644
--- a/hints/solaris_2.sh
+++ b/hints/solaris_2.sh
@@ -45,31 +45,53 @@ case "$archname" in
;;
esac
-######################################################
-# General sanity testing. See below for excerpts from the Solaris FAQ.
-
-# From roehrich@ironwood-fddi.cray.com Wed Sep 27 12:51:46 1995
-# Date: Thu, 7 Sep 1995 16:31:40 -0500
-# From: Dean Roehrich <roehrich@ironwood-fddi.cray.com>
-# To: perl5-porters@africa.nicoh.com
-# Subject: Re: On perl5/solaris/gcc
-
-# Here's another draft of the perl5/solaris/gcc sanity-checker.
-
test -z "`${cc:-cc} -V 2>&1|grep -i workshop`" || ccisworkshop="$define"
test -z "`${cc:-cc} -v 2>&1|grep -i gcc`" || ccisgcc="$define"
+cat >UU/workshoplibpth.cbu<<'EOCBU'
+case "$workshoplibpth_done" in
+'') case "$use64bitall" in
+ "$define"|true|[yY]*)
+ loclibpth="$loclibpth /usr/lib/sparcv9"
+ if test -n "$workshoplibs"; then
+ loclibpth=`echo $loclibpth | sed -e "s% $workshoplibs%%" `
+ for lib in $workshoplibs; do
+ # Logically, it should be sparcv9.
+ # But the reality fights back, it's v9.
+ loclibpth="$loclibpth $lib/sparcv9 $lib/v9"
+ done
+ fi
+ ;;
+ *) loclibpth="$loclibpth $workshoplibs"
+ ;;
+ esac
+ workshoplibpth_done="$define"
+ ;;
+esac
+EOCBU
+
case "$ccisworkshop" in
"$define")
cat >try.c <<EOF
#include <sunmath.h>
int main() { return(0); }
EOF
- workshoplibs=`cc -### try.c -lsunmath -o try 2>&1|grep " -Y "|sed 's%.* -Y "P,\(.*\)".*%\1%'|tr ':' '\n'|grep '/SUNWspro/'|sort -u`
- loclibpth="$loclibpth $workshoplibs"
+ workshoplibs=`cc -### try.c -lsunmath -o try 2>&1|grep " -Y "|sed 's%.* -Y "P,\(.*\)".*%\1%'|tr ':' '\n'|grep '/SUNWspro/'`
+ . ./UU/workshoplibpth.cbu
;;
esac
+######################################################
+# General sanity testing. See below for excerpts from the Solaris FAQ.
+#
+# From roehrich@ironwood-fddi.cray.com Wed Sep 27 12:51:46 1995
+# Date: Thu, 7 Sep 1995 16:31:40 -0500
+# From: Dean Roehrich <roehrich@ironwood-fddi.cray.com>
+# To: perl5-porters@africa.nicoh.com
+# Subject: Re: On perl5/solaris/gcc
+#
+# Here's another draft of the perl5/solaris/gcc sanity-checker.
+
case `type ${cc:-cc}` in
*/usr/ucb/cc*) cat <<END >&4
@@ -392,16 +414,7 @@ Cannot continue, aborting.
EOM
exit 1
fi
- if test -n "$workshoplibs"; then
- loclibpth=`echo $loclibpth | sed -e "s% $workshoplibs%%" `
- for lib in $workshoplibs; do
- # Logically, it should be sparcv9.
- # But the reality fights back, it's v9.
- loclibpth="$loclibpth $lib/sparcv9 $lib/v9"
- done
- loclibpth="$loclibpth $workshoplibs"
- fi
- loclibpth="$loclibpth /usr/lib/sparcv9"
+ . ./UU/workshoplibpth.cbu
case "$cc -v 2>/dev/null" in
*gcc*)
echo 'main() { return 0; }' > try.c
diff --git a/installperl b/installperl
index b2ddc84c24..cd3e0a3743 100755
--- a/installperl
+++ b/installperl
@@ -377,6 +377,7 @@ if (! $versiononly) {
safe_unlink("$installscript/pstruct$scr_ext");
if ($^O eq 'dos' or $Is_VMS or $^O eq 'transit') {
copy("$installscript/c2ph$scr_ext", "$installscript/pstruct$scr_ext");
+ chmod(0755, "$installscript/pstruct$scr_ext");
} else {
link("$installscript/c2ph$scr_ext", "$installscript/pstruct$scr_ext");
}
diff --git a/perl.h b/perl.h
index d4d2292cca..2b4465c601 100644
--- a/perl.h
+++ b/perl.h
@@ -1145,8 +1145,15 @@ typedef NVTYPE NV;
# endif
# define NV_DIG LDBL_DIG
# ifdef HAS_SQRTL
-# define Perl_modf modfl
-# define Perl_frexp frexpl
+ /* libsunmath doesn't have modfl and frexpl as of mid-March 2000 */
+ /* XXX Configure probe for modfl and frexpl needed XXX */
+# if defined(__sun) && defined(__svr4)
+# define Perl_modf(x,y) ((long double)modf((double)(x),(double*)(y)))
+# define Perl_frexp(x) ((long double)frexp((double)(x)))
+# else
+# define Perl_modf modfl
+# define Perl_frexp frexpl
+# endif
# define Perl_cos cosl
# define Perl_sin sinl
# define Perl_sqrt sqrtl
diff --git a/perlapi.c b/perlapi.c
index 2ee7060237..2ee7060237 100644..100755
--- a/perlapi.c
+++ b/perlapi.c
diff --git a/perlapi.h b/perlapi.h
index 5e5ac2825b..5e5ac2825b 100644..100755
--- a/perlapi.h
+++ b/perlapi.h
diff --git a/pod/perl.pod b/pod/perl.pod
index 120dc44f09..f954e10e5f 100644
--- a/pod/perl.pod
+++ b/pod/perl.pod
@@ -234,6 +234,7 @@ distribution available at http://www.perl.com/CPAN/src/index.html
HP-UX
IRIX
Linux
+ LynxOS
MachTen
MPE/iX
NetBSD
diff --git a/pp.c b/pp.c
index 01a90e2855..30476bd750 100644
--- a/pp.c
+++ b/pp.c
@@ -1199,7 +1199,7 @@ PP(pp_ncmp)
{
dPOPTOPnnrl;
I32 value;
-#ifdef __osf__ /* XXX fix in 5.6.1 --jhi */
+#ifdef __osf__ /* XXX Configure probe for isnan and isnanl needed XXX */
#if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE)
#define Perl_isnan isnanl
#else
diff --git a/t/op/filetest.t b/t/op/filetest.t
index e00d5fb7b0..e00d5fb7b0 100755..100644
--- a/t/op/filetest.t
+++ b/t/op/filetest.t
diff --git a/t/op/subst_amp.t b/t/op/subst_amp.t
index e2e7c0e542..e2e7c0e542 100755..100644
--- a/t/op/subst_amp.t
+++ b/t/op/subst_amp.t