X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=hints%2Fhpux.sh;h=1eaf249f7e945b9d966642760e6af5871cb8f77d;hb=588cafc81b146d309df37bae231b533d51bccb74;hp=f354c0ffde268d1d84d1c4a923387fbaacf4b921;hpb=90e831dcaea7bb76a1f6fd13b3d99e8db4a40ec1;p=p5sagit%2Fp5-mst-13.2.git diff --git a/hints/hpux.sh b/hints/hpux.sh index f354c0f..1eaf249 100644 --- a/hints/hpux.sh +++ b/hints/hpux.sh @@ -76,12 +76,17 @@ case `$cc -v 2>&1`"" in ccflags="$cc_cppflags" if [ "X$gccversion" = "X" ]; then # Done too late in Configure if hinted - gccversion=`$cc --version` + gccversion=`$cc --version | sed 's/.*(GCC) *//'` fi case "$gccversion" in [012]*) # HP-UX and gcc-2.* break UINT32_MAX :-( ccflags="$ccflags -DUINT32_MAX_BROKEN" ;; + 3*) # GCC (both 32bit and 64bit) will define __STDC_EXT__ + # by default when using GCC 3.0 and newer versions of + # the compiler. + cppflags="$cc_cppflags" + ;; esac case "`getconf KERNEL_BITS 2>/dev/null`" in *64*) @@ -89,7 +94,12 @@ case `$cc -v 2>&1`"" in case "$gccversion" in 3*) case "$archname" in - PA-RISC*) ccflags="$ccflags -mpa-risc-2-0" ;; + PA-RISC*) + case "$ccflags" in + *-mpa-risc*) ;; + *) ccflags="$ccflags -mpa-risc-2-0" ;; + esac + ;; esac ;; *) # gcc with gas will not accept +DA2.0 @@ -126,9 +136,9 @@ case `$cc -v 2>&1`"" in *) ccisgcc='' ccversion=`which cc | xargs what | awk '/Compiler/{print $2}'` case "$ccflags" in - "-Ae "*) ;; - *) ccflags="-Ae $cc_cppflags -Wl,+vnocompatwarnings" ;; - esac + "-Ae "*) ;; + *) ccflags="-Ae $cc_cppflags -Wl,+vnocompatwarnings" ;; + esac # Needed because cpp does only support -Aa (not -Ae) cpplast='-' cppminus='-' @@ -483,6 +493,21 @@ EOM # tell perl.h to include before other # include files ccflags="$ccflags -DPTHREAD_H_FIRST" +# First column on purpose: +# this is not a standard Configure variable +# but we need to get this noticed. +pthread_h_first="$define" + + # HP-UX 10.X seems to have no easy + # way of detecting these *time_r protos. + d_gmtime_r_proto='define' + gmtime_r_proto='REENTRANT_PROTO_I_TS' + d_localtime_r_proto='define' + localtime_r_proto='REENTRANT_PROTO_I_TS' + + # Avoid the poisonous conflicting (and irrelevant) + # prototypes of setkey(). + i_crypt="$undef" # CMA redefines select to cma_select, and cma_select # expects int * instead of fd_set * (just like 9.X) @@ -523,11 +548,17 @@ EOM libswanted="$*" fi - usemymalloc='n' ;; esac EOCBU +# The mysterious io_xs memory corruption in 11.00 32bit seems to get +# fixed by not using Perl's malloc. +usemymalloc='n' +case "$useperlio" in + $undef|false|[nN]*) usemymalloc='y' ;; + esac + # fpclassify() is a macro, the library call is Fpclassify # Similarly with the others below. d_fpclassify='define'