-# This script UU/usethreads.cbu will get 'called-back' by Configure
-# after it has prompted the user for whether to use threads.
-cat > UU/usethreads.cbu <<'EOCBU'
-case "$usethreads" in
-$define|true|[yY]*)
- # The GNU pth is the recommended user-level pthreads implementation.
- # As of NetBSD 1.5.2 there are no kernel pthreads.
- if pkg_info -qe pth; then
- # Add -lpthread.
- libswanted="$libswanted pthread"
- # There is no libc_r as of NetBSD 1.5.2, so no c -> c_r.
- else
- echo "$0: You need to install the GNU pth. Aborting." >&4
- exit 1
- fi
- ;;
-esac
+# This script UU/usethreads.cbu will get 'called-back' by Configure
+# after it has prompted the user for whether to use threads.
+cat > UU/usethreads.cbu <<'EOCBU'
+case "$usethreads" in
+$define|true|[yY]*)
+ lpthread=
+ for xxx in pthread; do
+ for yyy in $loclibpth $plibpth $glibpth dummy; do
+ zzz=$yyy/lib$xxx.a
+ if test -f "$zzz"; then
+ lpthread=$xxx
+ break;
+ fi
+ zzz=$yyy/lib$xxx.so
+ if test -f "$zzz"; then
+ lpthread=$xxx
+ break;
+ fi
+ zzz=`ls $yyy/lib$xxx.so.* 2>/dev/null`
+ if test "X$zzz" != X; then
+ lpthread=$xxx
+ break;
+ fi
+ done
+ if test "X$lpthread" != X; then
+ break;
+ fi
+ done
+ if test "X$lpthread" != X; then
+ # Add -lpthread.
+ libswanted="$libswanted $lpthread"
+ # There is no libc_r as of NetBSD 1.5.2, so no c -> c_r.
+ # This will be revisited when NetBSD gains a native pthreads
+ # implementation.
+ else
+ echo "$0: No POSIX threads library (-lpthread) found. " \
+ "You may want to install GNU pth. Aborting." >&4
+ exit 1
+ fi
+ unset lpthread
+
+ # several reentrant functions are embedded in libc, but haven't
+ # been added to the header files yet. Let's hold off on using
+ # them until they are a valid part of the API
+ case "$osvers" in
+ [012].*|3.[0-1])
+ d_getprotobyname_r=$undef
+ d_getprotobynumber_r=$undef
+ d_getprotoent_r=$undef
+ d_getservbyname_r=$undef
+ d_getservbyport_r=$undef
+ d_getservent_r=$undef
+ d_setprotoent_r=$undef
+ d_setservent_r=$undef
+ d_endprotoent_r=$undef
+ d_endservent_r=$undef ;;
+ esac
+ ;;
+
+esac