From: Jarkko Hietaniemi Date: Tue, 29 Feb 2000 23:01:35 +0000 (+0000) Subject: Add libsunmath (long double math library for Solaris, X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=923fc586b1fab31a3ea5c3c618e37488eaa31d07;p=p5sagit%2Fp5-mst-13.2.git Add libsunmath (long double math library for Solaris, SUNWspro cc only) awareness; fix various Solaris nits. p4raw-id: //depot/cfgperl@5374 --- diff --git a/Configure b/Configure index f8bdce8..229c6e4 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 Tue Feb 29 19:47:23 EET 2000 [metaconfig 3.0 PL70] +# Generated on Wed Mar 1 00:58:04 EET 2000 [metaconfig 3.0 PL70] # (with additional metaconfig patches by perlbug@perl.com) cat >/tmp/c1$$ <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$i_socks I_SOCKS /**/ +/* I_SUNMATH: + * This symbol, if defined, indicates that exists and + * should be included. + */ +#$i_sunmath I_SUNMATH /**/ + /* I_SYSLOG: * This symbol, if defined, indicates that exists and * should be included. diff --git a/epoc/config.sh b/epoc/config.sh index e0d7166..7e913d6 100644 --- a/epoc/config.sh +++ b/epoc/config.sh @@ -440,6 +440,7 @@ i_stdarg='define' i_stddef='define' i_stdlib='define' i_string='define' +i_sunmath='undef' i_sysaccess='undef' i_sysdir='undef' i_sysfile='undef' diff --git a/hints/solaris_2.sh b/hints/solaris_2.sh index c1f2074..a52c88f 100644 --- a/hints/solaris_2.sh +++ b/hints/solaris_2.sh @@ -333,8 +333,8 @@ EOM esac EOCBU -cat > UU/useuselargefiles.cbu <<'EOCBU' -# This script UU/useuselargefiles.cbu will get 'called-back' by Configure +cat > UU/uselargefiles.cbu <<'EOCBU' +# This script UU/uselargefiles.cbu will get 'called-back' by Configure # after it has prompted the user for whether to use large files. case "$uselargefiles" in ''|$define|true|[yY]*) @@ -373,12 +373,12 @@ case "$use64bitall" in # I don't know what are the flags to make gcc sparcv9-aware, # I'm just guessing. --jhi ccflags="$ccflags -mv9" - ldflags="$ccflags -mv9" + ldflags="$ldflags -mv9" lddlflags="$lddlflags -G -mv9" ;; *) ccflags="$ccflags `getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`" - ldflags="$ccflags `getconf XBS5_LP64_OFF64_LDFLAGS 2>/dev/null`" + ldflags="$ldflags `getconf XBS5_LP64_OFF64_LDFLAGS 2>/dev/null`" lddlflags="$lddlflags -G `getconf XBS5_LP64_OFF64_LDFLAGS 2>/dev/null`" ;; esac @@ -392,7 +392,6 @@ Cannot continue, aborting. EOM exit 1 fi - loclibpth="$loclibpth /usr/lib/sparcv9" libscheck='case "`/usr/bin/file $xxx`" in *64-bit*|*SPARCV9*) ;; *) xxx=/no/64-bit$xxx ;; @@ -402,13 +401,33 @@ esac EOCBU # Actually, we want to run this already now, if so requested, -# because we need to fix up the library paths right now. +# because we need to fix up the flags right now. case "$use64bitall" in "$define"|true|[yY]*) . ./UU/use64bitall.cbu ;; esac +cat > UU/uselongdouble.cbu <<'EOCBU' +# This script UU/uselongdouble.cbu will get 'called-back' by Configure +# after it has prompted the user for whether to use long doubles. +case "$uselongdouble" in +"$define"|true|[yY]*) + if test ! -f /opt/SUNWspro/lib/libsunmath.so; then + cat < /dev/null <<'End_of_Solaris_Notes' diff --git a/perl.h b/perl.h index 6bf8809..fb48cdb 100644 --- a/perl.h +++ b/perl.h @@ -1135,7 +1135,11 @@ typedef UVTYPE UV; typedef NVTYPE NV; + #ifdef USE_LONG_DOUBLE +# ifdef I_SUNMATH +# include +# endif # define NV_DIG LDBL_DIG # ifdef HAS_SQRTL # define Perl_modf modfl diff --git a/vms/subconfigure.com b/vms/subconfigure.com index 6f7c4a0..585ab64 100644 --- a/vms/subconfigure.com +++ b/vms/subconfigure.com @@ -72,6 +72,7 @@ $ perl_d_sqrtl = "define" $ perl_d_statfs_f_flags = "undef" $ perl_d_statfs_s = "undef" $ perl_d_ustat = "undef" +$ perl_i_sunmath = "undef" $ perl_i_sysstatfs = "undef" $ perl_i_sysvfs = "undef" $ perl_i_ustat = "undef" @@ -4008,6 +4009,7 @@ $ WC "d_gethname='" + perl_d_gethname + "'" $ WC "d_phostname='" + perl_d_phostname + "'" $ WC "d_accessx='" + perl_d_accessx + "'" $ WC "d_eaccess='" + perl_d_eaccess + "'" +$ WC "i_sunmath='" + perl_i_sunmath + "'" $ WC "i_sysaccess='" + perl_i_sysaccess + "'" $ WC "i_syssecrt='" + perl_i_syssecrt + "'" $ WC "d_fd_set='" + perl_d_fd_set + "'" diff --git a/vos/config.def b/vos/config.def index bc294dc..c943b73 100644 --- a/vos/config.def +++ b/vos/config.def @@ -324,6 +324,7 @@ $i_stdarg='define' $i_stddef='define' $i_stdlib='define' $i_string='define' +$i_sunmath='undef' $i_sysaccess='undef' $i_sysdir='undef' $i_sysfile='undef' diff --git a/win32/config.bc b/win32/config.bc index 19ce10d..737e0e2 100644 --- a/win32/config.bc +++ b/win32/config.bc @@ -452,6 +452,7 @@ i_stdarg='define' i_stddef='define' i_stdlib='define' i_string='define' +i_sunmath='undef' i_sysaccess='undef' i_sysdir='undef' i_sysfile='undef' diff --git a/win32/config.gc b/win32/config.gc index b6a4175..9aab8e0 100644 --- a/win32/config.gc +++ b/win32/config.gc @@ -452,6 +452,7 @@ i_stdarg='define' i_stddef='define' i_stdlib='define' i_string='define' +i_sunmath='undef' i_sysaccess='undef' i_sysdir='undef' i_sysfile='undef' diff --git a/win32/config.vc b/win32/config.vc index 354f9be..5203ed3 100644 --- a/win32/config.vc +++ b/win32/config.vc @@ -452,6 +452,7 @@ i_stdarg='define' i_stddef='define' i_stdlib='define' i_string='define' +i_sunmath='undef' i_sysaccess='undef' i_sysdir='undef' i_sysfile='undef'