X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=hints%2Fhpux.sh;h=b215335c72298e06a056015bfcf53f022566f8de;hb=9cc6feabb930fb7cac992ab0a2febf2fb1986667;hp=912ec12ecd0383798b2bf6e0442763c9b72e110d;hpb=5ff3f7a4e03a6b103d9e628865398e498e9a7968;p=p5sagit%2Fp5-mst-13.2.git diff --git a/hints/hpux.sh b/hints/hpux.sh index 912ec12..b215335 100644 --- a/hints/hpux.sh +++ b/hints/hpux.sh @@ -139,44 +139,6 @@ else selecttype='int *' fi -# Under 10.X, a threaded perl can be built, but it needs -# libcma and OLD_PTHREADS_API. Also needs to -# be #included before any other includes (in perl.h) -if [ "$xxOsRevMajor" -eq 10 -a "X$usethreads" = "X$define" ]; then - - # HP-UX 10.X uses the old pthreads API - case "$d_oldpthreads" in - '') d_oldpthreads="$define" ;; - esac - - # include libcma before all the others - libswanted="cma $libswanted" - - # tell perl.h to include before other include files - ccflags="$ccflags -DPTHREAD_H_FIRST" - - # CMA redefines select to cma_select, and cma_select expects int * - # instead of fd_set * (just like 9.X) - selecttype='int *' -fi - -# Under 10.X, a threaded perl can be built, but it needs -# libcma and OLD_PTHREADS_API. Also needs to -# be #included before any other includes (in perl.h) -if [ "$xxOsRevMajor" -eq 10 -a "X$usethreads" = "X$define" ]; then - # HP-UX 10.X uses the old pthreads API - case "$d_oldpthreads" in - '') d_oldpthreads="$define" ;; - esac - # include libcma before all the others - libswanted="cma $libswanted" - # tell perl.h to include before other include files - ccflags="$ccflags -DPTHREAD_H_FIRST" - # CMA redefines select to cma_select, and cma_select expects int * - # instead of fd_set * (just like 9.X) - selecttype='int *' -fi - # Remove bad libraries that will cause problems # (This doesn't remove libraries that don't actually exist) # -lld is unneeded (and I can't figure out what it's used for anyway) @@ -232,22 +194,86 @@ esac # (warning) Use of GR3 when frame >= 8192 may cause conflict. # These warnings are harmless and can be safely ignored. -# 64-bitness. -# jhi@iki.fi, inspired by Jeff Okamoto. +# This script UU/usethreads.cbu will get 'called-back' by Configure +# after it has prompted the user for whether to use threads. +cat > UU/usethreads.cbu <<'EOCBU' +case "$usethreads" in +$define|true|[yY]*) + if [ "$xxOsRevMajor" -lt 10 ]; then + cat <&4 +HP-UX $xxOsRevMajor cannot support POSIX threads. +Consider upgrading to at least HP-UX 11. +Cannot continue, aborting. +EOM + exit 1 + fi + case "$xxOsRevMajor" in + 10) + # Under 10.X, a threaded perl can be built, but it needs + # libcma and OLD_PTHREADS_API. Also needs to + # be #included before any other includes (in perl.h) + if [ ! -f /usr/include/pthread.h -o ! -f /usr/lib/libcma.sl ]; then + cat <&4 +In HP-UX 10.X for POSIX threads you need both of the files +/usr/include/pthread.h and /usr/lib/libcma.sl. +Either you must install the CMA package or you must upgrade to HP-UX 11. +Cannot continue, aborting. +EOM + exit 1 + fi + + # HP-UX 10.X uses the old pthreads API + case "$d_oldpthreads" in + '') d_oldpthreads="$define" ;; + esac + + # include libcma before all the others + libswanted="cma $libswanted" + + # tell perl.h to include before other include files + ccflags="$ccflags -DPTHREAD_H_FIRST" -if [ X"$use64bits" = X"$define" ]; then - if [ "$xxOsRevMajor" -lt 11 ]; then - cat <&4 + # CMA redefines select to cma_select, and cma_select expects int * + # instead of fd_set * (just like 9.X) + selecttype='int *' + ;; + 11 | 12) # 12 may want upping the _POSIX_C_SOURCE datestamp... + ccflags=" -D_POSIX_C_SOURCE=199506L $ccflags" + set `echo X "$libswanted "| sed -e 's/ c / pthread c /'` + shift + libswanted="$*" + ;; + esac + usemymalloc='n' + ;; +esac +EOCBU + +# This script UU/use64bits.cbu will get 'called-back' by Configure +# after it has prompted the user for whether to use 64 bits. +cat > UU/use64bits.cbu <<'EOCBU' +case "$use64bits" in +$define|true|[yY]*) + if [ "$xxOsRevMajor" -lt 11 ]; then + cat <&4 64-bit compilation is not supported on HP-UX $xxOsRevMajor. You need at least HP-UX 11.0. +Cannot continue, aborting. EOM - exit 1 - fi - if [ ! -d /lib/pa20_64 ]; then - cat <&4 + exit 1 + fi + if [ ! -d /lib/pa20_64 ]; then + cat <&4 You do not seem to have the 64-bit libraries, /lib/pa20_64. +Cannot continue, aborting. EOM - exit 1 - fi - ccflags="$ccflags +DD64 -D_FILE_OFFSET_BITS=64" -fi + exit 1 + fi + ccflags="$ccflags +DD64 -D_FILE_OFFSET_BITS=64" + ldflags="$ldflags +DD64" + ld=/usr/bin/ld + set `echo " $libswanted " | sed -e 's@ dl @ @'` + libswanted="$*" + glibpth="/lib/pa20_64" +esac +EOCBU