I would propose the following change to weed out 5005threads from Configure.

Any remarks? (unified diff attached)

==== //depot/metaconfig/U/threads/usethreads.U#15 - 
/pro/3gl/CPAN/metaconfig/U/threads/usethreads.U ====
10c10
< ?MAKE:usethreads useithreads use5005threads d_oldpthreads usereentrant: \
---
> ?MAKE:usethreads useithreads d_oldpthreads usereentrant: \
23,27d22
< ?S:use5005threads:
< ?S:   This variable conditionally defines the USE_5005THREADS symbol,
< ?S:   and indicates that Perl should be built to use the 5.005-based
< ?S:   threading implementation.
< ?S:.
48,51d42
< ?C:USE_5005THREADS:
< ?C:   This symbol, if defined, indicates that Perl should be built to
< ?C:   use the 5.005-based threading implementation.
< ?C:.
55c46
< ?C:   USE_5005THREADS, but eventually the source ought to be changed
---
> ?C:   USE_ITHREADS, but eventually the source ought to be changed
67d57
< ?H:#$use5005threads   USE_5005THREADS         /**/
69,71d58
< ?H:?%<:#if defined(USE_5005THREADS) && !defined(USE_ITHREADS)
< ?H:?%<:#define                USE_THREADS             /* until src is revised*/
< ?H:?%<:#endif
75c62
< ?LINT:set usethreads useithreads use5005threads d_oldpthreads usereentrant
---
> ?LINT:set usethreads useithreads d_oldpthreads usereentrant
83c70
< *)     # Catch case where user specified ithreads or 5005threads but
---
> *)     # Catch case where user specified ithreads but
85,86c72,73
<        case "$useithreads$use5005threads" in
<        *$define*)      
---
>        case "$useithreads" in
>        *$define*)
119c106,109
<       $cat <<EOM
---
>       dflt='y'
>       case "$useithreads" in
>           $undef|false|[nN]*)
>               $cat >&4 <<EOM
121,127c111,113
< Since release 5.6, Perl has had two different threading implementations,
< the newer interpreter-based version (ithreads) with one interpreter per
< thread, and the older 5.005 version (5005threads).
< The 5005threads version is effectively unmaintained and will probably be
< removed in Perl 5.10, so there should be no need to build a Perl using it
< unless needed for backwards compatibility with some existing 5.005threads
< code.
---
> Whoa there. You have selected -Dusethreads, but somehow explicitely
> disabled using threads with -Uuseithreads, either from a previous
> config.sh or a command line option.
128a115,116
> I will disable threads altogether.
> 
130,150c118,120
<       : Default to ithreads unless overridden on command line or with
<       : old config.sh
<       dflt='y'
<       case "$use5005threads" in
<               $define|true|[yY]*) dflt='n';;
<       esac
<       case "$useithreads" in
<               $undef|false|[nN]*) dflt='n';;
<       esac
<       rp='Use the newer interpreter-based ithreads?'
<       . ./myread
<       case "$ans" in
<       y|Y)    val="$define" ;;
<       *)      val="$undef" ;;
<       esac
<       set useithreads
<       eval $setvar
<       : Now set use5005threads to the opposite value.
<       case "$useithreads" in
<       $define) val="$undef" ;;
<       *) val="$define" ;;
---
>               usethreads=$undef
>               sleep 10
>               ;;
152,154d121
<       set use5005threads
<       eval $setvar
<       ;;
157,171d123
<       use5005threads="$undef"
<       ;;
< esac
< 
< ?X: This is not supposed to be possible but with some trickery, maybe.
< case "$useithreads$use5005threads" in
< "$define$define")
<       $cat >&4 <<EOM
< 
< You cannot have both the ithreads and the 5.005 threads enabled
< at the same time.  Disabling the 5.005 threads since they are
< much less stable than the ithreads.
< 
< EOM
<       use5005threads="$undef"

-- 
H.Merijn Brand        Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using perl-5.6.1, 5.8.0 & 633 on HP-UX 10.20 & 11.00, AIX 4.2, AIX 4.3,
  WinNT 4, Win2K pro & WinCE 2.11.  Smoking perl CORE: [EMAIL PROTECTED]
http://archives.develooper.com/daily-build@;perl.org/   [EMAIL PROTECTED]
send smoke reports to: [EMAIL PROTECTED], QA: http://qa.perl.org

Attachment: 5005thr.diff
Description: Binary data

Reply via email to