i apologize. please ignore my previous `patch'. my brain was not functioning. here goes - --- pthread.c.orig Mon May 21 11:19:33 2001 +++ pthread.c Mon May 21 11:21:18 2001 @@ -1057,6 +1057,12 @@ return pth_sleep(sec); } +int __pthread_usleep(unsigned int sec) +{ + pthread_initialize(); + return pth_usleep(sec); +} + int __pthread_sigwait(const sigset_t *set, int *sig) { pthread_initialize(); --- pthread.h.in.orig Mon May 21 11:18:42 2001 +++ pthread.h.in Mon May 21 11:19:27 2001 @@ -483,6 +483,7 @@ extern pid_t __pthread_fork(void); extern unsigned int __pthread_sleep(unsigned int); +extern int __pthread_usleep(unsigned int); extern int __pthread_sigwait(const sigset_t *, int *); extern pid_t __pthread_waitpid(pid_t, int *, int); extern int __pthread_connect(int, struct sockaddr *, socklen_t); @@ -503,6 +504,7 @@ #if _POSIX_THREAD_SYSCALL_SOFT && !defined(_PTHREAD_PRIVATE) #define fork __pthread_fork #define sleep __pthread_sleep +#define usleep __pthread_usleep #define sigwait __pthread_sigwait #define waitpid __pthread_waitpid #define connect __pthread_connect also, this is required for pthreads to actually work on OpenBSD for some reason: --- pth_lib.c.orig Mon May 21 11:24:26 2001 +++ pth_lib.c Mon May 21 11:24:59 2001 @@ -48,12 +48,7 @@ { pth_attr_t t_attr; - /* support for implicit initialization calls - and to prevent multiple explict initialization, too */ - if (pth_initialized) - return_errno(FALSE, EPERM); - else - pth_initialized = TRUE; + pth_initialized = TRUE; pth_debug1("pth_init: enter"); and for OpenBSD to build shared libraries you need (these patches are seen in tons of OpenBSD ports). --- ltconfig.orig Sat May 27 07:15:00 2000 +++ ltconfig Fri Jan 19 12:57:33 2001 @@ -1105,6 +1105,9 @@ with_gnu_ld=no fi ;; +openbsd*) + with_gnu_ld=no + ;; esac @@ -1402,10 +1405,21 @@ ;; openbsd*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts' - hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no + case "$host_os" in + openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts' + hardcode_libdir_flag_spec='-R$libdir' + ;; + *) + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linkopts' + hardcode_libdir_flag_spec='${wl}-rpath,$libdir' + if [ "`/usr/bin/file /usr/lib/libc.so.* | grep ELF`" != "" ]; then + export_dynamic_flag_spec='${wl}-E' + fi + ;; + esac ;; os2*) @@ -2021,13 +2035,10 @@ openbsd*) version_type=sunos - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - need_version=no - fi library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH + deplibs_check_method='pass_all' ;; os2*) --- ltmain.sh.orig Sat Jul 29 10:51:11 2000 +++ ltmain.sh Tue Feb 20 14:08:16 2001 @@ -1079,7 +1079,18 @@ compiler." # These systems don't actually have c library (as such) continue ;; + *-*-openbsd*) + # Do not include libc due to us having libc/libc_r. + continue + ;; esac + elif test "$arg" = "-lc_r"; then + case "$host" in + *-*-openbsd*) + # Do not include libc_r directly, use -pthread flag. + continue + ;; + esac elif test "$arg" = "-lm"; then case "$host" in *-*-cygwin* | *-*-beos*) @@ -1091,6 +1102,10 @@ compiler." deplibs="$deplibs $arg" ;; + -?thread) + deplibs="$deplibs $arg" + ;; + -module) module=yes continue @@ -1799,6 +1814,9 @@ compiler." # rhapsody is a little odd... deplibs="$deplibs -framework System" ;; + *-*-openbsd*) + # do not include libc due to us having libc/libc_r. + ;; *) # Add libc to deplibs on all other systems. deplibs="$deplibs -lc" @@ -3567,40 +3585,6 @@ libdir='$install_libdir'\ # Exit here if they wanted silent mode. test "$show" = : && exit 0 - echo "----------------------------------------------------------------------" - echo "Libraries have been installed in:" - for libdir in $libdirs; do - echo " $libdir" - done - echo - echo "If you ever happen to want to link against installed libraries" - echo "in a given directory, LIBDIR, you must either use libtool, and" - echo "specify the full pathname of the library, or use \`-LLIBDIR'" - echo "flag during linking and do at least one of the following:" - if test -n "$shlibpath_var"; then - echo " - add LIBDIR to the \`$shlibpath_var' environment variable" - echo " during execution" - fi - if test -n "$runpath_var"; then - echo " - add LIBDIR to the \`$runpath_var' environment variable" - echo " during linking" - fi - if test -n "$hardcode_libdir_flag_spec"; then - libdir=LIBDIR - eval flag=\"$hardcode_libdir_flag_spec\" - - echo " - use the \`$flag' linker flag" - fi - if test -n "$admincmds"; then - echo " - have your system administrator run these commands:$admincmds" - fi - if test -f /etc/ld.so.conf; then - echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" - fi - echo - echo "See any operating system documentation about shared libraries for" - echo "more information, such as the ld(1) and ld.so(8) manual pages." - echo "----------------------------------------------------------------------" exit 0 ;; thanks, -vedge Setting Orange, 42th day of Discord, year 3167 ______________________________________________________________________ GNU Portable Threads (Pth) http://www.gnu.org/software/pth/ User Support Mailing List [EMAIL PROTECTED] Automated List Manager (Majordomo) [EMAIL PROTECTED]