for beter make distclean (was Re: [PATCH] Re: [ID 20020305.026] Not OK: perl v5.7...
[p5sagit/p5-mst-13.2.git] / Configure
index b5c72e4..342f292 100755 (executable)
--- 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 16 20:51:19 EET 2002 [metaconfig 3.0 PL70]
+# Generated on Fri Mar 29 18:09:14 EET 2002 [metaconfig 3.0 PL70]
 # (with additional metaconfig patches by perlbug@perl.org)
 
 cat >c1$$ <<EOF
@@ -965,7 +965,6 @@ perl5=''
 perladmin=''
 perlpath=''
 d_nv_preserves_uv=''
-d_nv_preserves_uv_bits=''
 i16size=''
 i16type=''
 i32size=''
@@ -976,6 +975,7 @@ i8size=''
 i8type=''
 ivsize=''
 ivtype=''
+nv_preserves_uv_bits=''
 nvsize=''
 nvtype=''
 u16size=''
@@ -2387,7 +2387,16 @@ EOM
                     fi
                 fi  
                 case "$ans" in
-                [yY]*) cc=gcc; ccname=gcc; ccflags=''; despair=no ;;
+                [yY]*) cc=gcc; ccname=gcc; ccflags=''; despair=no;
+                       if $test -f usethreads.cbu; then
+                           $cat >&4 <<EOM 
+
+*** However, any setting of the C compiler flags (e.g. for thread support)
+*** has been lost.  It may be necessary to pass -Dcc=gcc to Configure
+*** (together with e.g. -Dusethreads).
+
+EOM
+                       fi;;
                 esac
             fi
         fi
@@ -3440,16 +3449,12 @@ case "$usethreads" in
 $define)
        $cat <<EOM
 
-As of 5.5.640, Perl has two different internal threading implementations,
-the 5.005 version (5005threads) and an interpreter-based version
-(ithreads) that has one interpreter per thread.  Both are very 
-experimental.  This arrangement exists to help developers work out
-which one is better.
+As of release 5.6, Perl has two different threading implementations,
+an interpreter-based version (ithreads) with one interpreter per
+thread, and the 5.005 version (5005threads).  Both implementations
+are considered experimental, but since 5.8 ithreads somewhat less so.
+The 5005threads is effectively unmaintained.
 
-If you're a casual user, you probably don't want interpreter-threads
-at this time.  But if you do, the 'threads' module allows their use,
-and the 'Thread' module offers an interface to both 5005threads and
-ithreads (whichever has been configured).
 EOM
        : Default to ithreads unless overridden on command line or with
        : old config.sh
@@ -5694,7 +5699,7 @@ done >libc.tmp
 $echo $n ".$c"
 $grep fprintf libc.tmp > libc.ptf
 xscan='eval "<libc.ptf $com >libc.list"; $echo $n ".$c" >&4'
-xrun='eval "<libc.tmp $com >libc.list"; echo "done" >&4'
+xrun='eval "<libc.tmp $com >libc.list"; echo "done." >&4'
 xxx='[ADTSIW]'
 if com="$sed -n -e 's/__IO//' -e 's/^.* $xxx  *_[_.]*//p' -e 's/^.* $xxx  *//p'";\
        eval $xscan;\
@@ -8382,6 +8387,12 @@ esac
 set versiononly
 eval $setvar
 
+case "$versiononly" in
+"$define") inc_version_list=''
+           inc_version_list_init=0
+           ;;
+esac
+
 : figure out how to guarantee perl startup
 case "$startperl" in
 '')
@@ -9280,8 +9291,13 @@ eval $inlibc
 case "$d_asctime_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_time time.h"
-       case "$d_asctime_r_proto" in
-       '')     d_asctime_r_proto=define
+       case "time" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_asctime_r_proto:$usethreads" in
+       ":define")      d_asctime_r_proto=define
                set d_asctime_r_proto asctime_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -9305,7 +9321,7 @@ case "$d_asctime_r" in
        ./protochk "extern $try" $hdrs && asctime_r_proto=I_SBI ;;
        esac
        case "$asctime_r_proto" in
-       '')     d_asctime_r=undef
+       ''|0)   d_asctime_r=undef
                asctime_r_proto=0
                echo "Disabling asctime_r, cannot determine prototype." >&4 ;;
        * )     case "$asctime_r_proto" in
@@ -9315,7 +9331,12 @@ case "$d_asctime_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have asctime_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "asctime_r has no prototype, not using it." >&4 ;;
+               esac
+               d_asctime_r=undef
+               asctime_r_proto=0
+               ;;
        esac
        ;;
 *)     asctime_r_proto=0
@@ -9933,8 +9954,13 @@ eval $inlibc
 case "$d_crypt_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_crypt crypt.h"
-       case "$d_crypt_r_proto" in
-       '')     d_crypt_r_proto=define
+       case "crypt" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_crypt_r_proto:$usethreads" in
+       ":define")      d_crypt_r_proto=define
                set d_crypt_r_proto crypt_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -9946,7 +9972,11 @@ case "$d_crypt_r" in
        ./protochk "extern $try" $hdrs && crypt_r_proto=B_CCS ;;
        esac
        case "$crypt_r_proto" in
-       '')     d_crypt_r=undef
+       ''|0) try='char* crypt_r(const char*, const char*, CRYPTD*);'
+       ./protochk "extern $try" $hdrs && crypt_r_proto=B_CCD ;;
+       esac
+       case "$crypt_r_proto" in
+       ''|0)   d_crypt_r=undef
                crypt_r_proto=0
                echo "Disabling crypt_r, cannot determine prototype." >&4 ;;
        * )     case "$crypt_r_proto" in
@@ -9956,7 +9986,12 @@ case "$d_crypt_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have crypt_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "crypt_r has no prototype, not using it." >&4 ;;
+               esac
+               d_crypt_r=undef
+               crypt_r_proto=0
+               ;;
        esac
        ;;
 *)     crypt_r_proto=0
@@ -9980,9 +10015,14 @@ set ctermid_r d_ctermid_r
 eval $inlibc
 case "$d_ctermid_r" in
 "$define")
-       hdrs="$i_systypes sys/types.h define stdio.h $i_stdio stdio.h"
-       case "$d_ctermid_r_proto" in
-       '')     d_ctermid_r_proto=define
+       hdrs="$i_systypes sys/types.h define stdio.h "
+       case "stdio" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_ctermid_r_proto:$usethreads" in
+       ":define")      d_ctermid_r_proto=define
                set d_ctermid_r_proto ctermid_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -9994,7 +10034,7 @@ case "$d_ctermid_r" in
        ./protochk "extern $try" $hdrs && ctermid_r_proto=B_B ;;
        esac
        case "$ctermid_r_proto" in
-       '')     d_ctermid_r=undef
+       ''|0)   d_ctermid_r=undef
                ctermid_r_proto=0
                echo "Disabling ctermid_r, cannot determine prototype." >&4 ;;
        * )     case "$ctermid_r_proto" in
@@ -10004,7 +10044,12 @@ case "$d_ctermid_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have ctermid_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "ctermid_r has no prototype, not using it." >&4 ;;
+               esac
+               d_ctermid_r=undef
+               ctermid_r_proto=0
+               ;;
        esac
        ;;
 *)     ctermid_r_proto=0
@@ -10017,8 +10062,13 @@ eval $inlibc
 case "$d_ctime_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_time time.h"
-       case "$d_ctime_r_proto" in
-       '')     d_ctime_r_proto=define
+       case "time" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_ctime_r_proto:$usethreads" in
+       ":define")      d_ctime_r_proto=define
                set d_ctime_r_proto ctime_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -10042,7 +10092,7 @@ case "$d_ctime_r" in
        ./protochk "extern $try" $hdrs && ctime_r_proto=I_SBI ;;
        esac
        case "$ctime_r_proto" in
-       '')     d_ctime_r=undef
+       ''|0)   d_ctime_r=undef
                ctime_r_proto=0
                echo "Disabling ctime_r, cannot determine prototype." >&4 ;;
        * )     case "$ctime_r_proto" in
@@ -10052,7 +10102,12 @@ case "$d_ctime_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have ctime_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "ctime_r has no prototype, not using it." >&4 ;;
+               esac
+               d_ctime_r=undef
+               ctime_r_proto=0
+               ;;
        esac
        ;;
 *)     ctime_r_proto=0
@@ -10385,8 +10440,13 @@ eval $inlibc
 case "$d_drand48_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_stdlib stdlib.h"
-       case "$d_drand48_r_proto" in
-       '')     d_drand48_r_proto=define
+       case "stdlib" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_drand48_r_proto:$usethreads" in
+       ":define")      d_drand48_r_proto=define
                set d_drand48_r_proto drand48_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -10398,7 +10458,7 @@ case "$d_drand48_r" in
        ./protochk "extern $try" $hdrs && drand48_r_proto=I_ST ;;
        esac
        case "$drand48_r_proto" in
-       '')     d_drand48_r=undef
+       ''|0)   d_drand48_r=undef
                drand48_r_proto=0
                echo "Disabling drand48_r, cannot determine prototype." >&4 ;;
        * )     case "$drand48_r_proto" in
@@ -10408,7 +10468,12 @@ case "$d_drand48_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have drand48_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "drand48_r has no prototype, not using it." >&4 ;;
+               esac
+               d_drand48_r=undef
+               drand48_r_proto=0
+               ;;
        esac
        ;;
 *)     drand48_r_proto=0
@@ -10463,8 +10528,13 @@ eval $inlibc
 case "$d_endgrent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_grp grp.h"
-       case "$d_endgrent_r_proto" in
-       '')     d_endgrent_r_proto=define
+       case "grp" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_endgrent_r_proto:$usethreads" in
+       ":define")      d_endgrent_r_proto=define
                set d_endgrent_r_proto endgrent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -10480,7 +10550,7 @@ case "$d_endgrent_r" in
        ./protochk "extern $try" $hdrs && endgrent_r_proto=V_H ;;
        esac
        case "$endgrent_r_proto" in
-       '')     d_endgrent_r=undef
+       ''|0)   d_endgrent_r=undef
                endgrent_r_proto=0
                echo "Disabling endgrent_r, cannot determine prototype." >&4 ;;
        * )     case "$endgrent_r_proto" in
@@ -10490,7 +10560,12 @@ case "$d_endgrent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have endgrent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "endgrent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_endgrent_r=undef
+               endgrent_r_proto=0
+               ;;
        esac
        ;;
 *)     endgrent_r_proto=0
@@ -10511,8 +10586,13 @@ eval $inlibc
 case "$d_endhostent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_endhostent_r_proto" in
-       '')     d_endhostent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_endhostent_r_proto:$usethreads" in
+       ":define")      d_endhostent_r_proto=define
                set d_endhostent_r_proto endhostent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -10521,14 +10601,14 @@ case "$d_endhostent_r" in
        define)
        case "$endhostent_r_proto" in
        ''|0) try='int endhostent_r(struct hostent_data*);'
-       ./protochk "extern $try" $hdrs && endhostent_r_proto=I_S ;;
+       ./protochk "extern $try" $hdrs && endhostent_r_proto=I_D ;;
        esac
        case "$endhostent_r_proto" in
        ''|0) try='void endhostent_r(struct hostent_data*);'
-       ./protochk "extern $try" $hdrs && endhostent_r_proto=V_S ;;
+       ./protochk "extern $try" $hdrs && endhostent_r_proto=V_D ;;
        esac
        case "$endhostent_r_proto" in
-       '')     d_endhostent_r=undef
+       ''|0)   d_endhostent_r=undef
                endhostent_r_proto=0
                echo "Disabling endhostent_r, cannot determine prototype." >&4 ;;
        * )     case "$endhostent_r_proto" in
@@ -10538,7 +10618,12 @@ case "$d_endhostent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have endhostent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "endhostent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_endhostent_r=undef
+               endhostent_r_proto=0
+               ;;
        esac
        ;;
 *)     endhostent_r_proto=0
@@ -10555,8 +10640,13 @@ eval $inlibc
 case "$d_endnetent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_endnetent_r_proto" in
-       '')     d_endnetent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_endnetent_r_proto:$usethreads" in
+       ":define")      d_endnetent_r_proto=define
                set d_endnetent_r_proto endnetent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -10565,14 +10655,14 @@ case "$d_endnetent_r" in
        define)
        case "$endnetent_r_proto" in
        ''|0) try='int endnetent_r(struct netent_data*);'
-       ./protochk "extern $try" $hdrs && endnetent_r_proto=I_S ;;
+       ./protochk "extern $try" $hdrs && endnetent_r_proto=I_D ;;
        esac
        case "$endnetent_r_proto" in
        ''|0) try='void endnetent_r(struct netent_data*);'
-       ./protochk "extern $try" $hdrs && endnetent_r_proto=V_S ;;
+       ./protochk "extern $try" $hdrs && endnetent_r_proto=V_D ;;
        esac
        case "$endnetent_r_proto" in
-       '')     d_endnetent_r=undef
+       ''|0)   d_endnetent_r=undef
                endnetent_r_proto=0
                echo "Disabling endnetent_r, cannot determine prototype." >&4 ;;
        * )     case "$endnetent_r_proto" in
@@ -10582,7 +10672,12 @@ case "$d_endnetent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have endnetent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "endnetent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_endnetent_r=undef
+               endnetent_r_proto=0
+               ;;
        esac
        ;;
 *)     endnetent_r_proto=0
@@ -10599,8 +10694,13 @@ eval $inlibc
 case "$d_endprotoent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_endprotoent_r_proto" in
-       '')     d_endprotoent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_endprotoent_r_proto:$usethreads" in
+       ":define")      d_endprotoent_r_proto=define
                set d_endprotoent_r_proto endprotoent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -10609,14 +10709,14 @@ case "$d_endprotoent_r" in
        define)
        case "$endprotoent_r_proto" in
        ''|0) try='int endprotoent_r(struct protoent_data*);'
-       ./protochk "extern $try" $hdrs && endprotoent_r_proto=I_S ;;
+       ./protochk "extern $try" $hdrs && endprotoent_r_proto=I_D ;;
        esac
        case "$endprotoent_r_proto" in
        ''|0) try='void endprotoent_r(struct protoent_data*);'
-       ./protochk "extern $try" $hdrs && endprotoent_r_proto=V_S ;;
+       ./protochk "extern $try" $hdrs && endprotoent_r_proto=V_D ;;
        esac
        case "$endprotoent_r_proto" in
-       '')     d_endprotoent_r=undef
+       ''|0)   d_endprotoent_r=undef
                endprotoent_r_proto=0
                echo "Disabling endprotoent_r, cannot determine prototype." >&4 ;;
        * )     case "$endprotoent_r_proto" in
@@ -10626,7 +10726,12 @@ case "$d_endprotoent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have endprotoent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "endprotoent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_endprotoent_r=undef
+               endprotoent_r_proto=0
+               ;;
        esac
        ;;
 *)     endprotoent_r_proto=0
@@ -10731,8 +10836,13 @@ eval $inlibc
 case "$d_endpwent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_pwd pwd.h"
-       case "$d_endpwent_r_proto" in
-       '')     d_endpwent_r_proto=define
+       case "pwd" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_endpwent_r_proto:$usethreads" in
+       ":define")      d_endpwent_r_proto=define
                set d_endpwent_r_proto endpwent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -10748,7 +10858,7 @@ case "$d_endpwent_r" in
        ./protochk "extern $try" $hdrs && endpwent_r_proto=V_H ;;
        esac
        case "$endpwent_r_proto" in
-       '')     d_endpwent_r=undef
+       ''|0)   d_endpwent_r=undef
                endpwent_r_proto=0
                echo "Disabling endpwent_r, cannot determine prototype." >&4 ;;
        * )     case "$endpwent_r_proto" in
@@ -10758,7 +10868,12 @@ case "$d_endpwent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have endpwent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "endpwent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_endpwent_r=undef
+               endpwent_r_proto=0
+               ;;
        esac
        ;;
 *)     endpwent_r_proto=0
@@ -10775,8 +10890,13 @@ eval $inlibc
 case "$d_endservent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_endservent_r_proto" in
-       '')     d_endservent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_endservent_r_proto:$usethreads" in
+       ":define")      d_endservent_r_proto=define
                set d_endservent_r_proto endservent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -10785,14 +10905,14 @@ case "$d_endservent_r" in
        define)
        case "$endservent_r_proto" in
        ''|0) try='int endservent_r(struct servent_data*);'
-       ./protochk "extern $try" $hdrs && endservent_r_proto=I_S ;;
+       ./protochk "extern $try" $hdrs && endservent_r_proto=I_D ;;
        esac
        case "$endservent_r_proto" in
        ''|0) try='void endservent_r(struct servent_data*);'
-       ./protochk "extern $try" $hdrs && endservent_r_proto=V_S ;;
+       ./protochk "extern $try" $hdrs && endservent_r_proto=V_D ;;
        esac
        case "$endservent_r_proto" in
-       '')     d_endservent_r=undef
+       ''|0)   d_endservent_r=undef
                endservent_r_proto=0
                echo "Disabling endservent_r, cannot determine prototype." >&4 ;;
        * )     case "$endservent_r_proto" in
@@ -10802,7 +10922,12 @@ case "$d_endservent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have endservent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "endservent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_endservent_r=undef
+               endservent_r_proto=0
+               ;;
        esac
        ;;
 *)     endservent_r_proto=0
@@ -11446,8 +11571,13 @@ eval $inlibc
 case "$d_getgrent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_grp grp.h"
-       case "$d_getgrent_r_proto" in
-       '')     d_getgrent_r_proto=define
+       case "grp" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getgrent_r_proto:$usethreads" in
+       ":define")      d_getgrent_r_proto=define
                set d_getgrent_r_proto getgrent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -11479,7 +11609,7 @@ case "$d_getgrent_r" in
        ./protochk "extern $try" $hdrs && getgrent_r_proto=I_SBIH ;;
        esac
        case "$getgrent_r_proto" in
-       '')     d_getgrent_r=undef
+       ''|0)   d_getgrent_r=undef
                getgrent_r_proto=0
                echo "Disabling getgrent_r, cannot determine prototype." >&4 ;;
        * )     case "$getgrent_r_proto" in
@@ -11489,7 +11619,12 @@ case "$d_getgrent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getgrent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getgrent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getgrent_r=undef
+               getgrent_r_proto=0
+               ;;
        esac
        ;;
 *)     getgrent_r_proto=0
@@ -11502,8 +11637,13 @@ eval $inlibc
 case "$d_getgrgid_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_grp grp.h"
-       case "$d_getgrgid_r_proto" in
-       '')     d_getgrgid_r_proto=define
+       case "grp" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getgrgid_r_proto:$usethreads" in
+       ":define")      d_getgrgid_r_proto=define
                set d_getgrgid_r_proto getgrgid_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -11527,7 +11667,7 @@ case "$d_getgrgid_r" in
        ./protochk "extern $try" $hdrs && getgrgid_r_proto=S_TSBI ;;
        esac
        case "$getgrgid_r_proto" in
-       '')     d_getgrgid_r=undef
+       ''|0)   d_getgrgid_r=undef
                getgrgid_r_proto=0
                echo "Disabling getgrgid_r, cannot determine prototype." >&4 ;;
        * )     case "$getgrgid_r_proto" in
@@ -11537,7 +11677,12 @@ case "$d_getgrgid_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getgrgid_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getgrgid_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getgrgid_r=undef
+               getgrgid_r_proto=0
+               ;;
        esac
        ;;
 *)     getgrgid_r_proto=0
@@ -11550,8 +11695,13 @@ eval $inlibc
 case "$d_getgrnam_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_grp grp.h"
-       case "$d_getgrnam_r_proto" in
-       '')     d_getgrnam_r_proto=define
+       case "grp" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getgrnam_r_proto:$usethreads" in
+       ":define")      d_getgrnam_r_proto=define
                set d_getgrnam_r_proto getgrnam_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -11579,7 +11729,7 @@ case "$d_getgrnam_r" in
        ./protochk "extern $try" $hdrs && getgrnam_r_proto=S_CSBI ;;
        esac
        case "$getgrnam_r_proto" in
-       '')     d_getgrnam_r=undef
+       ''|0)   d_getgrnam_r=undef
                getgrnam_r_proto=0
                echo "Disabling getgrnam_r, cannot determine prototype." >&4 ;;
        * )     case "$getgrnam_r_proto" in
@@ -11589,7 +11739,12 @@ case "$d_getgrnam_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getgrnam_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getgrnam_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getgrnam_r=undef
+               getgrnam_r_proto=0
+               ;;
        esac
        ;;
 *)     getgrnam_r_proto=0
@@ -11699,8 +11854,13 @@ eval $inlibc
 case "$d_gethostbyaddr_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_gethostbyaddr_r_proto" in
-       '')     d_gethostbyaddr_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_gethostbyaddr_r_proto:$usethreads" in
+       ":define")      d_gethostbyaddr_r_proto=define
                set d_gethostbyaddr_r_proto gethostbyaddr_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -11748,7 +11908,7 @@ case "$d_gethostbyaddr_r" in
        ./protochk "extern $try" $hdrs && gethostbyaddr_r_proto=I_CII ;;
        esac
        case "$gethostbyaddr_r_proto" in
-       '')     d_gethostbyaddr_r=undef
+       ''|0)   d_gethostbyaddr_r=undef
                gethostbyaddr_r_proto=0
                echo "Disabling gethostbyaddr_r, cannot determine prototype." >&4 ;;
        * )     case "$gethostbyaddr_r_proto" in
@@ -11758,7 +11918,12 @@ case "$d_gethostbyaddr_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have gethostbyaddr_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "gethostbyaddr_r has no prototype, not using it." >&4 ;;
+               esac
+               d_gethostbyaddr_r=undef
+               gethostbyaddr_r_proto=0
+               ;;
        esac
        ;;
 *)     gethostbyaddr_r_proto=0
@@ -11771,8 +11936,13 @@ eval $inlibc
 case "$d_gethostbyname_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_gethostbyname_r_proto" in
-       '')     d_gethostbyname_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_gethostbyname_r_proto:$usethreads" in
+       ":define")      d_gethostbyname_r_proto=define
                set d_gethostbyname_r_proto gethostbyname_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -11792,7 +11962,7 @@ case "$d_gethostbyname_r" in
        ./protochk "extern $try" $hdrs && gethostbyname_r_proto=I_CSD ;;
        esac
        case "$gethostbyname_r_proto" in
-       '')     d_gethostbyname_r=undef
+       ''|0)   d_gethostbyname_r=undef
                gethostbyname_r_proto=0
                echo "Disabling gethostbyname_r, cannot determine prototype." >&4 ;;
        * )     case "$gethostbyname_r_proto" in
@@ -11802,7 +11972,12 @@ case "$d_gethostbyname_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have gethostbyname_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "gethostbyname_r has no prototype, not using it." >&4 ;;
+               esac
+               d_gethostbyname_r=undef
+               gethostbyname_r_proto=0
+               ;;
        esac
        ;;
 *)     gethostbyname_r_proto=0
@@ -11815,8 +11990,13 @@ eval $inlibc
 case "$d_gethostent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_gethostent_r_proto" in
-       '')     d_gethostent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_gethostent_r_proto:$usethreads" in
+       ":define")      d_gethostent_r_proto=define
                set d_gethostent_r_proto gethostent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -11848,7 +12028,7 @@ case "$d_gethostent_r" in
        ./protochk "extern $try" $hdrs && gethostent_r_proto=I_SD ;;
        esac
        case "$gethostent_r_proto" in
-       '')     d_gethostent_r=undef
+       ''|0)   d_gethostent_r=undef
                gethostent_r_proto=0
                echo "Disabling gethostent_r, cannot determine prototype." >&4 ;;
        * )     case "$gethostent_r_proto" in
@@ -11858,7 +12038,12 @@ case "$d_gethostent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have gethostent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "gethostent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_gethostent_r=undef
+               gethostent_r_proto=0
+               ;;
        esac
        ;;
 *)     gethostent_r_proto=0
@@ -11884,8 +12069,13 @@ eval $inlibc
 case "$d_getlogin_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_unistd unistd.h"
-       case "$d_getlogin_r_proto" in
-       '')     d_getlogin_r_proto=define
+       case "unistd" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getlogin_r_proto:$usethreads" in
+       ":define")      d_getlogin_r_proto=define
                set d_getlogin_r_proto getlogin_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -11909,7 +12099,7 @@ case "$d_getlogin_r" in
        ./protochk "extern $try" $hdrs && getlogin_r_proto=B_BI ;;
        esac
        case "$getlogin_r_proto" in
-       '')     d_getlogin_r=undef
+       ''|0)   d_getlogin_r=undef
                getlogin_r_proto=0
                echo "Disabling getlogin_r, cannot determine prototype." >&4 ;;
        * )     case "$getlogin_r_proto" in
@@ -11919,7 +12109,12 @@ case "$d_getlogin_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getlogin_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getlogin_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getlogin_r=undef
+               getlogin_r_proto=0
+               ;;
        esac
        ;;
 *)     getlogin_r_proto=0
@@ -11952,8 +12147,13 @@ eval $inlibc
 case "$d_getnetbyaddr_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_getnetbyaddr_r_proto" in
-       '')     d_getnetbyaddr_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getnetbyaddr_r_proto:$usethreads" in
+       ":define")      d_getnetbyaddr_r_proto=define
                set d_getnetbyaddr_r_proto getnetbyaddr_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -11989,7 +12189,7 @@ case "$d_getnetbyaddr_r" in
        ./protochk "extern $try" $hdrs && getnetbyaddr_r_proto=I_IISD ;;
        esac
        case "$getnetbyaddr_r_proto" in
-       '')     d_getnetbyaddr_r=undef
+       ''|0)   d_getnetbyaddr_r=undef
                getnetbyaddr_r_proto=0
                echo "Disabling getnetbyaddr_r, cannot determine prototype." >&4 ;;
        * )     case "$getnetbyaddr_r_proto" in
@@ -11999,7 +12199,12 @@ case "$d_getnetbyaddr_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getnetbyaddr_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getnetbyaddr_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getnetbyaddr_r=undef
+               getnetbyaddr_r_proto=0
+               ;;
        esac
        ;;
 *)     getnetbyaddr_r_proto=0
@@ -12012,8 +12217,13 @@ eval $inlibc
 case "$d_getnetbyname_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_getnetbyname_r_proto" in
-       '')     d_getnetbyname_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getnetbyname_r_proto:$usethreads" in
+       ":define")      d_getnetbyname_r_proto=define
                set d_getnetbyname_r_proto getnetbyname_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12037,7 +12247,7 @@ case "$d_getnetbyname_r" in
        ./protochk "extern $try" $hdrs && getnetbyname_r_proto=I_CSD ;;
        esac
        case "$getnetbyname_r_proto" in
-       '')     d_getnetbyname_r=undef
+       ''|0)   d_getnetbyname_r=undef
                getnetbyname_r_proto=0
                echo "Disabling getnetbyname_r, cannot determine prototype." >&4 ;;
        * )     case "$getnetbyname_r_proto" in
@@ -12047,7 +12257,12 @@ case "$d_getnetbyname_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getnetbyname_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getnetbyname_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getnetbyname_r=undef
+               getnetbyname_r_proto=0
+               ;;
        esac
        ;;
 *)     getnetbyname_r_proto=0
@@ -12060,8 +12275,13 @@ eval $inlibc
 case "$d_getnetent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_getnetent_r_proto" in
-       '')     d_getnetent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getnetent_r_proto:$usethreads" in
+       ":define")      d_getnetent_r_proto=define
                set d_getnetent_r_proto getnetent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12093,7 +12313,7 @@ case "$d_getnetent_r" in
        ./protochk "extern $try" $hdrs && getnetent_r_proto=I_SD ;;
        esac
        case "$getnetent_r_proto" in
-       '')     d_getnetent_r=undef
+       ''|0)   d_getnetent_r=undef
                getnetent_r_proto=0
                echo "Disabling getnetent_r, cannot determine prototype." >&4 ;;
        * )     case "$getnetent_r_proto" in
@@ -12103,7 +12323,12 @@ case "$d_getnetent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getnetent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getnetent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getnetent_r=undef
+               getnetent_r_proto=0
+               ;;
        esac
        ;;
 *)     getnetent_r_proto=0
@@ -12154,8 +12379,13 @@ eval $inlibc
 case "$d_getprotobyname_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_getprotobyname_r_proto" in
-       '')     d_getprotobyname_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getprotobyname_r_proto:$usethreads" in
+       ":define")      d_getprotobyname_r_proto=define
                set d_getprotobyname_r_proto getprotobyname_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12175,7 +12405,7 @@ case "$d_getprotobyname_r" in
        ./protochk "extern $try" $hdrs && getprotobyname_r_proto=I_CSD ;;
        esac
        case "$getprotobyname_r_proto" in
-       '')     d_getprotobyname_r=undef
+       ''|0)   d_getprotobyname_r=undef
                getprotobyname_r_proto=0
                echo "Disabling getprotobyname_r, cannot determine prototype." >&4 ;;
        * )     case "$getprotobyname_r_proto" in
@@ -12185,7 +12415,12 @@ case "$d_getprotobyname_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getprotobyname_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getprotobyname_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getprotobyname_r=undef
+               getprotobyname_r_proto=0
+               ;;
        esac
        ;;
 *)     getprotobyname_r_proto=0
@@ -12198,8 +12433,13 @@ eval $inlibc
 case "$d_getprotobynumber_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_getprotobynumber_r_proto" in
-       '')     d_getprotobynumber_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getprotobynumber_r_proto:$usethreads" in
+       ":define")      d_getprotobynumber_r_proto=define
                set d_getprotobynumber_r_proto getprotobynumber_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12219,7 +12459,7 @@ case "$d_getprotobynumber_r" in
        ./protochk "extern $try" $hdrs && getprotobynumber_r_proto=I_ISD ;;
        esac
        case "$getprotobynumber_r_proto" in
-       '')     d_getprotobynumber_r=undef
+       ''|0)   d_getprotobynumber_r=undef
                getprotobynumber_r_proto=0
                echo "Disabling getprotobynumber_r, cannot determine prototype." >&4 ;;
        * )     case "$getprotobynumber_r_proto" in
@@ -12229,7 +12469,12 @@ case "$d_getprotobynumber_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getprotobynumber_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getprotobynumber_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getprotobynumber_r=undef
+               getprotobynumber_r_proto=0
+               ;;
        esac
        ;;
 *)     getprotobynumber_r_proto=0
@@ -12242,8 +12487,13 @@ eval $inlibc
 case "$d_getprotoent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_getprotoent_r_proto" in
-       '')     d_getprotoent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getprotoent_r_proto:$usethreads" in
+       ":define")      d_getprotoent_r_proto=define
                set d_getprotoent_r_proto getprotoent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12267,7 +12517,7 @@ case "$d_getprotoent_r" in
        ./protochk "extern $try" $hdrs && getprotoent_r_proto=I_SD ;;
        esac
        case "$getprotoent_r_proto" in
-       '')     d_getprotoent_r=undef
+       ''|0)   d_getprotoent_r=undef
                getprotoent_r_proto=0
                echo "Disabling getprotoent_r, cannot determine prototype." >&4 ;;
        * )     case "$getprotoent_r_proto" in
@@ -12277,7 +12527,12 @@ case "$d_getprotoent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getprotoent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getprotoent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getprotoent_r=undef
+               getprotoent_r_proto=0
+               ;;
        esac
        ;;
 *)     getprotoent_r_proto=0
@@ -12303,8 +12558,13 @@ eval $inlibc
 case "$d_getpwent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_pwd pwd.h"
-       case "$d_getpwent_r_proto" in
-       '')     d_getpwent_r_proto=define
+       case "pwd" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getpwent_r_proto:$usethreads" in
+       ":define")      d_getpwent_r_proto=define
                set d_getpwent_r_proto getpwent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12336,7 +12596,7 @@ case "$d_getpwent_r" in
        ./protochk "extern $try" $hdrs && getpwent_r_proto=I_SBIH ;;
        esac
        case "$getpwent_r_proto" in
-       '')     d_getpwent_r=undef
+       ''|0)   d_getpwent_r=undef
                getpwent_r_proto=0
                echo "Disabling getpwent_r, cannot determine prototype." >&4 ;;
        * )     case "$getpwent_r_proto" in
@@ -12346,7 +12606,12 @@ case "$d_getpwent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getpwent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getpwent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getpwent_r=undef
+               getpwent_r_proto=0
+               ;;
        esac
        ;;
 *)     getpwent_r_proto=0
@@ -12359,8 +12624,13 @@ eval $inlibc
 case "$d_getpwnam_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_pwd pwd.h"
-       case "$d_getpwnam_r_proto" in
-       '')     d_getpwnam_r_proto=define
+       case "pwd" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getpwnam_r_proto:$usethreads" in
+       ":define")      d_getpwnam_r_proto=define
                set d_getpwnam_r_proto getpwnam_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12384,7 +12654,7 @@ case "$d_getpwnam_r" in
        ./protochk "extern $try" $hdrs && getpwnam_r_proto=I_CSBI ;;
        esac
        case "$getpwnam_r_proto" in
-       '')     d_getpwnam_r=undef
+       ''|0)   d_getpwnam_r=undef
                getpwnam_r_proto=0
                echo "Disabling getpwnam_r, cannot determine prototype." >&4 ;;
        * )     case "$getpwnam_r_proto" in
@@ -12394,7 +12664,12 @@ case "$d_getpwnam_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getpwnam_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getpwnam_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getpwnam_r=undef
+               getpwnam_r_proto=0
+               ;;
        esac
        ;;
 *)     getpwnam_r_proto=0
@@ -12407,8 +12682,13 @@ eval $inlibc
 case "$d_getpwuid_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_pwd pwd.h"
-       case "$d_getpwuid_r_proto" in
-       '')     d_getpwuid_r_proto=define
+       case "pwd" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getpwuid_r_proto:$usethreads" in
+       ":define")      d_getpwuid_r_proto=define
                set d_getpwuid_r_proto getpwuid_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12432,7 +12712,7 @@ case "$d_getpwuid_r" in
        ./protochk "extern $try" $hdrs && getpwuid_r_proto=S_TSBI ;;
        esac
        case "$getpwuid_r_proto" in
-       '')     d_getpwuid_r=undef
+       ''|0)   d_getpwuid_r=undef
                getpwuid_r_proto=0
                echo "Disabling getpwuid_r, cannot determine prototype." >&4 ;;
        * )     case "$getpwuid_r_proto" in
@@ -12442,7 +12722,12 @@ case "$d_getpwuid_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getpwuid_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getpwuid_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getpwuid_r=undef
+               getpwuid_r_proto=0
+               ;;
        esac
        ;;
 *)     getpwuid_r_proto=0
@@ -12468,8 +12753,13 @@ eval $inlibc
 case "$d_getservbyname_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_getservbyname_r_proto" in
-       '')     d_getservbyname_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getservbyname_r_proto:$usethreads" in
+       ":define")      d_getservbyname_r_proto=define
                set d_getservbyname_r_proto getservbyname_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12489,7 +12779,7 @@ case "$d_getservbyname_r" in
        ./protochk "extern $try" $hdrs && getservbyname_r_proto=I_CCSD ;;
        esac
        case "$getservbyname_r_proto" in
-       '')     d_getservbyname_r=undef
+       ''|0)   d_getservbyname_r=undef
                getservbyname_r_proto=0
                echo "Disabling getservbyname_r, cannot determine prototype." >&4 ;;
        * )     case "$getservbyname_r_proto" in
@@ -12499,7 +12789,12 @@ case "$d_getservbyname_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getservbyname_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getservbyname_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getservbyname_r=undef
+               getservbyname_r_proto=0
+               ;;
        esac
        ;;
 *)     getservbyname_r_proto=0
@@ -12512,8 +12807,13 @@ eval $inlibc
 case "$d_getservbyport_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_getservbyport_r_proto" in
-       '')     d_getservbyport_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getservbyport_r_proto:$usethreads" in
+       ":define")      d_getservbyport_r_proto=define
                set d_getservbyport_r_proto getservbyport_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12533,7 +12833,7 @@ case "$d_getservbyport_r" in
        ./protochk "extern $try" $hdrs && getservbyport_r_proto=I_ICSD ;;
        esac
        case "$getservbyport_r_proto" in
-       '')     d_getservbyport_r=undef
+       ''|0)   d_getservbyport_r=undef
                getservbyport_r_proto=0
                echo "Disabling getservbyport_r, cannot determine prototype." >&4 ;;
        * )     case "$getservbyport_r_proto" in
@@ -12543,7 +12843,12 @@ case "$d_getservbyport_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getservbyport_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getservbyport_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getservbyport_r=undef
+               getservbyport_r_proto=0
+               ;;
        esac
        ;;
 *)     getservbyport_r_proto=0
@@ -12556,8 +12861,13 @@ eval $inlibc
 case "$d_getservent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_getservent_r_proto" in
-       '')     d_getservent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getservent_r_proto:$usethreads" in
+       ":define")      d_getservent_r_proto=define
                set d_getservent_r_proto getservent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12581,7 +12891,7 @@ case "$d_getservent_r" in
        ./protochk "extern $try" $hdrs && getservent_r_proto=I_SD ;;
        esac
        case "$getservent_r_proto" in
-       '')     d_getservent_r=undef
+       ''|0)   d_getservent_r=undef
                getservent_r_proto=0
                echo "Disabling getservent_r, cannot determine prototype." >&4 ;;
        * )     case "$getservent_r_proto" in
@@ -12591,7 +12901,12 @@ case "$d_getservent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getservent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getservent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getservent_r=undef
+               getservent_r_proto=0
+               ;;
        esac
        ;;
 *)     getservent_r_proto=0
@@ -12617,8 +12932,13 @@ eval $inlibc
 case "$d_getspnam_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_shadow shadow.h"
-       case "$d_getspnam_r_proto" in
-       '')     d_getspnam_r_proto=define
+       case "shadow" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_getspnam_r_proto:$usethreads" in
+       ":define")      d_getspnam_r_proto=define
                set d_getspnam_r_proto getspnam_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12634,7 +12954,7 @@ case "$d_getspnam_r" in
        ./protochk "extern $try" $hdrs && getspnam_r_proto=S_CSBI ;;
        esac
        case "$getspnam_r_proto" in
-       '')     d_getspnam_r=undef
+       ''|0)   d_getspnam_r=undef
                getspnam_r_proto=0
                echo "Disabling getspnam_r, cannot determine prototype." >&4 ;;
        * )     case "$getspnam_r_proto" in
@@ -12644,7 +12964,12 @@ case "$d_getspnam_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have getspnam_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "getspnam_r has no prototype, not using it." >&4 ;;
+               esac
+               d_getspnam_r=undef
+               getspnam_r_proto=0
+               ;;
        esac
        ;;
 *)     getspnam_r_proto=0
@@ -12676,8 +13001,13 @@ eval $inlibc
 case "$d_gmtime_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_time time.h"
-       case "$d_gmtime_r_proto" in
-       '')     d_gmtime_r_proto=define
+       case "time" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_gmtime_r_proto:$usethreads" in
+       ":define")      d_gmtime_r_proto=define
                set d_gmtime_r_proto gmtime_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12693,7 +13023,7 @@ case "$d_gmtime_r" in
        ./protochk "extern $try" $hdrs && gmtime_r_proto=I_TS ;;
        esac
        case "$gmtime_r_proto" in
-       '')     d_gmtime_r=undef
+       ''|0)   d_gmtime_r=undef
                gmtime_r_proto=0
                echo "Disabling gmtime_r, cannot determine prototype." >&4 ;;
        * )     case "$gmtime_r_proto" in
@@ -12703,7 +13033,12 @@ case "$d_gmtime_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have gmtime_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "gmtime_r has no prototype, not using it." >&4 ;;
+               esac
+               d_gmtime_r=undef
+               gmtime_r_proto=0
+               ;;
        esac
        ;;
 *)     gmtime_r_proto=0
@@ -12911,8 +13246,13 @@ eval $inlibc
 case "$d_localtime_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_time time.h"
-       case "$d_localtime_r_proto" in
-       '')     d_localtime_r_proto=define
+       case "time" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_localtime_r_proto:$usethreads" in
+       ":define")      d_localtime_r_proto=define
                set d_localtime_r_proto localtime_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -12928,7 +13268,7 @@ case "$d_localtime_r" in
        ./protochk "extern $try" $hdrs && localtime_r_proto=I_TS ;;
        esac
        case "$localtime_r_proto" in
-       '')     d_localtime_r=undef
+       ''|0)   d_localtime_r=undef
                localtime_r_proto=0
                echo "Disabling localtime_r, cannot determine prototype." >&4 ;;
        * )     case "$localtime_r_proto" in
@@ -12938,7 +13278,12 @@ case "$d_localtime_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have localtime_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "localtime_r has no prototype, not using it." >&4 ;;
+               esac
+               d_localtime_r=undef
+               localtime_r_proto=0
+               ;;
        esac
        ;;
 *)     localtime_r_proto=0
@@ -13421,18 +13766,18 @@ set try
 
 d_nv_preserves_uv="$undef"
 if eval $compile; then
-       d_nv_preserves_uv_bits="`$run ./try`"
+       nv_preserves_uv_bits="`$run ./try`"
 fi
-case "$d_nv_preserves_uv_bits" in
+case "$nv_preserves_uv_bits" in
 \-[1-9]*)      
-       d_nv_preserves_uv_bits=`expr 0 - $d_nv_preserves_uv_bits`
-       $echo "Your NVs can preserve all $d_nv_preserves_uv_bits bits of your UVs."  2>&1
+       nv_preserves_uv_bits=`expr 0 - $nv_preserves_uv_bits`
+       $echo "Your NVs can preserve all $nv_preserves_uv_bits bits of your UVs."  2>&1
        d_nv_preserves_uv="$define"
        ;;
-[1-9]*)        $echo "Your NVs can preserve only $d_nv_preserves_uv_bits bits of your UVs."  2>&1
+[1-9]*)        $echo "Your NVs can preserve only $nv_preserves_uv_bits bits of your UVs."  2>&1
        d_nv_preserves_uv="$undef" ;;
 *)     $echo "Can't figure out how many bits your NVs preserve." 2>&1
-       d_nv_preserves_uv_bits="$undef" ;;
+       nv_preserves_uv_bits="$undef" ;;
 esac
 
 $rm -f try.* try
@@ -13673,8 +14018,13 @@ eval $inlibc
 case "$d_random_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_stdlib stdlib.h"
-       case "$d_random_r_proto" in
-       '')     d_random_r_proto=define
+       case "stdlib" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_random_r_proto:$usethreads" in
+       ":define")      d_random_r_proto=define
                set d_random_r_proto random_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -13686,7 +14036,7 @@ case "$d_random_r" in
        ./protochk "extern $try" $hdrs && random_r_proto=I_TS ;;
        esac
        case "$random_r_proto" in
-       '')     d_random_r=undef
+       ''|0)   d_random_r=undef
                random_r_proto=0
                echo "Disabling random_r, cannot determine prototype." >&4 ;;
        * )     case "$random_r_proto" in
@@ -13696,7 +14046,12 @@ case "$d_random_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have random_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "random_r has no prototype, not using it." >&4 ;;
+               esac
+               d_random_r=undef
+               random_r_proto=0
+               ;;
        esac
        ;;
 *)     random_r_proto=0
@@ -13719,8 +14074,13 @@ eval $inlibc
 case "$d_readdir64_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_dirent dirent.h"
-       case "$d_readdir64_r_proto" in
-       '')     d_readdir64_r_proto=define
+       case "dirent" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_readdir64_r_proto:$usethreads" in
+       ":define")      d_readdir64_r_proto=define
                set d_readdir64_r_proto readdir64_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -13736,7 +14096,7 @@ case "$d_readdir64_r" in
        ./protochk "extern $try" $hdrs && readdir64_r_proto=I_TS ;;
        esac
        case "$readdir64_r_proto" in
-       '')     d_readdir64_r=undef
+       ''|0)   d_readdir64_r=undef
                readdir64_r_proto=0
                echo "Disabling readdir64_r, cannot determine prototype." >&4 ;;
        * )     case "$readdir64_r_proto" in
@@ -13746,7 +14106,12 @@ case "$d_readdir64_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have readdir64_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "readdir64_r has no prototype, not using it." >&4 ;;
+               esac
+               d_readdir64_r=undef
+               readdir64_r_proto=0
+               ;;
        esac
        ;;
 *)     readdir64_r_proto=0
@@ -13759,8 +14124,13 @@ eval $inlibc
 case "$d_readdir_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_dirent dirent.h"
-       case "$d_readdir_r_proto" in
-       '')     d_readdir_r_proto=define
+       case "dirent" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_readdir_r_proto:$usethreads" in
+       ":define")      d_readdir_r_proto=define
                set d_readdir_r_proto readdir_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -13776,7 +14146,7 @@ case "$d_readdir_r" in
        ./protochk "extern $try" $hdrs && readdir_r_proto=I_TS ;;
        esac
        case "$readdir_r_proto" in
-       '')     d_readdir_r=undef
+       ''|0)   d_readdir_r=undef
                readdir_r_proto=0
                echo "Disabling readdir_r, cannot determine prototype." >&4 ;;
        * )     case "$readdir_r_proto" in
@@ -13786,7 +14156,12 @@ case "$d_readdir_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have readdir_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "readdir_r has no prototype, not using it." >&4 ;;
+               esac
+               d_readdir_r=undef
+               readdir_r_proto=0
+               ;;
        esac
        ;;
 *)     readdir_r_proto=0
@@ -14303,8 +14678,13 @@ eval $inlibc
 case "$d_setgrent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_grp grp.h"
-       case "$d_setgrent_r_proto" in
-       '')     d_setgrent_r_proto=define
+       case "grp" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_setgrent_r_proto:$usethreads" in
+       ":define")      d_setgrent_r_proto=define
                set d_setgrent_r_proto setgrent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -14320,7 +14700,7 @@ case "$d_setgrent_r" in
        ./protochk "extern $try" $hdrs && setgrent_r_proto=V_H ;;
        esac
        case "$setgrent_r_proto" in
-       '')     d_setgrent_r=undef
+       ''|0)   d_setgrent_r=undef
                setgrent_r_proto=0
                echo "Disabling setgrent_r, cannot determine prototype." >&4 ;;
        * )     case "$setgrent_r_proto" in
@@ -14330,7 +14710,12 @@ case "$d_setgrent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have setgrent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "setgrent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_setgrent_r=undef
+               setgrent_r_proto=0
+               ;;
        esac
        ;;
 *)     setgrent_r_proto=0
@@ -14347,8 +14732,13 @@ eval $inlibc
 case "$d_sethostent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_sethostent_r_proto" in
-       '')     d_sethostent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_sethostent_r_proto:$usethreads" in
+       ":define")      d_sethostent_r_proto=define
                set d_sethostent_r_proto sethostent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -14364,7 +14754,7 @@ case "$d_sethostent_r" in
        ./protochk "extern $try" $hdrs && sethostent_r_proto=V_ID ;;
        esac
        case "$sethostent_r_proto" in
-       '')     d_sethostent_r=undef
+       ''|0)   d_sethostent_r=undef
                sethostent_r_proto=0
                echo "Disabling sethostent_r, cannot determine prototype." >&4 ;;
        * )     case "$sethostent_r_proto" in
@@ -14374,7 +14764,12 @@ case "$d_sethostent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have sethostent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "sethostent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_sethostent_r=undef
+               sethostent_r_proto=0
+               ;;
        esac
        ;;
 *)     sethostent_r_proto=0
@@ -14403,8 +14798,13 @@ eval $inlibc
 case "$d_setlocale_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_locale locale.h"
-       case "$d_setlocale_r_proto" in
-       '')     d_setlocale_r_proto=define
+       case "locale" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_setlocale_r_proto:$usethreads" in
+       ":define")      d_setlocale_r_proto=define
                set d_setlocale_r_proto setlocale_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -14416,7 +14816,7 @@ case "$d_setlocale_r" in
        ./protochk "extern $try" $hdrs && setlocale_r_proto=I_ICBI ;;
        esac
        case "$setlocale_r_proto" in
-       '')     d_setlocale_r=undef
+       ''|0)   d_setlocale_r=undef
                setlocale_r_proto=0
                echo "Disabling setlocale_r, cannot determine prototype." >&4 ;;
        * )     case "$setlocale_r_proto" in
@@ -14426,7 +14826,12 @@ case "$d_setlocale_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have setlocale_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "setlocale_r has no prototype, not using it." >&4 ;;
+               esac
+               d_setlocale_r=undef
+               setlocale_r_proto=0
+               ;;
        esac
        ;;
 *)     setlocale_r_proto=0
@@ -14443,8 +14848,13 @@ eval $inlibc
 case "$d_setnetent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_setnetent_r_proto" in
-       '')     d_setnetent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_setnetent_r_proto:$usethreads" in
+       ":define")      d_setnetent_r_proto=define
                set d_setnetent_r_proto setnetent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -14460,7 +14870,7 @@ case "$d_setnetent_r" in
        ./protochk "extern $try" $hdrs && setnetent_r_proto=V_ID ;;
        esac
        case "$setnetent_r_proto" in
-       '')     d_setnetent_r=undef
+       ''|0)   d_setnetent_r=undef
                setnetent_r_proto=0
                echo "Disabling setnetent_r, cannot determine prototype." >&4 ;;
        * )     case "$setnetent_r_proto" in
@@ -14470,7 +14880,12 @@ case "$d_setnetent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have setnetent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "setnetent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_setnetent_r=undef
+               setnetent_r_proto=0
+               ;;
        esac
        ;;
 *)     setnetent_r_proto=0
@@ -14503,8 +14918,13 @@ eval $inlibc
 case "$d_setprotoent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_setprotoent_r_proto" in
-       '')     d_setprotoent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_setprotoent_r_proto:$usethreads" in
+       ":define")      d_setprotoent_r_proto=define
                set d_setprotoent_r_proto setprotoent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -14520,7 +14940,7 @@ case "$d_setprotoent_r" in
        ./protochk "extern $try" $hdrs && setprotoent_r_proto=V_ID ;;
        esac
        case "$setprotoent_r_proto" in
-       '')     d_setprotoent_r=undef
+       ''|0)   d_setprotoent_r=undef
                setprotoent_r_proto=0
                echo "Disabling setprotoent_r, cannot determine prototype." >&4 ;;
        * )     case "$setprotoent_r_proto" in
@@ -14530,7 +14950,12 @@ case "$d_setprotoent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have setprotoent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "setprotoent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_setprotoent_r=undef
+               setprotoent_r_proto=0
+               ;;
        esac
        ;;
 *)     setprotoent_r_proto=0
@@ -14547,8 +14972,13 @@ eval $inlibc
 case "$d_setpwent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_pwd pwd.h"
-       case "$d_setpwent_r_proto" in
-       '')     d_setpwent_r_proto=define
+       case "pwd" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_setpwent_r_proto:$usethreads" in
+       ":define")      d_setpwent_r_proto=define
                set d_setpwent_r_proto setpwent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -14564,7 +14994,7 @@ case "$d_setpwent_r" in
        ./protochk "extern $try" $hdrs && setpwent_r_proto=V_H ;;
        esac
        case "$setpwent_r_proto" in
-       '')     d_setpwent_r=undef
+       ''|0)   d_setpwent_r=undef
                setpwent_r_proto=0
                echo "Disabling setpwent_r, cannot determine prototype." >&4 ;;
        * )     case "$setpwent_r_proto" in
@@ -14574,7 +15004,12 @@ case "$d_setpwent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have setpwent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "setpwent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_setpwent_r=undef
+               setpwent_r_proto=0
+               ;;
        esac
        ;;
 *)     setpwent_r_proto=0
@@ -14611,8 +15046,13 @@ eval $inlibc
 case "$d_setservent_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_netdb netdb.h"
-       case "$d_setservent_r_proto" in
-       '')     d_setservent_r_proto=define
+       case "netdb" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_setservent_r_proto:$usethreads" in
+       ":define")      d_setservent_r_proto=define
                set d_setservent_r_proto setservent_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -14628,7 +15068,7 @@ case "$d_setservent_r" in
        ./protochk "extern $try" $hdrs && setservent_r_proto=V_ID ;;
        esac
        case "$setservent_r_proto" in
-       '')     d_setservent_r=undef
+       ''|0)   d_setservent_r=undef
                setservent_r_proto=0
                echo "Disabling setservent_r, cannot determine prototype." >&4 ;;
        * )     case "$setservent_r_proto" in
@@ -14638,7 +15078,12 @@ case "$d_setservent_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have setservent_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "setservent_r has no prototype, not using it." >&4 ;;
+               esac
+               d_setservent_r=undef
+               setservent_r_proto=0
+               ;;
        esac
        ;;
 *)     setservent_r_proto=0
@@ -14906,8 +15351,13 @@ eval $inlibc
 case "$d_srand48_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_stdlib stdlib.h"
-       case "$d_srand48_r_proto" in
-       '')     d_srand48_r_proto=define
+       case "stdlib" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_srand48_r_proto:$usethreads" in
+       ":define")      d_srand48_r_proto=define
                set d_srand48_r_proto srand48_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -14919,7 +15369,7 @@ case "$d_srand48_r" in
        ./protochk "extern $try" $hdrs && srand48_r_proto=I_LS ;;
        esac
        case "$srand48_r_proto" in
-       '')     d_srand48_r=undef
+       ''|0)   d_srand48_r=undef
                srand48_r_proto=0
                echo "Disabling srand48_r, cannot determine prototype." >&4 ;;
        * )     case "$srand48_r_proto" in
@@ -14929,7 +15379,12 @@ case "$d_srand48_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have srand48_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "srand48_r has no prototype, not using it." >&4 ;;
+               esac
+               d_srand48_r=undef
+               srand48_r_proto=0
+               ;;
        esac
        ;;
 *)     srand48_r_proto=0
@@ -14942,8 +15397,13 @@ eval $inlibc
 case "$d_srandom_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_stdlib stdlib.h"
-       case "$d_srandom_r_proto" in
-       '')     d_srandom_r_proto=define
+       case "stdlib" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_srandom_r_proto:$usethreads" in
+       ":define")      d_srandom_r_proto=define
                set d_srandom_r_proto srandom_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -14955,7 +15415,7 @@ case "$d_srandom_r" in
        ./protochk "extern $try" $hdrs && srandom_r_proto=I_TS ;;
        esac
        case "$srandom_r_proto" in
-       '')     d_srandom_r=undef
+       ''|0)   d_srandom_r=undef
                srandom_r_proto=0
                echo "Disabling srandom_r, cannot determine prototype." >&4 ;;
        * )     case "$srandom_r_proto" in
@@ -14965,7 +15425,12 @@ case "$d_srandom_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have srandom_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "srandom_r has no prototype, not using it." >&4 ;;
+               esac
+               d_srandom_r=undef
+               srandom_r_proto=0
+               ;;
        esac
        ;;
 *)     srandom_r_proto=0
@@ -15377,8 +15842,13 @@ eval $inlibc
 case "$d_strerror_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_string string.h"
-       case "$d_strerror_r_proto" in
-       '')     d_strerror_r_proto=define
+       case "string" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_strerror_r_proto:$usethreads" in
+       ":define")      d_strerror_r_proto=define
                set d_strerror_r_proto strerror_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -15398,7 +15868,7 @@ case "$d_strerror_r" in
        ./protochk "extern $try" $hdrs && strerror_r_proto=B_IBW ;;
        esac
        case "$strerror_r_proto" in
-       '')     d_strerror_r=undef
+       ''|0)   d_strerror_r=undef
                strerror_r_proto=0
                echo "Disabling strerror_r, cannot determine prototype." >&4 ;;
        * )     case "$strerror_r_proto" in
@@ -15408,7 +15878,12 @@ case "$d_strerror_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have strerror_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "strerror_r has no prototype, not using it." >&4 ;;
+               esac
+               d_strerror_r=undef
+               strerror_r_proto=0
+               ;;
        esac
        ;;
 *)     strerror_r_proto=0
@@ -15715,6 +16190,24 @@ echo " "
 set d_telldirproto telldir $i_systypes sys/types.h $i_dirent dirent.h
 eval $hasproto
 
+: see if time exists
+echo " "
+if test "X$d_time" = X -o X"$timetype" = X; then
+    if set time val -f d_time; eval $csym; $val; then
+               echo 'time() found.' >&4
+               val="$define"
+               rp="What is the type returned by time() on this system?"
+               set time_t timetype long stdio.h sys/types.h
+               eval $typedef_ask
+    else
+               echo 'time() not found, hope that will do.' >&4
+               val="$undef"
+               timetype='int';
+    fi
+    set d_time
+    eval $setvar
+fi
+
 : see if this is a sys/times.h system
 set sys/times.h i_systimes
 eval $inhdr
@@ -15742,9 +16235,14 @@ set tmpnam_r d_tmpnam_r
 eval $inlibc
 case "$d_tmpnam_r" in
 "$define")
-       hdrs="$i_systypes sys/types.h define stdio.h $i_stdio stdio.h"
-       case "$d_tmpnam_r_proto" in
-       '')     d_tmpnam_r_proto=define
+       hdrs="$i_systypes sys/types.h define stdio.h "
+       case "stdio" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_tmpnam_r_proto:$usethreads" in
+       ":define")      d_tmpnam_r_proto=define
                set d_tmpnam_r_proto tmpnam_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -15756,7 +16254,7 @@ case "$d_tmpnam_r" in
        ./protochk "extern $try" $hdrs && tmpnam_r_proto=B_B ;;
        esac
        case "$tmpnam_r_proto" in
-       '')     d_tmpnam_r=undef
+       ''|0)   d_tmpnam_r=undef
                tmpnam_r_proto=0
                echo "Disabling tmpnam_r, cannot determine prototype." >&4 ;;
        * )     case "$tmpnam_r_proto" in
@@ -15766,7 +16264,12 @@ case "$d_tmpnam_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have tmpnam_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "tmpnam_r has no prototype, not using it." >&4 ;;
+               esac
+               d_tmpnam_r=undef
+               tmpnam_r_proto=0
+               ;;
        esac
        ;;
 *)     tmpnam_r_proto=0
@@ -15783,8 +16286,13 @@ eval $inlibc
 case "$d_ttyname_r" in
 "$define")
        hdrs="$i_systypes sys/types.h define stdio.h $i_unistd unistd.h"
-       case "$d_ttyname_r_proto" in
-       '')     d_ttyname_r_proto=define
+       case "unistd" in
+       time)
+               hdrs="$hdrs $i_systime sys/time.h"
+               ;;
+       esac
+       case "$d_ttyname_r_proto:$usethreads" in
+       ":define")      d_ttyname_r_proto=define
                set d_ttyname_r_proto ttyname_r $hdrs
                eval $hasproto ;;
        *)      ;;
@@ -15804,7 +16312,7 @@ case "$d_ttyname_r" in
        ./protochk "extern $try" $hdrs && ttyname_r_proto=B_IBI ;;
        esac
        case "$ttyname_r_proto" in
-       '')     d_ttyname_r=undef
+       ''|0)   d_ttyname_r=undef
                ttyname_r_proto=0
                echo "Disabling ttyname_r, cannot determine prototype." >&4 ;;
        * )     case "$ttyname_r_proto" in
@@ -15814,7 +16322,12 @@ case "$d_ttyname_r" in
                echo "Prototype: $try" ;;
        esac
        ;;
-       *)      echo "You have ttyname_r but no prototype, not using it." >&4 ;;
+       *)      case "$usethreads" in
+               define) echo "ttyname_r has no prototype, not using it." >&4 ;;
+               esac
+               d_ttyname_r=undef
+               ttyname_r_proto=0
+               ;;
        esac
        ;;
 *)     ttyname_r_proto=0
@@ -18247,24 +18760,6 @@ $rm -f stdioh
 
 
 
-: see if time exists
-echo " "
-if test "X$d_time" = X -o X"$timetype" = X; then
-    if set time val -f d_time; eval $csym; $val; then
-               echo 'time() found.' >&4
-               val="$define"
-               rp="What is the type returned by time() on this system?"
-               set time_t timetype long stdio.h sys/types.h
-               eval $typedef_ask
-    else
-               echo 'time() not found, hope that will do.' >&4
-               val="$undef"
-               timetype='int';
-    fi
-    set d_time
-    eval $setvar
-fi
-
 : see what type uids are declared as in the kernel
 echo " "
 echo "Looking for the type for user ids returned by getuid()."
@@ -18964,9 +19459,7 @@ eval $find_extensions
 # Special case:  Add in threads/shared since it is not picked up by the
 # recursive find above (and adding in general recursive finding breaks
 # SDBM_File/sdbm).  A.D.  10/25/2001.
-# Encode::XX need explicit mentions for the same reason.
-# --jhi 2002-03-04
-known_extensions="$known_extensions threads/shared Encode/CN Encode/JP Encode/KR Encode/TW"
+known_extensions="$known_extensions threads/shared"
 set X $nonxs_extensions
 shift
 nonxs_extensions="$*"
@@ -19191,6 +19684,16 @@ EOM
        : Exclude those that are not xs extensions
        case "$dflt" in
        '')     dflt=none;;
+        *)  case " $dflt " in
+            *" Encode "*) # Add the subextensions of Encode
+                cd "$rsrc/ext"
+                for xxx in `ls Encode/*/Makefile.PL|awk -F/ '{print $2}'`; do
+                        dflt="$dflt Encode/$xxx"
+                done
+                cd "$tdir"
+                ;;
+            esac
+            ;;
        esac
        rp="What extensions do you wish to include?"
        . ./myread
@@ -19593,7 +20096,6 @@ d_mymalloc='$d_mymalloc'
 d_nice='$d_nice'
 d_nl_langinfo='$d_nl_langinfo'
 d_nv_preserves_uv='$d_nv_preserves_uv'
-d_nv_preserves_uv_bits='$d_nv_preserves_uv_bits'
 d_off64_t='$d_off64_t'
 d_old_pthread_create_joinable='$d_old_pthread_create_joinable'
 d_oldpthreads='$d_oldpthreads'
@@ -20036,6 +20538,7 @@ nroff='$nroff'
 nvEUformat='$nvEUformat'
 nvFUformat='$nvFUformat'
 nvGUformat='$nvGUformat'
+nv_preserves_uv_bits='$nv_preserves_uv_bits'
 nveformat='$nveformat'
 nvfformat='$nvfformat'
 nvgformat='$nvgformat'