From: Jarkko Hietaniemi Date: Wed, 21 Oct 1998 13:03:57 +0000 (+0000) Subject: yielding, the saga continues. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=31dfa2f67cc0c743af923d5a6fe0b0f44ad42013;p=p5sagit%2Fp5-mst-13.2.git yielding, the saga continues. p4raw-id: //depot/cfgperl@2032 --- 31dfa2f67cc0c743af923d5a6fe0b0f44ad42013 diff --cc Configure index 329beed,450c8a6..ba640b3 --- a/Configure +++ b/Configure @@@ -20,7 -20,7 +20,7 @@@ # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $ # - # Generated on Wed Oct 21 12:24:45 EET DST 1998 [metaconfig 3.0 PL70] -# Generated on Wed Oct 14 17:00:29 EET DST 1998 [metaconfig 3.0 PL70] ++# Generated on Wed Oct 21 16:09:51 EET DST 1998 [metaconfig 3.0 PL70] # (with additional metaconfig patches by jhi@iki.fi) cat >/tmp/c1$$ <try.c < ++#include ++main() { ++#ifdef SCHED_YIELD ++ sched_yield(); ++#else ++#ifdef PTHREAD_YIELD ++ pthread_yield(); ++#else ++#ifdef PTHREAD_YIELD_NULL ++ pthread_yield(NULL); ++#endif ++#endif ++#endif ++} ++EOP ++: see if sched_yield exists ++set try -DSCHED_YIELD ++if eval $compile; then ++ val="$define" ++ sched_yield='sched_yield()' ++else ++ val="$undef" ++fi ++case "$usethreads" in ++$define) ++ case "$val" in ++ $define) echo 'sched_yield() found.' >&4 ;; ++ *) echo 'sched_yield() NOT found.' >&4 ;; ++ esac ++esac ++set d_sched_yield ++eval $setvar ++ ++: see if pthread_yield exists ++set try -DPTHREAD_YIELD ++if eval $compile; then ++ val="$define" ++ case "$sched_yield" in ++ '') sched_yield='pthread_yield()' ;; ++ esac ++else ++ set try -DPTHREAD_YIELD_NULL ++ if eval $compile; then ++ val="$define" ++ case "$sched_yield" in ++ '') sched_yield='pthread_yield(NULL)' ;; ++ esac ++ else ++ val="$undef" ++ fi ++fi ++case "$usethreads" in ++$define) ++ case "$val" in ++ $define) echo 'pthread_yield() found.' >&4 ;; ++ *) echo 'pthread_yield() NOT found.' >&4 ;; ++ esac ++ ;; ++esac ++set d_pthread_yield ++eval $setvar ++ ++case "$sched_yield" in ++'') sched_yield=undef ;; ++esac ++ ++$rm -f try try.* ++ : test whether pthreads are created in joinable -- aka undetached -- state if test "X$usethreads" = "X$define"; then echo $n "Checking whether pthreads are created joinable. $c" >&4 @@@ -10603,78 -10632,69 +10675,6 @@@ els fi $rm -f foo* bar* -- - : see whether the various POSIXish _yields exist - $cat >try.c < - #include - main() { - #ifdef SCHED_YIELD - sched_yield(); - #else - #ifdef PTHREAD_YIELD - pthread_yield(); - #else - #ifdef PTHREAD_YIELD_NULL - pthread_yield(NULL); - #endif - #endif - #endif - } - EOP - : see if sched_yield exists - set try -DSCHED_YIELD - if eval $compile; then - val="$define" - sched_yield='sched_yield()' - else - val="$undef" - fi - case "$usethreads" in - $define) - case "$val" in - $define) echo 'sched_yield() found.' >&4 ;; - *) echo 'sched_yield() NOT found.' >&4 ;; - esac - esac - set d_sched_yield - eval $setvar - - : see if pthread_yield exists - set try -DPTHREAD_YIELD - if eval $compile; then - val="$define" - case "$sched_yield" in - '') sched_yield='pthread_yield()' ;; - esac - else - set try -DPTHREAD_YIELD_NULL - if eval $compile; then - val="$define" - case "$sched_yield" in - '') sched_yield='pthread_yield(NULL)' ;; - esac - else - val="$undef" - fi - fi - case "$usethreads" in - $define) - case "$val" in - $define) echo 'pthread_yield() found.' >&4 ;; - *) echo 'pthread_yield() NOT found.' >&4 ;; - esac - ;; - esac - set d_pthread_yield - eval $setvar - - case "$sched_yield" in - '') sched_yield=undef ;; - esac - - $rm -f try try.* - -: see whether the various POSIXish _yields exist within given cccmd -$cat >try.c < -#include -main() { -#ifdef SCHED_YIELD - sched_yield(); -#else -#ifdef PTHREAD_YIELD - pthread_yield(); -#else -#ifdef PTHREAD_YIELD_NULL - pthread_yield(NULL); -#endif -#endif -#endif -} -EOP -: see if sched_yield exists -set try -DSCHED_YIELD -if eval $compile; then - val="$define" - echo 'sched_yield() found.' >&4 - sched_yield='sched_yield()' -else - val="$undef" - echo 'sched_yield() NOT found.' >&4 -fi -set d_sched_yield -eval $setvar - -: see if pthread_yield exists -set try -DPTHREAD_YIELD -if eval $compile; then - val="$define" - case "$sched_yield" in - '') sched_yield='pthread_yield()' ;; - esac -else - set try -DPTHREAD_YIELD_NULL - if eval $compile; then - val="$define" - case "$sched_yield" in - '') sched_yield='pthread_yield(NULL)' ;; - esac - else - val="$undef" - fi -fi -case "$val" in -$define) echo 'pthread_yield() found.' >&4 ;; -*) echo 'pthread_yield() NOT found.' >&4 ;; -esac -set d_pthread_yield -eval $setvar - -case "$sched_yield" in -'') sched_yield=undef ;; -esac - -$rm -f try try.* - : see if sys/select.h has to be included set sys/select.h i_sysselct eval $inhdr @@@ -11319,1514 -11339,1515 +11319,4 @@@ case "$d_dbmclose" i $define) set dbm.h i_dbm eval $inhdr -- case "$i_dbm" in -- $define) -- val="$undef" -- set i_rpcsvcdbm -- eval $setvar -- ;; -- *) set rpcsvc/dbm.h i_rpcsvcdbm -- eval $inhdr -- ;; -- esac -- ;; --*) echo "We won't be including " -- val="$undef" -- set i_dbm -- eval $setvar -- val="$undef" -- set i_rpcsvcdbm -- eval $setvar -- ;; --esac -- --: see if this is a sys/file.h system --val='' --set sys/file.h val --eval $inhdr -- --: do we need to include sys/file.h ? --case "$val" in --"$define") -- echo " " -- if $h_sysfile; then -- val="$define" -- echo "We'll be including ." >&4 -- else -- val="$undef" -- echo "We won't be including ." >&4 -- fi -- ;; --*) -- h_sysfile=false -- ;; --esac --set i_sysfile --eval $setvar -- --: see if fcntl.h is there --val='' --set fcntl.h val --eval $inhdr -- --: see if we can include fcntl.h --case "$val" in --"$define") -- echo " " -- if $h_fcntl; then -- val="$define" -- echo "We'll be including ." >&4 -- else -- val="$undef" -- if $h_sysfile; then -- echo "We don't need to include if we include ." >&4 -- else -- echo "We won't be including ." >&4 -- fi -- fi -- ;; --*) -- h_fcntl=false -- val="$undef" -- ;; --esac --set i_fcntl --eval $setvar -- --: see if locale.h is available --set locale.h i_locale --eval $inhdr -- --: see if this is a math.h system --set math.h i_math --eval $inhdr -- --: see if ndbm.h is available --set ndbm.h t_ndbm --eval $inhdr --case "$t_ndbm" in --$define) -- : see if dbm_open exists -- set dbm_open d_dbm_open -- eval $inlibc -- case "$d_dbm_open" in -- $undef) -- t_ndbm="$undef" -- echo "We won't be including " -- ;; -- esac -- ;; --esac --val="$t_ndbm" --set i_ndbm --eval $setvar -- --: see if net/errno.h is available --val='' --set net/errno.h val --eval $inhdr -- --: Unfortunately, it causes problems on some systems. Arrgh. --case "$val" in --$define) -- cat > try.c <<'EOM' --#include --#include --#include --int func() --{ -- return ENOTSOCK; --} --EOM -- if $cc $ccflags -c try.c >/dev/null 2>&1; then -- echo "We'll be including ." >&4 -- else -- echo "We won't be including ." >&4 -- val="$undef" -- fi -- $rm -f try.* try -- ;; --esac --set i_neterrno --eval $setvar -- --: get C preprocessor symbols handy --echo " " --$echo $n "Hmm... $c" --echo $al | $tr ' ' $trnl >Cppsym.know --$cat <Cppsym --$startsh --case "\$1" in ---l) list=true -- shift -- ;; --esac --unknown='' --case "\$list\$#" in --1|2) -- for sym do -- if $contains "^\$1$" Cppsym.true >/dev/null 2>&1; then -- exit 0 -- elif $contains "^\$1$" Cppsym.know >/dev/null 2>&1; then -- : -- else -- unknown="\$unknown \$sym" -- fi -- done -- set X \$unknown -- shift -- ;; --esac --case \$# in --0) exit 1;; --esac --echo \$* | $tr ' ' '$trnl' | $sed -e 's/\(.*\)/\\ --#ifdef \1\\ --exit 0; _ _ _ _\1\\ \1\\ --#endif\\ --/' >Cppsym\$\$ --echo "exit 1; _ _ _" >>Cppsym\$\$ --$cppstdin $cppminus Cppsym2\$\$ --case "\$list" in --true) $awk 'NF > 5 {print substr(\$6,2,100)}' Cppsym.true -- --: now check the C compiler for additional symbols --$cat >ccsym <tmp.c <&1\` --do -- case "\$i" in -- -D*) echo "\$i" | $sed 's/^-D//';; -- -A*) $test "$gccversion" && echo "\$i" | $sed 's/^-A\(.*\)(\(.*\))/\1=\2/';; -- esac --done --$rm -f try.c --EOS --chmod +x ccsym --$eunicefix ccsym --./ccsym > ccsym1.raw --if $test -s ccsym1.raw; then -- $sort ccsym1.raw | $uniq >ccsym.raw --else -- mv ccsym1.raw ccsym.raw --fi -- --$awk '/\=/ { print $0; next } -- { print $0"=1" }' ccsym.raw >ccsym.list --$awk '{ print $0"=1" }' Cppsym.true >ccsym.true --$comm -13 ccsym.true ccsym.list >ccsym.own --$comm -12 ccsym.true ccsym.list >ccsym.com --$comm -23 ccsym.true ccsym.list >ccsym.cpp --also='' --symbols='symbols' --if $test -z ccsym.raw; then -- echo "Your C compiler doesn't seem to define any symbol!" >&4 -- echo " " -- echo "However, your C preprocessor defines the following ones:" -- $cat Cppsym.true --else -- if $test -s ccsym.com; then -- echo "Your C compiler and pre-processor define these symbols:" -- $sed -e 's/\(.*\)=.*/\1/' ccsym.com -- also='also ' -- symbols='ones' -- $test "$silent" || sleep 1 -- fi -- if $test -s ccsym.cpp; then -- $test "$also" && echo " " -- echo "Your C pre-processor ${also}defines the following $symbols:" -- $sed -e 's/\(.*\)=.*/\1/' ccsym.cpp -- also='further ' -- $test "$silent" || sleep 1 -- fi -- if $test -s ccsym.own; then -- $test "$also" && echo " " -- echo "Your C compiler ${also}defines the following cpp variables:" -- $sed -e 's/\(.*\)=1/\1/' ccsym.own -- $sed -e 's/\(.*\)=.*/\1/' ccsym.own | $uniq >>Cppsym.true -- $test "$silent" || sleep 1 -- fi --fi --$rm -f ccsym* -- --: see if this is a termio system --val="$undef" --val2="$undef" --val3="$undef" --if $test `./findhdr termios.h`; then -- set tcsetattr i_termios -- eval $inlibc -- val3="$i_termios" --fi --echo " " --case "$val3" in --"$define") echo "You have POSIX termios.h... good!" >&4;; --*) if ./Cppsym pyr; then -- case "`/bin/universe`" in -- ucb) if $test `./findhdr sgtty.h`; then -- val2="$define" -- echo " found." >&4 -- else -- echo "System is pyramid with BSD universe." -- echo " not found--you could have problems." >&4 -- fi;; -- *) if $test `./findhdr termio.h`; then -- val="$define" -- echo " found." >&4 -- else -- echo "System is pyramid with USG universe." -- echo " not found--you could have problems." >&4 -- fi;; -- esac -- elif ./usg; then -- if $test `./findhdr termio.h`; then -- echo " found." >&4 -- val="$define" -- elif $test `./findhdr sgtty.h`; then -- echo " found." >&4 -- val2="$define" -- else --echo "Neither nor found--you could have problems." >&4 -- fi -- else -- if $test `./findhdr sgtty.h`; then -- echo " found." >&4 -- val2="$define" -- elif $test `./findhdr termio.h`; then -- echo " found." >&4 -- val="$define" -- else --echo "Neither nor found--you could have problems." >&4 -- fi -- fi;; --esac --set i_termio; eval $setvar --val=$val2; set i_sgtty; eval $setvar --val=$val3; set i_termios; eval $setvar -- --: see if stdarg is available --echo " " --if $test `./findhdr stdarg.h`; then -- echo " found." >&4 -- valstd="$define" --else -- echo " NOT found." >&4 -- valstd="$undef" --fi -- --: see if varags is available --echo " " --if $test `./findhdr varargs.h`; then -- echo " found." >&4 --else -- echo " NOT found, but that's ok (I hope)." >&4 --fi -- --: set up the varargs testing programs --$cat > varargs.c < --#endif --#ifdef I_VARARGS --#include --#endif -- --#ifdef I_STDARG --int f(char *p, ...) --#else --int f(va_alist) --va_dcl --#endif --{ -- va_list ap; --#ifndef I_STDARG -- char *p; --#endif --#ifdef I_STDARG -- va_start(ap,p); --#else -- va_start(ap); -- p = va_arg(ap, char *); --#endif -- va_end(ap); --} --EOP --$cat > varargs </dev/null 2>&1; then -- echo "true" --else -- echo "false" --fi --$rm -f varargs$_o --EOP --chmod +x varargs -- --: now check which varargs header should be included --echo " " --i_varhdr='' --case "$valstd" in --"$define") -- if `./varargs I_STDARG`; then -- val='stdarg.h' -- elif `./varargs I_VARARGS`; then -- val='varargs.h' -- fi -- ;; --*) -- if `./varargs I_VARARGS`; then -- val='varargs.h' -- fi -- ;; --esac --case "$val" in --'') --echo "I could not find the definition for va_dcl... You have problems..." >&4 -- val="$undef"; set i_stdarg; eval $setvar -- val="$undef"; set i_varargs; eval $setvar -- ;; --*) -- set i_varhdr -- eval $setvar -- case "$i_varhdr" in -- stdarg.h) -- val="$define"; set i_stdarg; eval $setvar -- val="$undef"; set i_varargs; eval $setvar -- ;; -- varargs.h) -- val="$undef"; set i_stdarg; eval $setvar -- val="$define"; set i_varargs; eval $setvar -- ;; -- esac -- echo "We'll include <$i_varhdr> to get va_dcl definition." >&4;; --esac --$rm -f varargs* -- --: see if stddef is available --set stddef.h i_stddef --eval $inhdr -- --: see if sys/access.h is available --set sys/access.h i_sysaccess --eval $inhdr -- --: see if ioctl defs are in sgtty, termio, sys/filio or sys/ioctl --set sys/filio.h i_sysfilio --eval $inhdr --echo " " --if $test `./findhdr sys/ioctl.h`; then -- val="$define" -- echo ' found.' >&4 --else -- val="$undef" -- if $test $i_sysfilio = "$define"; then -- echo ' NOT found.' >&4 -- else -- $test $i_sgtty = "$define" && xxx="sgtty.h" -- $test $i_termio = "$define" && xxx="termio.h" -- $test $i_termios = "$define" && xxx="termios.h" --echo "No found, assuming ioctl args are defined in <$xxx>." >&4 -- fi --fi --set i_sysioctl --eval $setvar -- --: see if this is a sys/param system --set sys/param.h i_sysparam --eval $inhdr -- --: see if sys/resource.h has to be included --set sys/resource.h i_sysresrc --eval $inhdr -- --: see if sys/security.h is available --set sys/security.h i_syssecrt --eval $inhdr -- --: see if this is a sys/un.h system --set sys/un.h i_sysun --eval $inhdr -- --: see if this is a syswait system --set sys/wait.h i_syswait --eval $inhdr -- --: see if this is an utime system --set utime.h i_utime --eval $inhdr -- --: see if this is a values.h system --set values.h i_values --eval $inhdr -- --: see if this is a vfork system --case "$d_vfork" in --"$define") -- set vfork.h i_vfork -- eval $inhdr -- ;; --*) -- i_vfork="$undef" -- ;; --esac -- --: see if gdbm.h is available --set gdbm.h t_gdbm --eval $inhdr --case "$t_gdbm" in --$define) -- : see if gdbm_open exists -- set gdbm_open d_gdbm_open -- eval $inlibc -- case "$d_gdbm_open" in -- $undef) -- t_gdbm="$undef" -- echo "We won't be including " -- ;; -- esac -- ;; --esac --val="$t_gdbm" --set i_gdbm --eval $setvar -- --echo " " --echo "Looking for extensions..." >&4 --tdir=`pwd` --cd $rsrc/ext --: If we are using the old config.sh, known_extensions may contain --: old or inaccurate or duplicate values. --known_extensions='' --nonxs_extensions='' --: We do not use find because it might not be available. --: We do not just use MANIFEST because the user may have dropped --: some additional extensions into the source tree and expect them --: to be built. --for xxx in * ; do -- case "$xxx" in -- DynaLoader|dynaload) ;; -- *) if $test -f $xxx/$xxx.xs; then -- known_extensions="$known_extensions $xxx" -- elif $test -f $xxx/Makefile.PL; then -- nonxs_extensions="$nonxs_extensions $xxx" -- else -- if $test -d $xxx; then -- # Look for nested extensions, eg. Devel/Dprof. -- cd $xxx -- for yyy in * ; do -- if $test -f $yyy/$yyy.xs; then -- known_extensions="$known_extensions $xxx/$yyy" -- elif $test -f $yyy/Makefile.PL; then -- nonxs_extensions="$nonxs_extensions $xxx/$yyy" -- fi -- done -- cd .. -- fi -- fi -- ;; -- esac --done --set X $nonxs_extensions --shift --nonxs_extensions="$*" --set X $known_extensions --shift --known_extensions="$*" --cd $tdir -- --: Now see which are supported on this system. --avail_ext='' --for xxx in $known_extensions ; do -- case "$xxx" in -- DB_File|db_file) -- case "$i_db" in -- $define) avail_ext="$avail_ext $xxx" ;; -- esac -- ;; -- GDBM_File|gdbm_fil) -- case "$i_gdbm" in -- $define) avail_ext="$avail_ext $xxx" ;; -- esac -- ;; -- NDBM_File|ndbm_fil) -- case "$i_ndbm" in -- $define) avail_ext="$avail_ext $xxx" ;; -- esac -- ;; -- ODBM_File|odbm_fil) -- case "${i_dbm}${i_rpcsvcdbm}" in -- *"${define}"*) avail_ext="$avail_ext $xxx" ;; -- esac -- ;; -- POSIX|posix) -- case "$useposix" in -- true|define|y) avail_ext="$avail_ext $xxx" ;; -- esac -- ;; -- Opcode|opcode) -- case "$useopcode" in -- true|define|y) avail_ext="$avail_ext $xxx" ;; -- esac -- ;; -- Socket|socket) -- case "$d_socket" in -- true|$define|y) avail_ext="$avail_ext $xxx" ;; -- esac -- ;; -- Thread|thread) -- case "$usethreads" in -- true|$define|y) avail_ext="$avail_ext $xxx" ;; -- esac -- ;; -- IPC/SysV|ipc/sysv) -- : XXX Do we need a useipcsysv variable here -- case "${d_msg}${d_sem}${d_shm}" in -- *"${define}"*) avail_ext="$avail_ext $xxx" ;; -- esac -- ;; -- *) avail_ext="$avail_ext $xxx" -- ;; -- esac --done -- --set X $avail_ext --shift --avail_ext="$*" -- --: Now see which nonxs extensions are supported on this system. --: For now assume all are. --nonxs_ext='' --for xxx in $nonxs_extensions ; do -- case "$xxx" in -- *) nonxs_ext="$nonxs_ext $xxx" -- ;; -- esac --done -- --set X $nonxs_ext --shift --nonxs_ext="$*" -- --case $usedl in --$define) -- $cat <&4 -- for file in $loclist $trylist; do -- if test X$file != Xln -a X$file != Xar -o X$osname != Xos2; then -- eval $file="\$file" -- fi -- done -- ;; --esac -- --: create config.sh file --echo " " --echo "Creating config.sh..." >&4 --$spitshell <config.sh --$startsh --# --# This file was produced by running the Configure script. It holds all the --# definitions figured out by Configure. Should you modify one of these values, --# do not forget to propagate your changes by running "Configure -der". You may --# instead choose to run each of the .SH files by yourself, or "Configure -S". --# -- --# Package name : $package --# Source directory : $src --# Configuration time: $cf_time --# Configured by : $cf_by --# Target system : $myuname -- --Author='$Author' --Date='$Date' --Header='$Header' --Id='$Id' --Locker='$Locker' --Log='$Log' --Mcc='$Mcc' --RCSfile='$RCSfile' --Revision='$Revision' --Source='$Source' --State='$State' --_a='$_a' --_exe='$_exe' --_o='$_o' --afs='$afs' --alignbytes='$alignbytes' --ansi2knr='$ansi2knr' --aphostname='$aphostname' --apiversion='$apiversion' --ar='$ar' --archlib='$archlib' --archlibexp='$archlibexp' --archname64='$archname64' --archname='$archname' --archobjs='$archobjs' --awk='$awk' --baserev='$baserev' --bash='$bash' --bin='$bin' --binexp='$binexp' --bison='$bison' --byacc='$byacc' --byteorder='$byteorder' --c='$c' --castflags='$castflags' --cat='$cat' --cc='$cc' --cccdlflags='$cccdlflags' --ccdlflags='$ccdlflags' --ccflags='$ccflags' --cf_by='$cf_by' --cf_email='$cf_email' --cf_time='$cf_time' --chgrp='$chgrp' --chmod='$chmod' --chown='$chown' --clocktype='$clocktype' --comm='$comm' --compress='$compress' --contains='$contains' --cp='$cp' --cpio='$cpio' --cpp='$cpp' --cpp_stuff='$cpp_stuff' --cppflags='$cppflags' --cpplast='$cpplast' --cppminus='$cppminus' --cpprun='$cpprun' --cppstdin='$cppstdin' --cryptlib='$cryptlib' --csh='$csh' --d_Gconvert='$d_Gconvert' --d_access='$d_access' --d_accessx='$d_accessx' --d_alarm='$d_alarm' --d_archlib='$d_archlib' --d_attribut='$d_attribut' --d_bcmp='$d_bcmp' --d_bcopy='$d_bcopy' --d_bsd='$d_bsd' --d_bsdgetpgrp='$d_bsdgetpgrp' --d_bsdsetpgrp='$d_bsdsetpgrp' --d_bzero='$d_bzero' --d_casti32='$d_casti32' --d_castneg='$d_castneg' --d_charvspr='$d_charvspr' --d_chown='$d_chown' --d_chroot='$d_chroot' --d_chsize='$d_chsize' --d_closedir='$d_closedir' --d_const='$d_const' --d_crypt='$d_crypt' --d_csh='$d_csh' --d_cuserid='$d_cuserid' --d_dbl_dig='$d_dbl_dig' --d_dbmclose64='$d_dbmclose64' --d_dbminit64='$d_dbminit64' --d_delete64='$d_delete64' --d_difftime='$d_difftime' --d_dirent64s='$d_dirent64s' --d_dirnamlen='$d_dirnamlen' --d_dlerror='$d_dlerror' --d_dlopen='$d_dlopen' --d_dlsymun='$d_dlsymun' --d_dosuid='$d_dosuid' --d_drand48proto='$d_drand48proto' --d_dup2='$d_dup2' --d_eaccess='$d_eaccess' --d_endgrent='$d_endgrent' --d_endhent='$d_endhent' --d_endnent='$d_endnent' --d_endpent='$d_endpent' --d_endpwent='$d_endpwent' --d_endsent='$d_endsent' --d_eofnblk='$d_eofnblk' --d_eunice='$d_eunice' --d_fchmod='$d_fchmod' --d_fchown='$d_fchown' --d_fcntl='$d_fcntl' --d_fd_macros='$d_fd_macros' --d_fd_set='$d_fd_set' --d_fds_bits='$d_fds_bits' --d_fetch64='$d_fetch64' --d_fgetpos64='$d_fgetpos64' --d_fgetpos='$d_fgetpos' --d_firstkey64='$d_firstkey64' --d_flexfnam='$d_flexfnam' --d_flock64s='$d_flock64s' --d_flock='$d_flock' --d_fopen64='$d_fopen64' --d_fork='$d_fork' --d_fpathconf='$d_fpathconf' --d_freopen64='$d_freopen64' --d_fseek64='$d_fseek64' --d_fseeko64='$d_fseeko64' --d_fseeko='$d_fseeko' --d_fsetpos64='$d_fsetpos64' --d_fsetpos='$d_fsetpos' --d_fstat64='$d_fstat64' --d_ftell64='$d_ftell64' --d_ftello64='$d_ftello64' --d_ftello='$d_ftello' --d_ftime='$d_ftime' --d_ftruncate64='$d_ftruncate64' --d_getgrent='$d_getgrent' --d_getgrps='$d_getgrps' --d_gethbyaddr='$d_gethbyaddr' --d_gethbyname='$d_gethbyname' --d_gethent='$d_gethent' --d_gethname='$d_gethname' --d_gethostprotos='$d_gethostprotos' --d_getlogin='$d_getlogin' --d_getnbyaddr='$d_getnbyaddr' --d_getnbyname='$d_getnbyname' --d_getnent='$d_getnent' --d_getnetprotos='$d_getnetprotos' --d_getpbyname='$d_getpbyname' --d_getpbynumber='$d_getpbynumber' --d_getpent='$d_getpent' --d_getpgid='$d_getpgid' --d_getpgrp2='$d_getpgrp2' --d_getpgrp='$d_getpgrp' --d_getppid='$d_getppid' --d_getprior='$d_getprior' --d_getprotoprotos='$d_getprotoprotos' --d_getpwent='$d_getpwent' --d_getsbyname='$d_getsbyname' --d_getsbyport='$d_getsbyport' --d_getsent='$d_getsent' --d_getservprotos='$d_getservprotos' --d_gettimeod='$d_gettimeod' --d_gnulibc='$d_gnulibc' --d_grpasswd='$d_grpasswd' --d_htonl='$d_htonl' --d_index='$d_index' --d_inetaton='$d_inetaton' --d_ino64t='$d_ino64t' --d_int64t='$d_int64t' --d_isascii='$d_isascii' --d_killpg='$d_killpg' --d_lchown='$d_lchown' --d_link='$d_link' --d_locconv='$d_locconv' --d_lockf64='$d_lockf64' --d_lockf='$d_lockf' --d_longdbl='$d_longdbl' --d_longlong='$d_longlong' --d_lseek64='$d_lseek64' --d_lstat64='$d_lstat64' --d_lstat='$d_lstat' --d_mblen='$d_mblen' --d_mbstowcs='$d_mbstowcs' --d_mbtowc='$d_mbtowc' --d_memcmp='$d_memcmp' --d_memcpy='$d_memcpy' --d_memmove='$d_memmove' --d_memset='$d_memset' --d_mkdir='$d_mkdir' --d_mkfifo='$d_mkfifo' --d_mktime='$d_mktime' --d_msg='$d_msg' --d_msgctl='$d_msgctl' --d_msgget='$d_msgget' --d_msgrcv='$d_msgrcv' --d_msgsnd='$d_msgsnd' --d_mymalloc='$d_mymalloc' --d_nextkey64='$d_nextkey64' --d_nice='$d_nice' --d_off64t='$d_off64t' --d_oldpthreads='$d_oldpthreads' --d_oldsock='$d_oldsock' --d_open3='$d_open3' --d_open64='$d_open64' --d_opendir64='$d_opendir64' --d_pathconf='$d_pathconf' --d_pause='$d_pause' --d_phostname='$d_phostname' --d_pipe='$d_pipe' --d_poll='$d_poll' --d_portable='$d_portable' --d_pthread_yield='$d_pthread_yield' --d_pthreads_created_joinable='$d_pthreads_created_joinable' --d_pwage='$d_pwage' --d_pwchange='$d_pwchange' --d_pwclass='$d_pwclass' --d_pwcomment='$d_pwcomment' --d_pwexpire='$d_pwexpire' --d_pwgecos='$d_pwgecos' --d_pwpasswd='$d_pwpasswd' --d_pwquota='$d_pwquota' --d_readdir64='$d_readdir64' --d_readdir='$d_readdir' --d_readlink='$d_readlink' --d_rename='$d_rename' --d_rewinddir='$d_rewinddir' --d_rmdir='$d_rmdir' --d_safebcpy='$d_safebcpy' --d_safemcpy='$d_safemcpy' --d_sanemcmp='$d_sanemcmp' --d_sched_yield='$d_sched_yield' --d_seekdir64='$d_seekdir64' --d_seekdir='$d_seekdir' --d_select='$d_select' --d_sem='$d_sem' --d_semctl='$d_semctl' --d_semctl_semid_ds='$d_semctl_semid_ds' --d_semctl_semun='$d_semctl_semun' --d_semget='$d_semget' --d_semop='$d_semop' --d_setegid='$d_setegid' --d_seteuid='$d_seteuid' --d_setgrent='$d_setgrent' --d_setgrps='$d_setgrps' --d_sethent='$d_sethent' --d_setlinebuf='$d_setlinebuf' --d_setlocale='$d_setlocale' --d_setnent='$d_setnent' --d_setpent='$d_setpent' --d_setpgid='$d_setpgid' --d_setpgrp2='$d_setpgrp2' --d_setpgrp='$d_setpgrp' --d_setprior='$d_setprior' --d_setpwent='$d_setpwent' --d_setregid='$d_setregid' --d_setresgid='$d_setresgid' --d_setresuid='$d_setresuid' --d_setreuid='$d_setreuid' --d_setrgid='$d_setrgid' --d_setruid='$d_setruid' --d_setsent='$d_setsent' --d_setsid='$d_setsid' --d_setvbuf='$d_setvbuf' --d_sfio='$d_sfio' --d_shm='$d_shm' --d_shmat='$d_shmat' --d_shmatprototype='$d_shmatprototype' --d_shmctl='$d_shmctl' --d_shmdt='$d_shmdt' --d_shmget='$d_shmget' --d_sigaction='$d_sigaction' --d_sigsetjmp='$d_sigsetjmp' --d_socket='$d_socket' --d_sockpair='$d_sockpair' --d_stat64='$d_stat64' --d_statblks='$d_statblks' --d_stdio_cnt_lval='$d_stdio_cnt_lval' --d_stdio_ptr_lval='$d_stdio_ptr_lval' --d_stdiobase='$d_stdiobase' --d_stdstdio='$d_stdstdio' --d_store64='$d_store64' --d_strchr='$d_strchr' --d_strcoll='$d_strcoll' --d_strctcpy='$d_strctcpy' --d_strerrm='$d_strerrm' --d_strerror='$d_strerror' --d_strtod='$d_strtod' --d_strtol='$d_strtol' --d_strtoul='$d_strtoul' --d_strxfrm='$d_strxfrm' --d_suidsafe='$d_suidsafe' --d_symlink='$d_symlink' --d_syscall='$d_syscall' --d_sysconf='$d_sysconf' --d_sysernlst='$d_sysernlst' --d_syserrlst='$d_syserrlst' --d_system='$d_system' --d_tcgetpgrp='$d_tcgetpgrp' --d_tcsetpgrp='$d_tcsetpgrp' --d_telldir64='$d_telldir64' --d_telldir='$d_telldir' --d_time='$d_time' --d_times='$d_times' --d_tmpfile64='$d_tmpfile64' --d_truncate64='$d_truncate64' --d_truncate='$d_truncate' --d_tzname='$d_tzname' --d_umask='$d_umask' --d_uname='$d_uname' --d_union_semun='$d_union_semun' --d_vfork='$d_vfork' --d_void_closedir='$d_void_closedir' --d_voidsig='$d_voidsig' --d_voidtty='$d_voidtty' --d_volatile='$d_volatile' --d_vprintf='$d_vprintf' --d_wait4='$d_wait4' --d_waitpid='$d_waitpid' --d_wcstombs='$d_wcstombs' --d_wctomb='$d_wctomb' --d_xenix='$d_xenix' --date='$date' --db_hashtype='$db_hashtype' --db_prefixtype='$db_prefixtype' --defvoidused='$defvoidused' --direntrytype='$direntrytype' --dlext='$dlext' --dlsrc='$dlsrc' --doublesize='$doublesize' --drand01='$drand01' --dynamic_ext='$dynamic_ext' --eagain='$eagain' --ebcdic='$ebcdic' --echo='$echo' --egrep='$egrep' --emacs='$emacs' --eunicefix='$eunicefix' --exe_ext='$exe_ext' --expr='$expr' --extensions='$extensions' --find='$find' --firstmakefile='$firstmakefile' --flex='$flex' --fpostype='$fpostype' --freetype='$freetype' --full_csh='$full_csh' --full_sed='$full_sed' --gccversion='$gccversion' --gidtype='$gidtype' --glibpth='$glibpth' --grep='$grep' --groupcat='$groupcat' --groupstype='$groupstype' --gzip='$gzip' --h_fcntl='$h_fcntl' --h_sysfile='$h_sysfile' --hint='$hint' --hostcat='$hostcat' --huge='$huge' --i_arpainet='$i_arpainet' --i_bsdioctl='$i_bsdioctl' --i_db='$i_db' --i_dbm='$i_dbm' --i_dirent='$i_dirent' --i_dld='$i_dld' --i_dlfcn='$i_dlfcn' --i_fcntl='$i_fcntl' --i_float='$i_float' --i_gdbm='$i_gdbm' --i_grp='$i_grp' --i_inttypes='$i_inttypes' --i_limits='$i_limits' --i_locale='$i_locale' --i_malloc='$i_malloc' --i_math='$i_math' --i_memory='$i_memory' --i_ndbm='$i_ndbm' --i_netdb='$i_netdb' --i_neterrno='$i_neterrno' --i_niin='$i_niin' --i_pwd='$i_pwd' --i_rpcsvcdbm='$i_rpcsvcdbm' --i_sfio='$i_sfio' --i_sgtty='$i_sgtty' --i_stdarg='$i_stdarg' --i_stddef='$i_stddef' --i_stdlib='$i_stdlib' --i_string='$i_string' --i_sysaccess='$i_sysaccess' --i_sysdir='$i_sysdir' --i_sysfile='$i_sysfile' --i_sysfilio='$i_sysfilio' --i_sysin='$i_sysin' --i_sysioctl='$i_sysioctl' --i_sysndir='$i_sysndir' --i_sysparam='$i_sysparam' --i_sysresrc='$i_sysresrc' --i_syssecrt='$i_syssecrt' --i_sysselct='$i_sysselct' --i_syssockio='$i_syssockio' --i_sysstat='$i_sysstat' --i_systime='$i_systime' --i_systimek='$i_systimek' --i_systimes='$i_systimes' --i_systypes='$i_systypes' --i_sysun='$i_sysun' --i_syswait='$i_syswait' --i_termio='$i_termio' --i_termios='$i_termios' --i_time='$i_time' --i_unistd='$i_unistd' --i_utime='$i_utime' --i_values='$i_values' --i_varargs='$i_varargs' --i_varhdr='$i_varhdr' --i_vfork='$i_vfork' --ignore_versioned_solibs='$ignore_versioned_solibs' --incpath='$incpath' --inews='$inews' --installarchlib='$installarchlib' --installbin='$installbin' --installman1dir='$installman1dir' --installman3dir='$installman3dir' --installprivlib='$installprivlib' --installscript='$installscript' --installsitearch='$installsitearch' --installsitelib='$installsitelib' --intsize='$intsize' --known_extensions='$known_extensions' --ksh='$ksh' --large='$large' --ld='$ld' --lddlflags='$lddlflags' --ldflags='$ldflags' --less='$less' --lib_ext='$lib_ext' --libc='$libc' --libperl='$libperl' --libpth='$libpth' --libs='$libs' --libswanted='$libswanted' --line='$line' --lint='$lint' --lkflags='$lkflags' --ln='$ln' --lns='$lns' --locincpth='$locincpth' --loclibpth='$loclibpth' --longdblsize='$longdblsize' --longlongsize='$longlongsize' --longsize='$longsize' --lp='$lp' --lpr='$lpr' --ls='$ls' --lseeksize='$lseeksize' --lseektype='$lseektype' --mail='$mail' --mailx='$mailx' --make='$make' --make_set_make='$make_set_make' --mallocobj='$mallocobj' --mallocsrc='$mallocsrc' --malloctype='$malloctype' --man1dir='$man1dir' --man1direxp='$man1direxp' --man1ext='$man1ext' --man3dir='$man3dir' --man3direxp='$man3direxp' --man3ext='$man3ext' --medium='$medium' --mips='$mips' --mips_type='$mips_type' --mkdir='$mkdir' --models='$models' --modetype='$modetype' --more='$more' --mv='$mv' --myarchname='$myarchname' --mydomain='$mydomain' --myhostname='$myhostname' --myuname='$myuname' --n='$n' --netdb_hlen_type='$netdb_hlen_type' --netdb_host_type='$netdb_host_type' --netdb_name_type='$netdb_name_type' --netdb_net_type='$netdb_net_type' --nm='$nm' --nm_opt='$nm_opt' --nm_so_opt='$nm_so_opt' --nonxs_ext='$nonxs_ext' --nroff='$nroff' --o_nonblock='$o_nonblock' --obj_ext='$obj_ext' --optimize='$optimize' --orderlib='$orderlib' --osname='$osname' --osvers='$osvers' --package='$package' --pager='$pager' --passcat='$passcat' --patchlevel='$patchlevel' --path_sep='$path_sep' --perl='$perl' --perladmin='$perladmin' --perlpath='$perlpath' --pg='$pg' --phostname='$phostname' --pidtype='$pidtype' --plibpth='$plibpth' --pmake='$pmake' --pr='$pr' --prefix='$prefix' --prefixexp='$prefixexp' --privlib='$privlib' --privlibexp='$privlibexp' --prototype='$prototype' - ptrsize='$ptrsize' - randbits='$randbits' - randfunc='$randfunc' - randseedtype='$randseedtype' - ranlib='$ranlib' - rd_nodata='$rd_nodata' - rm='$rm' - rmail='$rmail' - runnm='$runnm' - sched_yield='$sched_yield' - scriptdir='$scriptdir' - scriptdirexp='$scriptdirexp' - sed='$sed' - seedfunc='$seedfunc' - selectminbits='$selectminbits' - selecttype='$selecttype' - sendmail='$sendmail' - sh='$sh' - shar='$shar' - sharpbang='$sharpbang' - shmattype='$shmattype' - shortsize='$shortsize' - shrpenv='$shrpenv' - shsharp='$shsharp' - sig_name='$sig_name' - sig_name_init='$sig_name_init' - sig_num='$sig_num' - signal_t='$signal_t' - sitearch='$sitearch' - sitearchexp='$sitearchexp' - sitelib='$sitelib' - sitelibexp='$sitelibexp' - sizetype='$sizetype' - sleep='$sleep' - smail='$smail' - small='$small' - so='$so' - sockethdr='$sockethdr' - socketlib='$socketlib' - sort='$sort' - spackage='$spackage' - spitshell='$spitshell' - split='$split' - src='$src' - ssizetype='$ssizetype' - startperl='$startperl' - startsh='$startsh' - static_ext='$static_ext' - stdchar='$stdchar' - stdio_base='$stdio_base' - stdio_bufsiz='$stdio_bufsiz' - stdio_cnt='$stdio_cnt' - stdio_filbuf='$stdio_filbuf' - stdio_ptr='$stdio_ptr' - strings='$strings' - submit='$submit' - subversion='$subversion' - sysman='$sysman' - tail='$tail' - tar='$tar' - tbl='$tbl' - tee='$tee' - test='$test' - timeincl='$timeincl' - timetype='$timetype' - touch='$touch' - tr='$tr' - trnl='$trnl' - troff='$troff' - uidtype='$uidtype' - uname='$uname' - uniq='$uniq' - use64bits='$use64bits' - usedl='$usedl' - usemultiplicity='$usemultiplicity' - usemymalloc='$usemymalloc' - usenm='$usenm' - useopcode='$useopcode' - useperlio='$useperlio' - useposix='$useposix' - usesfio='$usesfio' - useshrplib='$useshrplib' - usethreads='$usethreads' - usevfork='$usevfork' - usrinc='$usrinc' - uuname='$uuname' - version='$version' - vi='$vi' - voidflags='$voidflags' - xlibpth='$xlibpth' - zcat='$zcat' - zip='$zip' - EOT - - : Add in command line options if available - $test -f UU/cmdline.opt && $cat UU/cmdline.opt >> config.sh - - : add special variables - $test -f $src/patchlevel.h && \ - awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/patchlevel.h >>config.sh - echo "CONFIG=true" >>config.sh - - : propagate old symbols - if $test -f UU/config.sh; then - UU/oldconfig.sh - sed -n 's/^\([a-zA-Z_0-9]*\)=.*/\1/p' config.sh config.sh UU/oldconfig.sh |\ - sort | uniq -u >UU/oldsyms - set X `cat UU/oldsyms` - shift - case $# in - 0) ;; - *) - cat <>config.sh - for sym in `cat UU/oldsyms`; do - echo " Propagating $hint variable "'$'"$sym..." - eval 'tmp="$'"${sym}"'"' - echo "$tmp" | \ - sed -e "s/'/'\"'\"'/g" -e "s/^/$sym='/" -e "s/$/'/" >>config.sh - done - ;; - esac - fi - - : Finish up by extracting the .SH files - case "$alldone" in - exit) - $rm -rf UU - echo "Done." - exit 0 - ;; - cont) - ;; - '') - dflt='' - nostick=true - $cat <&4 -c "$ans";; - esac - ;; - esac - - : if this fails, just run all the .SH files by hand - . ./config.sh - - echo " " - exec 1>&4 - . ./UU/extract - - if $contains '^depend:' [Mm]akefile >/dev/null 2>&1; then - dflt=y - case "$silent" in - true) ;; - *) - $cat < makedepend.out &" - It can take a while, so you might not want to run it right now. - - EOM - ;; - esac - rp="Run $make depend now?" - . UU/myread - case "$ans" in - y*) - $make depend && echo "Now you must run a $make." - ;; - *) - echo "You must run '$make depend' then '$make'." - ;; - esac - elif test -f [Mm]akefile; then - echo " " - echo "Now you must run a $make." - else - echo "Done." - fi - - if $test -f Policy.sh; then - $cat <&4 - $rm -f config.msg - fi - $rm -f kit*isdone ark*isdone - $rm -rf UU - - : End of Configure - -pthread_setdetachstate_pointer='$pthread_setdetachstate_pointer' -ptrsize='$ptrsize' -randbits='$randbits' -randfunc='$randfunc' -randseedtype='$randseedtype' -ranlib='$ranlib' -rd_nodata='$rd_nodata' -rm='$rm' -rmail='$rmail' -runnm='$runnm' -sched_yield='$sched_yield' -scriptdir='$scriptdir' -scriptdirexp='$scriptdirexp' -sed='$sed' -seedfunc='$seedfunc' -selectminbits='$selectminbits' -selecttype='$selecttype' -sendmail='$sendmail' -sh='$sh' -shar='$shar' -sharpbang='$sharpbang' -shmattype='$shmattype' -shortsize='$shortsize' -shrpenv='$shrpenv' -shsharp='$shsharp' -sig_name='$sig_name' -sig_name_init='$sig_name_init' -sig_num='$sig_num' -signal_t='$signal_t' -sitearch='$sitearch' -sitearchexp='$sitearchexp' -sitelib='$sitelib' -sitelibexp='$sitelibexp' -sizetype='$sizetype' -sleep='$sleep' -smail='$smail' -small='$small' -so='$so' -sockethdr='$sockethdr' -socketlib='$socketlib' -sort='$sort' -spackage='$spackage' -spitshell='$spitshell' -split='$split' -src='$src' -ssizetype='$ssizetype' -startperl='$startperl' -startsh='$startsh' -static_ext='$static_ext' -stdchar='$stdchar' -stdio_base='$stdio_base' -stdio_bufsiz='$stdio_bufsiz' -stdio_cnt='$stdio_cnt' -stdio_filbuf='$stdio_filbuf' -stdio_ptr='$stdio_ptr' -strings='$strings' -submit='$submit' -subversion='$subversion' -sysman='$sysman' -tail='$tail' -tar='$tar' -tbl='$tbl' -tee='$tee' -test='$test' -timeincl='$timeincl' -timetype='$timetype' -touch='$touch' -tr='$tr' -trnl='$trnl' -troff='$troff' -uidtype='$uidtype' -uname='$uname' -uniq='$uniq' -use64bits='$use64bits' -usedl='$usedl' -usemultiplicity='$usemultiplicity' -usemymalloc='$usemymalloc' -usenm='$usenm' -useopcode='$useopcode' -useperlio='$useperlio' -useposix='$useposix' -usesfio='$usesfio' -useshrplib='$useshrplib' -usethreads='$usethreads' -usevfork='$usevfork' -usrinc='$usrinc' -uuname='$uuname' -version='$version' -vi='$vi' -voidflags='$voidflags' -xlibpth='$xlibpth' -zcat='$zcat' -zip='$zip' -EOT - -: Add in command line options if available -$test -f UU/cmdline.opt && $cat UU/cmdline.opt >> config.sh - -: add special variables -$test -f $src/patchlevel.h && \ -awk '/^#define/ {printf "%s=%s\n",$2,$3}' $src/patchlevel.h >>config.sh -echo "CONFIG=true" >>config.sh - -: propagate old symbols -if $test -f UU/config.sh; then - UU/oldconfig.sh - sed -n 's/^\([a-zA-Z_0-9]*\)=.*/\1/p' config.sh config.sh UU/oldconfig.sh |\ - sort | uniq -u >UU/oldsyms - set X `cat UU/oldsyms` - shift - case $# in - 0) ;; - *) - cat <>config.sh - for sym in `cat UU/oldsyms`; do - echo " Propagating $hint variable "'$'"$sym..." - eval 'tmp="$'"${sym}"'"' - echo "$tmp" | \ - sed -e "s/'/'\"'\"'/g" -e "s/^/$sym='/" -e "s/$/'/" >>config.sh - done - ;; - esac -fi - -: Finish up by extracting the .SH files -case "$alldone" in -exit) - $rm -rf UU - echo "Done." - exit 0 - ;; -cont) - ;; -'') - dflt='' - nostick=true - $cat <&4 -c "$ans";; - esac - ;; -esac - -: if this fails, just run all the .SH files by hand -. ./config.sh - -echo " " -exec 1>&4 -. ./UU/extract - -if $contains '^depend:' [Mm]akefile >/dev/null 2>&1; then - dflt=y - case "$silent" in - true) ;; - *) - $cat < makedepend.out &" -It can take a while, so you might not want to run it right now. - -EOM - ;; - esac - rp="Run $make depend now?" - . UU/myread - case "$ans" in - y*) - $make depend && echo "Now you must run a $make." - ;; - *) - echo "You must run '$make depend' then '$make'." - ;; - esac -elif test -f [Mm]akefile; then - echo " " - echo "Now you must run a $make." -else - echo "Done." -fi - -if $test -f Policy.sh; then - $cat <&4 - $rm -f config.msg -fi -$rm -f kit*isdone ark*isdone -$rm -rf UU - -: End of Configure - ++ case "$i_dbm" diff --cc config_h.SH index b9db158,5dc8c3f..264c54d --- a/config_h.SH +++ b/config_h.SH @@@ -2267,12 -2267,12 +2267,24 @@@ sed <config.h -e 's!^#und */ #define ARCHNAME "$archname" /**/ ++/* HAS_PTHREAD_YIELD: ++ * This symbol, if defined, indicates that the pthread_yield ++ * routine is available to yield the execution of the current ++ * thread. sched_yield is preferable to pthread_yield. ++ */ /* SCHED_YIELD: * This symbol defines the way to yield the execution of * the current thread. Known ways are sched_yield, * pthread_yield, and pthread_yield with NULL. */ ++/* HAS_SCHED_YIELD: ++ * This symbol, if defined, indicates that the sched_yield ++ * routine is available to yield the execution of the current ++ * thread. sched_yield is preferable to pthread_yield. ++ */ ++#$d_pthread_yield HAS_PTHREAD_YIELD /**/ #define SCHED_YIELD $sched_yield /**/ ++#$d_sched_yield HAS_SCHED_YIELD /**/ /* PTHREADS_CREATED_JOINABLE: * This symbol, if defined, indicates that pthreads are created