X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=hints%2Fbsdos.sh;h=58755434a38596c0207d43c4fd3410aab9383e7c;hb=ba979b3106a5e7f3b2512d1f4e93c681fba7aa9f;hp=7c7c6e95659039f0beb54be0dd6716e0e5254d09;hpb=a2588af84bd7b02739e555a57fc16abf9c90d24f;p=p5sagit%2Fp5-mst-13.2.git diff --git a/hints/bsdos.sh b/hints/bsdos.sh index 7c7c6e9..5875543 100644 --- a/hints/bsdos.sh +++ b/hints/bsdos.sh @@ -3,8 +3,12 @@ # hints file for BSD/OS (adapted from bsd386.sh) # Original by Neil Bowers ; Tue Oct 4 12:01:34 EDT 1994 # Updated by Tony Sanders ; Sat Aug 23 12:47:45 MDT 1997 -# Added 3.1 with ELF dynamic libraries -# SYSV IPC tested Ok so I re-enabled. +# Added 3.1 with ELF dynamic libraries (NOT in 3.1 yet. +# Estimated for 4.0) SYSV IPC tested Ok so I re-enabled. +# +# Updated to work in post-4.0 by Todd C. Miller +# +# Updated for threads by "Timur I. Bakeyev" # # To override the compiler on the command line: # ./Configure -Dcc=gcc2 @@ -18,7 +22,7 @@ d_voidsig='define' usemymalloc='n' # setre?[ug]id() have been replaced by the _POSIX_SAVED_IDS versions. -# See http://www.bsdi.com/bsdi-man?setuid(2) +# See http://www.bsdi.com/bsdi-man?setuid(2) d_setregid='undef' d_setreuid='undef' d_setrgid='undef' @@ -33,9 +37,6 @@ libswanted="$*" glibpth="$glibpth /usr/X11/lib" ldflags="$ldflags -L/usr/X11/lib" -# Avoid telldir prototype conflict in pp_sys.c -pp_sys_cflags='ccflags="$ccflags -DHAS_TELLDIR_PROTOTYPE"' - case "$optimize" in '') optimize='-O2' ;; esac @@ -88,4 +89,43 @@ case "$osvers" in libswanted="Xpm Xaw Xmu Xt SM ICE Xext X11 $libswanted" libswanted="rpc curses termcap $libswanted" ;; +4.*) + # ELF dynamic link libraries starting in 4.0 + useshrplib='true' + so='so' + dlext='so' + + case "$cc" in + '') cc='cc' # cc is gcc2 in 4.0 + cccdlflags="-fPIC" + ccdlflags="-rdynamic -Wl,-rpath,$privlib/$archname/CORE" + ;; + esac + + case "$ld" in + '') ld='ld' + lddlflags="-shared -x $lddlflags" ;; + esac + # Due usage of static pointer from crt.o + libswanted="util $libswanted" ;; +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]*) + case "$osvers" in + 3.*|4.*) ccflags="-D_REENTRANT $ccflags" + ;; + *) cat <&4 +I did not know that BSD/OS $osvers supports POSIX threads. + +Feel free to tell perlbug@perl.org otherwise. +EOM + exit 1 + ;; + esac + ;; esac +EOCBU