1#!/usr/bin/sh 2 3### SYSTEM ARCHITECTURE 4 5# Determine the architecture type of this system. 6# Keep leading tab below -- Configure Black Magic -- RAM, 03/02/97 7 xxOsRevMajor=`uname -r | sed -e 's/^[^0-9]*//' | cut -d. -f1`; 8 xxOsRevMinor=`uname -r | sed -e 's/^[^0-9]*//' | cut -d. -f2`; 9 xxOsRev=`expr 100 \* $xxOsRevMajor + $xxOsRevMinor` 10if [ "$xxOsRevMajor" -ge 10 ]; then 11 # This system is running >= 10.x 12 13 # Tested on 10.01 PA1.x and 10.20 PA[12].x. 14 # Idea: Scan /usr/include/sys/unistd.h for matches with 15 # "#define CPU_* `getconf # CPU_VERSION`" to determine CPU type. 16 # Note the text following "CPU_" is used, *NOT* the comment. 17 # 18 # ASSUMPTIONS: Numbers will continue to be defined in hex -- and in 19 # /usr/include/sys/unistd.h -- and the CPU_* #defines will be kept 20 # up to date with new CPU/OS releases. 21 xxcpu=`getconf CPU_VERSION`; # Get the number. 22 xxcpu=`printf '0x%x' $xxcpu`; # convert to hex 23 archname=`sed -n -e "s/^#[[:space:]]*define[[:space:]]*CPU_//p" /usr/include/sys/unistd.h | 24 sed -n -e "s/[[:space:]]*$xxcpu[[:space:]].*//p" | 25 sed -e s/_RISC/-RISC/ -e s/HP_// -e s/_/./ -e "s/[[:space:]]*//g"`; 26else 27 # This system is running <= 9.x 28 # Tested on 9.0[57] PA and [78].0 MC680[23]0. Idea: After removing 29 # MC6888[12] from context string, use first CPU identifier. 30 # 31 # ASSUMPTION: Only CPU identifiers contain no lowercase letters. 32 archname=`getcontext | tr ' ' '\012' | grep -v '[a-z]' | grep -v MC688 | 33 sed -e 's/HP-//' -e 1q`; 34 selecttype='int *' 35 fi 36 37# For some strange reason, the u32align test from Configure hangs in 38# HP-UX 10.20 since the December 2001 patches. So hint it to avoid 39# the test. 40if [ "$xxOsRevMajor" -le 10 ]; then 41 d_u32align=$define 42 fi 43 44echo "Archname is $archname" 45 46# Fix XSlib (CPAN) confusion when re-using a prefix but changing from ILP32 47# to LP64 builds. They're NOT binary compatible, so quit claiming they are. 48archname64=LP64 49 50 51### HP-UX OS specific behaviour 52 53# -ldbm is obsolete and should not be used 54# -lBSD contains BSD-style duplicates of SVR4 routines that cause confusion 55# -lPW is obsolete and should not be used 56# The libraries crypt, malloc, ndir, and net are empty. 57set `echo "X $libswanted " | sed -e 's/ ld / /' -e 's/ dbm / /' -e 's/ BSD / /' -e 's/ PW / /'` 58shift 59libswanted="$*" 60 61cc=${cc:-cc} 62ar=/usr/bin/ar # Yes, truly override. We do not want the GNU ar. 63full_ar=$ar # I repeat, no GNU ar. arrr. 64 65set `echo "X $ccflags " | sed -e 's/ -A[ea] / /' -e 's/ -D_HPUX_SOURCE / /'` 66shift 67 cc_cppflags="$* -D_HPUX_SOURCE" 68cppflags="-Aa -D__STDC_EXT__ $cc_cppflags" 69 70case "$prefix" in 71 "") prefix='/opt/perl5' ;; 72 esac 73 74 gnu_as=no 75 gnu_ld=no 76case `$cc -v 2>&1`"" in 77 *gcc*) ccisgcc="$define" 78 ccflags="$cc_cppflags" 79 if [ "X$gccversion" = "X" ]; then 80 # Done too late in Configure if hinted 81 gccversion=`$cc -dumpversion` 82 fi 83 case "$gccversion" in 84 [012]*) # HP-UX and gcc-2.* break UINT32_MAX :-( 85 ccflags="$ccflags -DUINT32_MAX_BROKEN" 86 ;; 87 [34]*) # GCC (both 32bit and 64bit) will define __STDC_EXT__ 88 # by default when using GCC 3.0 and newer versions of 89 # the compiler. 90 cppflags="$cc_cppflags" 91 ;; 92 esac 93 case "`getconf KERNEL_BITS 2>/dev/null`" in 94 *64*) 95 echo "main(){}">try.c 96 case "$gccversion" in 97 [34]*) 98 case "$archname" in 99 PA-RISC*) 100 case "$ccflags" in 101 *-mpa-risc*) ;; 102 *) ccflags="$ccflags -mpa-risc-2-0" ;; 103 esac 104 ;; 105 esac 106 ;; 107 *) # gcc with gas will not accept +DA2.0 108 case "`$cc -c -Wa,+DA2.0 try.c 2>&1`" in 109 *"+DA2.0"*) # gas 110 gnu_as=yes 111 ;; 112 *) # HPas 113 ccflags="$ccflags -Wa,+DA2.0" 114 ;; 115 esac 116 ;; 117 esac 118 # gcc with gld will not accept +vnocompatwarnings 119 case "`$cc -o try -Wl,+vnocompatwarnings try.c 2>&1`" in 120 *"+vnocompat"*) # gld 121 gnu_ld=yes 122 ;; 123 *) # HPld 124 case "$gccversion" in 125 [12]*) 126 # Why not 3 as well here? 127 # Since not relevant to IA64, not changed. 128 ldflags="$ldflags -Wl,+vnocompatwarnings" 129 ccflags="$ccflags -Wl,+vnocompatwarnings" 130 ;; 131 esac 132 ;; 133 esac 134 rm -f try.c 135 ;; 136 esac 137 ;; 138 *) ccisgcc='' 139 # What cannot be use in combination with ccache links :( 140 cc_found="" 141 for p in `echo $PATH | tr : ' ''` ; do 142 x="$p/cc" 143 if [ -f $x ] && [ -x $x ]; then 144 if [ -h $x ]; then 145 l=`ls -l $x | sed 's,.*-> ,,'` 146 case $l in 147 /*) x=$l ;; 148 *) x="$p/$l" ;; 149 esac 150 fi 151 x=`echo $x | sed 's,/\./,/,g'` 152 case $x in 153 *ccache*) ;; 154 *) [ -z "$cc_found" ] && cc_found=$x ;; 155 esac 156 fi 157 done 158 [ -z "$cc_found" ] && cc_found=`which cc` 159 what $cc_found >&4 160 ccversion=`what $cc_found | awk '/Compiler/{print $2}/Itanium/{print $6,$7}/for Integrity/{print $6}'` 161 case "$ccflags" in 162 "-Ae "*) ;; 163 *) ccflags="-Ae $cc_cppflags" 164 # +vnocompatwarnings not known in 10.10 and older 165 if [ $xxOsRev -ge 1020 ]; then 166 ccflags="$ccflags -Wl,+vnocompatwarnings" 167 fi 168 ;; 169 esac 170 # Needed because cpp does only support -Aa (not -Ae) 171 cpplast='-' 172 cppminus='-' 173 cppstdin='cc -E -Aa -D__STDC_EXT__' 174 cpprun=$cppstdin 175# case "$d_casti32" in 176# "") d_casti32='undef' ;; 177# esac 178 ;; 179 esac 180 181# When HP-UX runs a script with "#!", it sets argv[0] to the script name. 182toke_cflags='ccflags="$ccflags -DARG_ZERO_IS_SCRIPT"' 183 184### 64 BITNESS 185 186# Some gcc versions do native 64 bit long (e.g. 2.9-hppa-000310 and gcc-3.0) 187# We have to force 64bitness to go search the right libraries 188 gcc_64native=no 189case "$ccisgcc" in 190 $define|true|[Yy]) 191 echo '#include <stdio.h>\nint main(){long l;printf("%d\\n",sizeof(l));}'>try.c 192 $cc -o try $ccflags $ldflags try.c 193 if [ "`try`" = "8" ]; then 194 case "$use64bitall" in 195 $define|true|[Yy]) ;; 196 *) cat <<EOM >&4 197 198*** This version of gcc uses 64 bit longs. -Duse64bitall is 199*** implicitly set to enable continuation 200EOM 201 esac 202 use64bitall=$define 203 gcc_64native=yes 204 fi 205 ;; 206 esac 207 208case "$use64bitall" in 209 $define|true|[yY]*) use64bitint="$define" ;; 210 esac 211 212case "$usemorebits" in 213 $define|true|[yY]*) use64bitint="$define"; uselongdouble="$define" ;; 214 esac 215 216case "$archname" in 217 IA64*) 218 # While here, override so=sl auto-detection 219 so='so' 220 ;; 221 *) 222 case "$uselongdouble" in 223 *) ;; 224 $define|true|[yY]*) 225 cat <<EOM >&4 226 227*** long doubles are not (yet) supported on HP-UX (any version) 228*** Until it does, we cannot continue, aborting. 229EOM 230 exit 1 ;; 231 esac 232 ;; 233 esac 234 235case "$use64bitint" in 236 $define|true|[Yy]) 237 238 if [ "$xxOsRevMajor" -lt 11 ]; then 239 cat <<EOM >&4 240 241*** 64-bit compilation is not supported on HP-UX $xxOsRevMajor. 242*** You need at least HP-UX 11.0. 243*** Cannot continue, aborting. 244EOM 245 exit 1 246 fi 247 248 # Set libc and the library paths 249 case "$archname" in 250 PA-RISC*) 251 loclibpth="$loclibpth /lib/pa20_64" 252 libc='/lib/pa20_64/libc.sl' ;; 253 IA64*) 254 loclibpth="$loclibpth /usr/lib/hpux64" 255 libc='/usr/lib/hpux64/libc.so' ;; 256 esac 257 if [ ! -f "$libc" ]; then 258 cat <<EOM >&4 259 260*** You do not seem to have the 64-bit libc. 261*** I cannot find the file $libc. 262*** Cannot continue, aborting. 263EOM 264 exit 1 265 fi 266 267 case "$ccisgcc" in 268 $define|true|[Yy]) 269 # For the moment, don't care that it ain't supported (yet) 270 # by gcc (up to and including 2.95.3), cause it'll crash 271 # anyway. Expect auto-detection of 64-bit enabled gcc on 272 # HP-UX soon, including a user-friendly exit 273 case $gcc_64native in 274 no) case "$gccversion" in 275 [1234]*) 276 ccflags="$ccflags -mlp64" 277 case "$archname" in 278 PA-RISC*) 279 ldflags="$ldflags -Wl,+DD64" 280 ;; 281 IA64*) 282 ldflags="$ldflags -mlp64" 283 ;; 284 esac 285 ;; 286 esac 287 ;; 288 esac 289 ;; 290 *) 291 ccflags="$ccflags +DD64" 292 ldflags="$ldflags +DD64" 293 ;; 294 esac 295 296 # Reset the library checker to make sure libraries 297 # are the right type 298 # (NOTE: on IA64, this doesn't work with .a files.) 299 libscheck='case "`/usr/bin/file $xxx`" in 300 *ELF-64*|*LP64*|*PA-RISC2.0*) ;; 301 *) xxx=/no/64-bit$xxx ;; 302 esac' 303 304 ;; 305 306 *) # Not in 64-bit mode 307 308 case "$archname" in 309 PA-RISC*) 310 libc='/lib/libc.sl' ;; 311 IA64*) 312 loclibpth="$loclibpth /usr/lib/hpux32" 313 libc='/usr/lib/hpux32/libc.so' ;; 314 esac 315 ;; 316 esac 317 318# By setting the deferred flag below, this means that if you run perl 319# on a system that does not have the required shared library that you 320# linked it with, it will die when you try to access a symbol in the 321# (missing) shared library. If you would rather know at perl startup 322# time that you are missing an important shared library, switch the 323# comments so that immediate, rather than deferred loading is 324# performed. Even with immediate loading, you can postpone errors for 325# undefined (or multiply defined) routines until actual access by 326# adding the "nonfatal" option. 327# ccdlflags="-Wl,-E -Wl,-B,immediate $ccdlflags" 328# ccdlflags="-Wl,-E -Wl,-B,immediate,-B,nonfatal $ccdlflags" 329if [ "$gnu_ld" = "yes" ]; then 330 ccdlflags="-Wl,-E $ccdlflags" 331else 332 ccdlflags="-Wl,-E -Wl,-B,deferred $ccdlflags" 333 fi 334 335 336### COMPILER SPECIFICS 337 338## Local restrictions (point to README.hpux to lift these) 339 340## Optimization limits 341cat >try.c <<EOF 342#include <stdio.h> 343#include <sys/resource.h> 344 345int main () 346{ 347 struct rlimit rl; 348 int i = getrlimit (RLIMIT_DATA, &rl); 349 printf ("%d\n", (int)(rl.rlim_cur / (1024 * 1024))); 350 } /* main */ 351EOF 352$cc -o try $ccflags $ldflags try.c 353 maxdsiz=`try` 354rm -f try try.c core 355if [ $maxdsiz -le 64 ]; then 356 # 64 Mb is probably not enough to optimize toke.c 357 # and regexp.c with -O2 358 cat <<EOM >&4 359Your kernel limits the data section of your programs to $maxdsiz Mb, 360which is (sadly) not enough to fully optimize some parts of the 361perl binary. I'll try to use a lower optimization level for 362those parts. If you are a sysadmin, and you *do* want full 363optimization, raise the 'maxdsiz' kernel configuration parameter 364to at least 0x08000000 (128 Mb) and rebuild your kernel. 365EOM 366regexec_cflags='' 367doop_cflags='' 368op_cflags='' 369 fi 370 371case "$ccisgcc" in 372 $define|true|[Yy]) 373 374 case "$optimize" in 375 "") optimize="-g -O" ;; 376 *O[3456789]*) optimize=`echo "$optimize" | sed -e 's/O[3-9]/O2/'` ;; 377 esac 378 #ld="$cc" 379 ld=/usr/bin/ld 380 cccdlflags='-fPIC' 381 #lddlflags='-shared' 382 lddlflags='-b' 383 case "$optimize" in 384 *-g*-O*|*-O*-g*) 385 # gcc without gas will not accept -g 386 echo "main(){}">try.c 387 case "`$cc $optimize -c try.c 2>&1`" in 388 *"-g option disabled"*) 389 set `echo "X $optimize " | sed -e 's/ -g / /'` 390 shift 391 optimize="$*" 392 ;; 393 esac 394 ;; 395 esac 396 if [ $maxdsiz -le 64 ]; then 397 case "$optimize" in 398 *O2*) opt=`echo "$optimize" | sed -e 's/O2/O1/'` 399 toke_cflags="$toke_cflags;optimize=\"$opt\"" 400 regexec_cflags="optimize=\"$opt\"" 401 ;; 402 esac 403 fi 404 ;; 405 406 *) # HP's compiler cannot combine -g and -O 407 case "$optimize" in 408 "") optimize="+O2 +Onolimit" ;; 409 *O[3456789]*) optimize=`echo "$optimize" | sed -e 's/O[3-9]/O2/'` ;; 410 esac 411 case "$optimize" in 412 *-O*|\ 413 *O2*) opt=`echo "$optimize" | sed -e 's/-O/+O2/' -e 's/O2/O1/' -e 's/ *+Onolimit//'` 414 ;; 415 *) opt="$optimize" 416 ;; 417 esac 418 case "$archname" in 419 IA64*) 420 case "$ccversion" in 421 B3910B*A.06.0[12345]) 422 # > cc --version 423 # cc: HP aC++/ANSI C B3910B A.06.05 [Jul 25 2005] 424 # Has optimizing problems with -O2 and up for both 425 # maint (5.8.8+) and blead (5.9.3+) 426 # -O1/+O1 passed all tests (m)'05 [ 10 Jan 2005 ] 427 optimize="$opt" ;; 428 *) doop_cflags="optimize=\"$opt\"" 429 op_cflags="optimize=\"$opt\"" ;; 430 esac 431 ;; 432 esac 433 if [ $maxdsiz -le 64 ]; then 434 toke_cflags="$toke_cflags;optimize=\"$opt\"" 435 regexec_cflags="optimize=\"$opt\"" 436 fi 437 ld=/usr/bin/ld 438 cccdlflags='+Z' 439 lddlflags='-b +vnocompatwarnings' 440 ;; 441 esac 442 443## LARGEFILES 444if [ $xxOsRev -lt 1020 ]; then 445 uselargefiles="$undef" 446 fi 447 448#case "$uselargefiles-$ccisgcc" in 449# "$define-$define"|'-define') 450# cat <<EOM >&4 451# 452#*** I'm ignoring large files for this build because 453#*** I don't know how to do use large files in HP-UX using gcc. 454# 455#EOM 456# uselargefiles="$undef" 457# ;; 458# esac 459 460# Once we have the compiler flags defined, Configure will 461# execute the following call-back script. See hints/README.hints 462# for details. 463cat > UU/cc.cbu <<'EOCBU' 464# This script UU/cc.cbu will get 'called-back' by Configure after it 465# has prompted the user for the C compiler to use. 466 467# Compile and run the a test case to see if a certain gcc bug is 468# present. If so, lower the optimization level when compiling 469# pp_pack.c. This works around a bug in unpack. 470 471if test -z "$ccisgcc" -a -z "$gccversion"; then 472 : no tests needed for HPc 473else 474 echo " " 475 echo "Testing for a certain gcc bug is fixed in your compiler..." 476 477 # Try compiling the test case. 478 if $cc -o t001 -O $ccflags $ldflags -lm ../hints/t001.c; then 479 gccbug=`$run ./t001` 480 case "$gccbug" in 481 *fails*) 482 cat >&4 <<EOF 483This C compiler ($gccversion) is known to have optimizer 484problems when compiling pp_pack.c. 485 486Disabling optimization for pp_pack.c. 487EOF 488 case "$pp_pack_cflags" in 489 '') pp_pack_cflags='optimize=' 490 echo "pp_pack_cflags='optimize=\"\"'" >> config.sh ;; 491 *) echo "You specified pp_pack_cflags yourself, so we'll go with your value." >&4 ;; 492 esac 493 ;; 494 *) echo "Your compiler is ok." >&4 495 ;; 496 esac 497 else 498 echo " " 499 echo "*** WHOA THERE!!! ***" >&4 500 echo " Your C compiler \"$cc\" doesn't seem to be working!" >&4 501 case "$knowitall" in 502 '') echo " You'd better start hunting for one and let me know about it." >&4 503 exit 1 504 ;; 505 esac 506 fi 507 508 rm -f t001$_o t001$_exe 509 fi 510EOCBU 511 512cat >UU/uselargefiles.cbu <<'EOCBU' 513# This script UU/uselargefiles.cbu will get 'called-back' by Configure 514# after it has prompted the user for whether to use large files. 515case "$uselargefiles" in 516 ""|$define|true|[yY]*) 517 # there are largefile flags available via getconf(1) 518 # but we cheat for now. (Keep that in the left margin.) 519ccflags_uselargefiles="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" 520 521 case " $ccflags " in 522 *" $ccflags_uselargefiles "*) ;; 523 *) ccflags="$ccflags $ccflags_uselargefiles" ;; 524 esac 525 526 if test -z "$ccisgcc" -a -z "$gccversion"; then 527 # The strict ANSI mode (-Aa) doesn't like large files. 528 ccflags=`echo " $ccflags "|sed 's@ -Aa @ @g'` 529 case "$ccflags" in 530 *-Ae*) ;; 531 *) ccflags="$ccflags -Ae" ;; 532 esac 533 fi 534 ;; 535 esac 536EOCBU 537 538# THREADING 539 540# This script UU/usethreads.cbu will get 'called-back' by Configure 541# after it has prompted the user for whether to use threads. 542cat >UU/usethreads.cbu <<'EOCBU' 543case "$usethreads" in 544 $define|true|[yY]*) 545 if [ "$xxOsRevMajor" -lt 10 ]; then 546 cat <<EOM >&4 547 548HP-UX $xxOsRevMajor cannot support POSIX threads. 549Consider upgrading to at least HP-UX 11. 550Cannot continue, aborting. 551EOM 552 exit 1 553 fi 554 555 if [ "$xxOsRevMajor" -eq 10 ]; then 556 # Under 10.X, a threaded perl can be built 557 if [ -f /usr/include/pthread.h ]; then 558 if [ -f /usr/lib/libcma.sl ]; then 559 # DCE (from Core OS CD) is installed 560 561 # Check if it is pristine, or patched 562 cmavsn=`what /usr/lib/libcma.sl 2>&1 | grep 1996` 563 if [ ! -z "$cmavsn" ]; then 564 cat <<EOM >&4 565 566*************************************************************************** 567 568Perl will support threading through /usr/lib/libcma.sl from 569the HP DCE package, but the version found is too old to be 570reliable. 571 572If you are not depending on this specific version of the library, 573consider to upgrade using patch PHSS_23672 (read README.hpux) 574 575*************************************************************************** 576 577(sleeping for 10 seconds...) 578EOM 579 sleep 10 580 fi 581 582 # It needs # libcma and OLD_PTHREADS_API. Also 583 # <pthread.h> needs to be #included before any 584 # other includes (in perl.h) 585 586 # HP-UX 10.X uses the old pthreads API 587 d_oldpthreads="$define" 588 589 # include libcma before all the others 590 libswanted="cma $libswanted" 591 592 # tell perl.h to include <pthread.h> before other 593 # include files 594 ccflags="$ccflags -DPTHREAD_H_FIRST" 595# First column on purpose: 596# this is not a standard Configure variable 597# but we need to get this noticed. 598pthread_h_first="$define" 599 600 # HP-UX 10.X seems to have no easy 601 # way of detecting these *time_r protos. 602 d_gmtime_r_proto='define' 603 gmtime_r_proto='REENTRANT_PROTO_I_TS' 604 d_localtime_r_proto='define' 605 localtime_r_proto='REENTRANT_PROTO_I_TS' 606 607 # Avoid the poisonous conflicting (and irrelevant) 608 # prototypes of setkey (). 609 i_crypt="$undef" 610 611 # CMA redefines select to cma_select, and cma_select 612 # expects int * instead of fd_set * (just like 9.X) 613 selecttype='int *' 614 615 elif [ -f /usr/lib/libpthread.sl ]; then 616 # PTH package is installed 617 libswanted="pthread $libswanted" 618 else 619 libswanted="no_threads_available" 620 fi 621 else 622 libswanted="no_threads_available" 623 fi 624 625 if [ $libswanted = "no_threads_available" ]; then 626 cat <<EOM >&4 627 628In HP-UX 10.X for POSIX threads you need both of the files 629/usr/include/pthread.h and either /usr/lib/libcma.sl or /usr/lib/libpthread.sl. 630Either you must upgrade to HP-UX 11 or install a posix thread library: 631 632 DCE-CoreTools from HP-UX 10.20 Hardware Extensions 3.0 CD (B3920-13941) 633 634or 635 636 PTH package from e.g. http://hpux.tn.tudelft.nl/hppd/hpux/alpha.html 637 638Cannot continue, aborting. 639EOM 640 exit 1 641 fi 642 else 643 # 12 may want upping the _POSIX_C_SOURCE datestamp... 644 ccflags=" -D_POSIX_C_SOURCE=199506L -D_REENTRANT $ccflags" 645 set `echo X "$libswanted "| sed -e 's/ c / pthread c /'` 646 shift 647 libswanted="$*" 648 649 # HP-UX 11.X seems to have no easy 650 # way of detecting these *time_r protos. 651 d_gmtime_r_proto='define' 652 gmtime_r_proto='REENTRANT_PROTO_S_TS' 653 d_localtime_r_proto='define' 654 localtime_r_proto='REENTRANT_PROTO_S_TS' 655 fi 656 ;; 657 esac 658EOCBU 659 660# There used to be: 661# The mysterious io_xs memory corruption in 11.00 32bit seems to get 662# fixed by not using Perl's malloc. Flip side is performance loss. 663# So we want mymalloc for all situations possible 664# That set usemymalloc to 'n' for threaded builds and non-gcc 32bit 665# non-debugging builds and 'y' for all others 666 667usemymalloc='n' 668case "$useperlio" in 669 $undef|false|[nN]*) usemymalloc='y' ;; 670 esac 671 672# malloc wrap works 673case "$usemallocwrap" in 674 '') usemallocwrap='define' ;; 675 esac 676 677# ctime_r () and asctime_r () seem to have issues for versions before 678# HP-UX 11 679if [ $xxOsRevMajor -lt 11 ]; then 680 d_ctime_r="$undef" 681 d_asctime_r="$undef" 682 fi 683 684 685# fpclassify () is a macro, the library call is Fpclassify 686# Similarly with the others below. 687d_fpclassify='define' 688d_isnan='define' 689d_isinf='define' 690d_isfinite='define' 691d_unordered='define' 692# Next one(s) need the leading tab. These are special 'hint' symbols that 693# are not to be propagated to config.sh, all related to pthreads draft 4 694# interfaces. 695case "$d_oldpthreads" in 696 ''|$undef) 697 d_crypt_r_proto='undef' 698 d_getgrent_r_proto='undef' 699 d_getpwent_r_proto='undef' 700 d_strerror_r_proto='undef' 701 ;; 702 esac 703