Front page | perl.perl5.porters |
Postings from January 2003
[perl #20606] [no subject]
Thread Next
From:
Todd C. Miller
Date:
January 29, 2003 19:44
Subject:
[perl #20606] [no subject]
Message ID:
rt-20606-49879.4.78874436094841@bugs6.perl.org
# New Ticket Created by "Todd C. Miller"
# Please include the string: [perl #20606]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt2/Ticket/Display.html?id=20606 >
~s OpenBSD hints file update
This is a bug report for perl from millert@courtesan.com,
generated with the help of perlbug 1.34 running under perl v5.8.0.
-----------------------------------------------------------------
[Please enter your report here]
The following diff against the current version of hints/openbsd.sh
does the following:
1) OpenBSD still doesn't have a "real" vfork. The version that
was slated for 2.7 never happened.
2) OpenBSD 3.3 will have real setre?[ug]id() functions.
3) Add workarounds for deficiencies in the (nascent) hppa port.
4) Adding -lpthread to libswanted is bogus, and OpenBSD 3.3 will
no longer use libc_r. The correct way to handle threads is to
simply add -pthread to the compile and link lines. It may be
safest to simply set "usenm=false" but I haven't done that here
since Configure seems to do the right thing even when threading
is enabled.
--- openbsd.sh.orig Wed Dec 11 04:29:50 2002
+++ openbsd.sh Wed Jan 29 11:29:08 2003
@@ -11,17 +11,20 @@
# OpenBSD has a better malloc than perl...
test "$usemymalloc" || usemymalloc='n'
-# Currently, vfork(2) is not a real win over fork(2) but this will
-# change starting with OpenBSD 2.7.
-usevfork='true'
-
-# setre?[ug]id() have been replaced by the _POSIX_SAVED_IDS versions
-# in 4.4BSD. Configure will find these but they are just emulated
-# and do not have the same semantics as in 4.3BSD.
-d_setregid=$undef
-d_setreuid=$undef
-d_setrgid=$undef
-d_setruid=$undef
+# Currently, vfork(2) is not a real win over fork(2).
+usevfork="$undef"
+
+# In OpenBSD < 3.3, the setre?[ug]id() are emulated using the
+# _POSIX_SAVED_IDS functionality which does not have the same
+# semantics as 4.3BSD. Starting with OpenBSD 3.3, the original
+# semantics have been restored.
+case "$osvers" in
+[0-2].*|3.[0-2])
+ d_setregid=$undef
+ d_setreuid=$undef
+ d_setrgid=$undef
+ d_setruid=$undef
+esac
#
# Not all platforms support dynamic loading...
@@ -32,7 +35,7 @@
#
ARCH=`arch | sed 's/^OpenBSD.//'`
case "${ARCH}-${osvers}" in
-alpha-2.[0-8]|mips-2.[0-8]|powerpc-2.[0-7]|m88k-*|vax-*)
+alpha-2.[0-8]|mips-2.[0-8]|powerpc-2.[0-7]|m88k-*|hppa-*|vax-*)
test -z "$usedl" && usedl=$undef
;;
*)
@@ -85,6 +88,9 @@
m88k)
optimize='-O0'
;;
+hppa)
+ optimize='-O0'
+ ;;
*)
test "$optimize" || optimize='-O2'
;;
@@ -98,11 +104,6 @@
# any openbsd version dependencies with pthreads?
ccflags="-pthread $ccflags"
ldflags="-pthread $ldflags"
- # Add -lpthread. Also change from -lc to -lc_r
- libswanted="$libswanted pthread"
- libswanted=`echo " $libswanted "| sed -e 's/ c / c_r /' -e 's/^ //' -e 's/ $//'`
- # This is strange.
- usevfork="$undef"
esac
EOCBU
[Please do not change anything below this line]
-----------------------------------------------------------------
---
Flags:
category=core
severity=low
---
Site configuration information for perl v5.8.0:
Configured by root at Wed Jan 29 10:10:16 MST 2003.
Summary of my perl5 (revision 5.0 version 8 subversion 0) configuration:
Platform:
osname=openbsd, osvers=3.2, archname=i386-openbsd
uname='openbsd'
config_args='-Dopenbsd_distribution=defined -dsE'
hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
use64bitint=undef use64bitall=undef uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-pthread -fno-strict-aliasing -I/usr/local/include',
optimize='-O2',
cppflags='-pthread -fno-strict-aliasing -I/usr/local/include'
ccversion='', gccversion='2.95.3 20010125 (prerelease, propolice)', gccosandvers='openbsd3.2'
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=4, prototype=define
Linker and Libraries:
ld='cc', ldflags ='-pthread '
libpth=/usr/lib
libs=-lm -lc -lutil
perllibs=-lm -lc -lutil
libc=/usr/lib/libc.a, so=so, useshrplib=true, libperl=libperl.so.8.0
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=define, ccdlflags='-Wl,-R/usr/libdata/perl5/i386-openbsd/5.8.0/CORE'
cccdlflags='-DPIC -fPIC ', lddlflags='-shared -fPIC '
Locally applied patches:
---
@INC for perl v5.8.0:
/usr/libdata/perl5/i386-openbsd/5.8.0
/usr/local/libdata/perl5/i386-openbsd/5.8.0
/usr/libdata/perl5
/usr/local/libdata/perl5
/usr/local/libdata/perl5/site_perl/i386-openbsd
/usr/libdata/perl5/site_perl/i386-openbsd
/usr/local/libdata/perl5/site_perl
/usr/libdata/perl5/site_perl
/usr/local/lib/perl5/site_perl
.
---
Environment for perl v5.8.0:
HOME=/home/millert
LANG (unset)
LANGUAGE (unset)
LD_LIBRARY_PATH (unset)
LOGDIR (unset)
PATH=/home/millert/bin/OpenBSD.i386:/home/millert/bin:/home/millert/bin/scripts:/usr/local/gnu/bin:/usr/local/bin:/usr/local/sbin:/usr/local/etc:/usr/local/rcs/bin:/usr/local/nmh/bin:/usr/local/news/bin:/usr/local/emacs/bin:/usr/local/netpbm/bin:/usr/local/mtools/bin:/usr/local/netscape/bin:/usr/local/ghostscript/bin:/usr/local/frame-5.5.6/bin:/usr/local/teTeX/bin:/usr/local/cvs-1.10.1/bin:/usr/local/games/bin:/usr/local/archivers/bin:/usr/local/skey/bin:/usr/local/audio/bin:/usr/local/rtty/bin:/bin:/sbin:/usr/games:/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/X11/bin:/usr/X11R6/bin:/usr/local/bin:/usr/obj/bin:/usr/src/bin
PERL_BADLANG (unset)
SHELL=/usr/local/bin/tcsh
Thread Next
-
[perl #20606] [no subject]
by Todd C. Miller