Index: perl-5.8.8/Configure =================================================================== --- perl-5.8.8.orig/Configure 2006-01-08 14:51:03 +0000 +++ perl-5.8.8/Configure 2006-02-14 13:41:41 +0000 @@ -3130,6 +3130,8 @@ dgux) osname=dgux osvers="$3" ;; + dragonfly) osname=dragonfly + osvers="$3" ;; dynixptx*) osname=dynixptx osvers=`echo "$4"|sed 's/^v//'` ;; @@ -7889,7 +7891,7 @@ solaris) xxx="-R $shrpdir" ;; - freebsd|netbsd|openbsd|interix) + freebsd|netbsd|openbsd|dragonfly|interix) xxx="-Wl,-R$shrpdir" ;; bsdos|linux|irix*|dec_osf|gnu*) Index: perl-5.8.8/Makefile.SH =================================================================== --- perl-5.8.8.orig/Makefile.SH 2006-01-24 12:49:44 +0000 +++ perl-5.8.8/Makefile.SH 2006-02-14 13:46:57 +0000 @@ -73,7 +73,7 @@ sunos*) linklibperl="-lperl" ;; - netbsd*|freebsd[234]*|openbsd*) + netbsd*|freebsd[234]*|openbsd*|dragonfly*) linklibperl="-L. -lperl" ;; interix*) @@ -990,6 +990,10 @@ n_dummy $(nonxs_ext): miniperl$(EXE_EXT) preplibrary $(DYNALOADER) FORCE @$(LDLIBPTH) sh ext/util/make_ext nonxs $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) +.PHONY: printconfig +printconfig: + @eval `$(LDLIBPTH) ./perl -Ilib -V:$(CONFIGVAR)`; echo $$$(CONFIGVAR) + .PHONY: clean _tidy _mopup _cleaner1 _cleaner2 \ realclean _realcleaner clobber _clobber \ distclean veryclean _verycleaner Index: perl-5.8.8/hints/dragonfly.sh =================================================================== --- perl-5.8.8.orig/hints/dragonfly.sh 1970-01-01 00:00:00 +0000 +++ perl-5.8.8/hints/dragonfly.sh 2006-02-14 13:15:04 +0000 @@ -0,0 +1,118 @@ +# hints/dragonfly.sh +# +# This file is mostly copied from hints/freebsd.sh with the OS version +# information taken out and only the FreeBSD-4 information intact. +# Please check with Todd Willey before making +# modifications to this file. + +case "$osvers" in +*) usevfork='true' + case "$usemymalloc" in + "") usemymalloc='n' + ;; + esac + libswanted=`echo $libswanted | sed 's/ malloc / /'` + ;; +esac + +# Dynamic Loading flags have not changed much, so they are separated +# out here to avoid duplicating them everywhere. +case "$osvers" in +*) + objformat=`/usr/bin/objformat` + if [ x$objformat = xelf ]; then + libpth="/usr/lib /usr/local/lib" + glibpth="/usr/lib /usr/local/lib" + ldflags="-Wl,-E " + lddlflags="-shared " + else + if [ -e /usr/lib/aout ]; then + libpth="/usr/lib/aout /usr/local/lib /usr/lib" + glibpth="/usr/lib/aout /usr/local/lib /usr/lib" + fi + lddlflags='-Bshareable' + fi + cccdlflags='-DPIC -fPIC' + ;; +esac + +case "$osvers" in +*) + ccflags="${ccflags} -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H" + if /usr/bin/file -L /usr/lib/libc.so | /usr/bin/grep -vq "not stripped" ; then + usenm=false + fi + ;; +esac + +cat <<'EOM' >&4 + +Some users have reported that Configure halts when testing for +the O_NONBLOCK symbol with a syntax error. This is apparently a +sh error. Rerunning Configure with ksh apparently fixes the +problem. Try + ksh Configure [your options] + +EOM + +# From: Anton Berezin +# To: perl5-porters@perl.org +# Subject: [PATCH 5.005_54] Configure - hints/freebsd.sh signal handler type +# Date: 30 Nov 1998 19:46:24 +0100 +# Message-ID: <864srhhvcv.fsf@lion.plab.ku.dk> + +signal_t='void' +d_voidsig='define' + +# 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]*) + lc_r=`/sbin/ldconfig -r|grep ':-lc_r'|awk '{print $NF}'|sed -n '$p'` + case "$osvers" in + *) + if [ ! -r "$lc_r" ]; then + cat <&4 +POSIX threads should be supported by FreeBSD $osvers -- +but your system is missing the shared libc_r. +(/sbin/ldconfig -r doesn't find any). + +Consider using the latest STABLE release. +EOM + exit 1 + fi + case "$osvers" in + *) ldflags="-pthread $ldflags" + ;; + esac + # Both in 4.x and 5.x gethostbyaddr_r exists but + # it is "Temporary function, not threadsafe"... + # Presumably earlier it didn't even exist. + d_gethostbyaddr_r="undef" + d_gethostbyaddr_r_proto="0" + ;; + + esac + + set `echo X "$libswanted "| sed -e 's/ c / c_r /'` + shift + libswanted="$*" + # Configure will probably pick the wrong libc to use for nm scan. + # The safest quick-fix is just to not use nm at all... + usenm=false + + unset lc_r + + # Even with the malloc mutexes the Perl malloc does not + # seem to be threadsafe in FreeBSD? + case "$usemymalloc" in + '') usemymalloc=n ;; + esac +esac +EOCBU + +# malloc wrap works +case "$usemallocwrap" in +'') usemallocwrap='define' ;; +esac