In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/ef4abe7673cc0b19ffd81c9a42f79de20a52ac87?hp=31a53e79025eb5944553e671a615e60f384fe743>

- Log -----------------------------------------------------------------
commit ef4abe7673cc0b19ffd81c9a42f79de20a52ac87
Author: Nicholas Clark <[email protected]>
Date:   Mon May 20 17:55:46 2013 +0200

    Remove fakethr.h and eliminate all references to it and FAKE_THREADS
    
    fakethr.h and FAKE_THREADS were for a "green" threads implementation of
    5005threads. 5005threads itself is long gone, and it's not clear that
    -DFAKE_THREADS *ever* built correctly. Certainly it did not work for the
    5.005 release, and it did not work at the time of the commits for the 
initial
    checkin. The closest that it seems to have been to working is around commit
    c6ee37c52f2ca9e5 (Dec 1997), where the headers no longer contained errors,
    but perl.c failed to compile.
-----------------------------------------------------------------------

Summary of changes:
 MANIFEST                                  |    1 -
 configpm                                  |    1 -
 dist/threads-shared/lib/threads/shared.pm |    2 +-
 dist/threads-shared/shared.xs             |    4 +-
 fakethr.h                                 |   75 -----------------------------
 perl.h                                    |    9 +---
 vms/descrip_mms.template                  |   13 +----
 7 files changed, 6 insertions(+), 99 deletions(-)
 delete mode 100644 fakethr.h

diff --git a/MANIFEST b/MANIFEST
index 5916b98..32b958c 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -3882,7 +3882,6 @@ ext/XS-Typemap/t/Typemap.t        test that typemaps work
 ext/XS-Typemap/Typemap.pm      XS::Typemap extension
 ext/XS-Typemap/Typemap.xs      XS::Typemap extension
 fakesdio.h                     stdio in terms of PerlIO
-fakethr.h                      Fake threads header
 feature.h                      Feature header
 form.h                         Public declarations for formats
 generate_uudmap.c              Generate uudmap.h, the uuencode decoding map
diff --git a/configpm b/configpm
index 0be40f9..33137c6 100755
--- a/configpm
+++ b/configpm
@@ -82,7 +82,6 @@ my @header_files = qw(EXTERN.h INTERN.h XSUB.h av.h config.h 
cop.h cv.h
                      regcomp.h regexp.h regnodes.h scope.h sv.h thread.h utf8.h
                      util.h);
 
-# No point in adding fakethr.h, as it no longer works
 push @header_files,
     $^O eq 'VMS' ? 'vmsish.h' : qw(dosish.h perliol.h time64.h unixish.h);
 
diff --git a/dist/threads-shared/lib/threads/shared.pm 
b/dist/threads-shared/lib/threads/shared.pm
index ecbc1fd..e5c3669 100644
--- a/dist/threads-shared/lib/threads/shared.pm
+++ b/dist/threads-shared/lib/threads/shared.pm
@@ -7,7 +7,7 @@ use warnings;
 
 use Scalar::Util qw(reftype refaddr blessed);
 
-our $VERSION = '1.43';
+our $VERSION = '1.44';
 my $XS_VERSION = $VERSION;
 $VERSION = eval $VERSION;
 
diff --git a/dist/threads-shared/shared.xs b/dist/threads-shared/shared.xs
index 3dccc39..d3e859d 100644
--- a/dist/threads-shared/shared.xs
+++ b/dist/threads-shared/shared.xs
@@ -612,7 +612,7 @@ S_abs_2_rel_milli(double abs)
 bool
 Perl_sharedsv_cond_timedwait(perl_cond *cond, perl_mutex *mut, double abs)
 {
-#if defined(NETWARE) || defined(FAKE_THREADS) || defined(I_MACH_CTHREADS)
+#if defined(NETWARE) || defined(I_MACH_CTHREADS)
     Perl_croak_nocontext("cond_timedwait not supported on this platform");
 #else
 #  ifdef WIN32
@@ -671,7 +671,7 @@ Perl_sharedsv_cond_timedwait(perl_cond *cond, perl_mutex 
*mut, double abs)
     return (got_it);
 #    endif /* OS2 */
 #  endif /* WIN32 */
-#endif /* NETWARE || FAKE_THREADS || I_MACH_CTHREADS */
+#endif /* NETWARE || I_MACH_CTHREADS */
 }
 
 
diff --git a/fakethr.h b/fakethr.h
deleted file mode 100644
index 643806d..0000000
--- a/fakethr.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/*    fakethr.h
- *
- *    Copyright (C) 1999, by Larry Wall and others
- *
- *    You may distribute under the terms of either the GNU General Public
- *    License or the Artistic License, as specified in the README file.
- *
- */
-
-typedef int perl_mutex;
-typedef int perl_key;
-
-typedef struct perl_thread *perl_os_thread;
-/* With fake threads, thr is global(ish) so we don't need dTHR */
-#define dTHR extern int errno
-
-struct perl_wait_queue {
-    struct perl_thread *       thread;
-    struct perl_wait_queue *   next;
-};
-typedef struct perl_wait_queue *perl_cond;
-
-/* Ask thread.h to include our per-thread extras */
-#define HAVE_THREAD_INTERN
-struct thread_intern {
-    perl_os_thread next_run, prev_run;  /* Linked list of runnable threads */
-    perl_cond   wait_queue;             /* Wait queue that we are waiting on */
-    IV          private;                /* Holds data across time slices */
-    I32         savemark;               /* Holds MARK for thread join values */
-};
-
-#define init_thread_intern(t)                          \
-    STMT_START {                                       \
-       t->self = (t);                                  \
-       (t)->i.next_run = (t)->i.prev_run = (t);        \
-       (t)->i.wait_queue = 0;                          \
-       (t)->i.private = 0;                             \
-    } STMT_END
-
-/*
- * Note that SCHEDULE() is only callable from pp code (which
- * must be expecting to be restarted). We'll have to do
- * something a bit different for XS code.
- */
-
-#define SCHEDULE() return schedule(), PL_op
-
-#define MUTEX_LOCK(m)
-#define MUTEX_UNLOCK(m)
-#define MUTEX_INIT(m)
-#define MUTEX_DESTROY(m)
-#define COND_INIT(c) perl_cond_init(c)
-#define COND_SIGNAL(c) perl_cond_signal(c)
-#define COND_BROADCAST(c) perl_cond_broadcast(c)
-#define COND_WAIT(c, m)                \
-    STMT_START {               \
-       perl_cond_wait(c);      \
-       SCHEDULE();             \
-    } STMT_END
-#define COND_DESTROY(c)
-
-#define THREAD_CREATE(t, f)    f((t))
-#define THREAD_POST_CREATE(t)  NOOP
-
-#define YIELD  NOOP
-
-/*
- * Local variables:
- * c-indentation-style: bsd
- * c-basic-offset: 4
- * indent-tabs-mode: nil
- * End:
- *
- * ex: set ts=8 sts=4 sw=4 et:
- */
diff --git a/perl.h b/perl.h
index 87e7f0f..1f6e4e4 100644
--- a/perl.h
+++ b/perl.h
@@ -2670,9 +2670,6 @@ freeing any remaining Perl interpreters.
 #  ifdef NETWARE
 #   include <nw5thread.h>
 #  else
-#  ifdef FAKE_THREADS
-#    include "fakethr.h"
-#  else
 #    ifdef WIN32
 #      include <win32thread.h>
 #    else
@@ -2699,8 +2696,7 @@ typedef pthread_key_t     perl_key;
 #        endif /* I_MACH_CTHREADS */
 #      endif /* OS2 */
 #    endif /* WIN32 */
-#  endif /* FAKE_THREADS */
-#endif /* NETWARE */
+#  endif /* NETWARE */
 #endif /* USE_ITHREADS */
 
 #if defined(WIN32)
@@ -4513,9 +4509,6 @@ EXTCONST char PL_bincompat_options[] =
 #  ifdef DEBUG_LEAKING_SCALARS_FORK_DUMP
                             " DEBUG_LEAKING_SCALARS_FORK_DUMP"
 #  endif
-#  ifdef FAKE_THREADS
-                            " FAKE_THREADS"
-#  endif
 #  ifdef FCRYPT
                             " FCRYPT"
 #  endif
diff --git a/vms/descrip_mms.template b/vms/descrip_mms.template
index 20da73c..af27c3c 100644
--- a/vms/descrip_mms.template
+++ b/vms/descrip_mms.template
@@ -151,14 +151,6 @@ THRLIBS2 = 
sys$share:cma$open_lib_shr/share|sys$share:cma$open_rtl/share
 .endif
 .endif
 
-.ifdef FAKETHREADED
-THREADDEF = 
-THREADH = fakethr.h
-THREAD = THREAD
-.else
-THREADH =
-.endif
-
 .ifdef MTU
 .ifdef MTK
 MTHREADLINKFLAGS = /THREADS=(MULTIPLE_KERNEL,UPCALLS)
@@ -255,9 +247,8 @@ h2 = iperlsys.h keywords.h mydtrace.h mg.h mg_vtable.h 
nostdio.h op.h
 h3 = op_reg_common.h opcode.h opnames.h overload.h pad.h parser.h patchlevel.h 
 h4 = perl.h perlapi.h perlio.h perlsdio.h perlvars.h perly.h
 h5 = pp.h pp_proto.h proto.h regcomp.h regexp.h regnodes.h scope.h
-h6 = sv.h thread.h utf8.h util.h vmsish.h warnings.h
-h7 = xsub.h $(THREADH)
-h = $(h0) $(h1) $(h2) $(h3) $(h4) $(h5) $(h6) $(h7)
+h6 = sv.h thread.h utf8.h util.h vmsish.h warnings.h xsub.h
+h = $(h0) $(h1) $(h2) $(h3) $(h4) $(h5) $(h6)
 
 acopt = $(ARCHCORE)perlshr_attr.opt $(ARCHCORE)$(DBG)perlshr_bld.opt
 ac = archcore_includes.ts $(acopt)

--
Perl5 Master Repository

Reply via email to