[svn:parrot] r48018 - in branches/gsoc_threads: . config/gen/makefiles docs/project include/parrot lib/Parrot/Test/Util runtime/parrot/library src src/interp src/ops src/runcore t/configure t/postconfigure t/src tools/dev

Chandon at svn.parrot.org Chandon at svn.parrot.org
Tue Jul 6 21:20:16 UTC 2010


Author: Chandon
Date: Tue Jul  6 21:20:15 2010
New Revision: 48018
URL: https://trac.parrot.org/parrot/changeset/48018

Log:
[gsoc_threads] Merge from trunk.

Modified:
   branches/gsoc_threads/   (props changed)
   branches/gsoc_threads/config/gen/makefiles/root.in
   branches/gsoc_threads/docs/project/release_manager_guide.pod
   branches/gsoc_threads/include/parrot/dynext.h
   branches/gsoc_threads/include/parrot/runcore_trace.h   (props changed)
   branches/gsoc_threads/lib/Parrot/Test/Util/Runloop.pm
   branches/gsoc_threads/runtime/parrot/library/P6object.pir
   branches/gsoc_threads/src/dynext.c
   branches/gsoc_threads/src/interp/inter_create.c   (props changed)
   branches/gsoc_threads/src/ops/core.ops
   branches/gsoc_threads/src/ops/core_ops.c
   branches/gsoc_threads/src/runcore/cores.c   (props changed)
   branches/gsoc_threads/src/runcore/trace.c   (props changed)
   branches/gsoc_threads/t/configure/017-revision_from_cache.t
   branches/gsoc_threads/t/configure/018-revision_to_cache.t
   branches/gsoc_threads/t/configure/061-revision_from_cache.t
   branches/gsoc_threads/t/postconfigure/05-trace.t
   branches/gsoc_threads/t/src/embed.t   (props changed)
   branches/gsoc_threads/tools/dev/mk_gitignore.pl   (props changed)

Modified: branches/gsoc_threads/config/gen/makefiles/root.in
==============================================================================
--- branches/gsoc_threads/config/gen/makefiles/root.in	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/config/gen/makefiles/root.in	Tue Jul  6 21:20:15 2010	(r48018)
@@ -2424,6 +2424,8 @@
     tar -zcv -T - -f parrot-$(VERSION).tar.gz
 	$(PERL) -lane 'print"parrot-$(VERSION)/$$F[0]"unless!length||/#/' \
 	     MANIFEST | tar -jcv -T - -f parrot-$(VERSION).tar.bz2
+	sha256sum parrot-$(VERSION).tar.gz > parrot-$(VERSION).tar.gz.sha256
+	sha256sum parrot-$(VERSION).tar.bz2 > parrot-$(VERSION).tar.bz2.sha256
 	mv MANIFEST.real MANIFEST
 	rm parrot-$(VERSION)
 

Modified: branches/gsoc_threads/docs/project/release_manager_guide.pod
==============================================================================
--- branches/gsoc_threads/docs/project/release_manager_guide.pod	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/docs/project/release_manager_guide.pod	Tue Jul  6 21:20:15 2010	(r48018)
@@ -231,9 +231,11 @@
 
  $ mkdir ~/ftp/releases/supported/a.b.c
 
-Copy the different compressed tarballs from your machine into the new directory.
+Copy the different compressed tarballs and the according checksum files from
+your machine into the new directory.
 
  $ scp parrot-a.b.c.tar.gz parrot-a.b.c.tar.bz2 \
+       parrot-a.b.c.tar.gz.sha256 parrot-a.b.c.tar.bz2.sha256 \
    <USERNAME>@ftp-osl.osuosl.org:~/ftp/releases/devel/a.b.c/.
 
 (Or using C<wget> or whatever tool you prefer.)

Modified: branches/gsoc_threads/include/parrot/dynext.h
==============================================================================
--- branches/gsoc_threads/include/parrot/dynext.h	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/include/parrot/dynext.h	Tue Jul  6 21:20:15 2010	(r48018)
@@ -32,6 +32,13 @@
         FUNC_MODIFIES(*s);
 
 PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
+void * Parrot_dlsym_str(PARROT_INTERP,
+    ARGIN_NULLOK(void *handle),
+    ARGIN_NULLOK(STRING *symbol))
+        __attribute__nonnull__(1);
+
+PARROT_EXPORT
 PARROT_CANNOT_RETURN_NULL
 PMC * Parrot_init_lib(PARROT_INTERP,
     NULLOK(dynext_load_func load_func),
@@ -50,6 +57,8 @@
        PARROT_ASSERT_ARG(d) \
     , PARROT_ASSERT_ARG(s) \
     , PARROT_ASSERT_ARG(lib_pmc))
+#define ASSERT_ARGS_Parrot_dlsym_str __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
+       PARROT_ASSERT_ARG(interp))
 #define ASSERT_ARGS_Parrot_init_lib __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(interp))
 #define ASSERT_ARGS_Parrot_load_lib __attribute__unused__ int _ASSERT_ARGS_CHECK = (\

Modified: branches/gsoc_threads/lib/Parrot/Test/Util/Runloop.pm
==============================================================================
--- branches/gsoc_threads/lib/Parrot/Test/Util/Runloop.pm	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/lib/Parrot/Test/Util/Runloop.pm	Tue Jul  6 21:20:15 2010	(r48018)
@@ -19,18 +19,19 @@
 =head1 DESCRIPTION
 
 This module provides a basic runloop for test scripts which perform the same
-test, over and over, on lots of files.  It is intended to consolidate some code
-to handle loops, skips etc, replicated many times in the t/distro/ and
-t/codingstd/ test directories.
+test, over and over, on lots of files.  It is intended to consolidate some
+code to handle loops, skips etc, replicated many times in the F<t/distro/> and
+F<t/codingstd/> test directories.
 
 You can specify a callback routine to get called back once per line (with the
-per_line attribute), or once per file (with the per_file attribute).  The
-per_line callback gets passed the line as a text string.  The per_file callback
-gets passed the whole file as a text string.  If the callback function returns
-positive, the test passed, otherwise the test failed.  Failures are tallied,
-and later reported to the test harness once, as a single test.  On failure,
-some informational diagnostics are also generated, showing the user which
-file(s) and which line(s) (if applicable) had the failure.
+C<per_line> attribute), or once per file (with the C<per_file> attribute).
+The C<per_line> callback gets passed the line as a text string.  The
+C<per_file> callback gets passed the whole file as a text string.  If the
+callback function returns positive, the test passed, otherwise the test
+failed.  Failures are tallied, and later reported to the test harness once, as
+a single test.  On failure, some informational diagnostics are also generated,
+showing the user which file(s) and which line(s) (if applicable) had the
+failure.
 
 
 =head1 AUTHOR

Modified: branches/gsoc_threads/runtime/parrot/library/P6object.pir
==============================================================================
--- branches/gsoc_threads/runtime/parrot/library/P6object.pir	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/runtime/parrot/library/P6object.pir	Tue Jul  6 21:20:15 2010	(r48018)
@@ -111,7 +111,8 @@
 .sub 'WHAT' :method :nsentry
     .local pmc how, what
     how = self.'HOW'()
-    .tailcall how.'WHAT'()
+    what = getattribute how, 'protoobject'
+    .return (what)
 .end
 
 
@@ -162,25 +163,13 @@
 
 =over
 
-=item WHAT()
-
-Return the protoobject for this metaclass.
-
-=cut
-
-.namespace ['P6metaclass']
-
-.sub 'WHAT' :method :nsentry
-    $P0 = getattribute self, 'protoobject'
-    .return ($P0)
-.end
-
 =item isa(x)
 
 Return a true value if the invocant 'isa' C<x>.
 
 =cut
 
+.namespace ['P6metaclass']
 .sub 'isa' :method :multi(_,_, _)
     .param pmc obj
     .param pmc x

Modified: branches/gsoc_threads/src/dynext.c
==============================================================================
--- branches/gsoc_threads/src/dynext.c	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/src/dynext.c	Tue Jul  6 21:20:15 2010	(r48018)
@@ -413,6 +413,36 @@
 
 /*
 
+=item C<void * Parrot_dlsym_str(PARROT_INTERP, void *handle, STRING *symbol)>
+
+Same as Parrot_dlsym but takes the symbol name from a Parrot String instead
+of a C string.
+
+=cut
+
+*/
+
+PARROT_EXPORT
+PARROT_CAN_RETURN_NULL
+void *
+Parrot_dlsym_str(PARROT_INTERP,
+        ARGIN_NULLOK(void *handle), ARGIN_NULLOK(STRING *symbol))
+{
+    ASSERT_ARGS(Parrot_dlsym_str)
+
+    void *ptr;
+    if (STRING_IS_NULL(symbol))
+        ptr = NULL;
+    else {
+        char *const symbol_cs = Parrot_str_to_cstring(interp, symbol);
+        ptr = Parrot_dlsym(handle, symbol_cs);
+        Parrot_str_free_cstring(symbol_cs);
+    }
+    return ptr;
+}
+
+/*
+
 =item C<static PMC * run_init_lib(PARROT_INTERP, void *handle, STRING *lib_name,
 STRING *wo_ext)>
 
@@ -453,18 +483,14 @@
                                         "Parrot_lib_%Ss_load", lib_name);
         STRING * const init_func_name  = Parrot_sprintf_c(interp,
                                         "Parrot_lib_%Ss_init", lib_name);
-        char   * const cload_func_name = Parrot_str_to_cstring(interp, load_name);
-        char   * const cinit_func_name = Parrot_str_to_cstring(interp, init_func_name);
 
         /* get load_func */
-        void * dlsymfunc = Parrot_dlsym(handle, cload_func_name);
+        void * dlsymfunc = Parrot_dlsym_str(interp, handle, load_name);
         load_func = (PMC * (*)(PARROT_INTERP)) D2FPTR(dlsymfunc);
-        Parrot_str_free_cstring(cload_func_name);
 
         /* get init_func */
-        dlsymfunc = Parrot_dlsym(handle, cinit_func_name);
+        dlsymfunc = Parrot_dlsym_str(interp, handle, init_func_name);
         init_func = (void (*)(PARROT_INTERP, PMC *)) D2FPTR(dlsymfunc);
-        Parrot_str_free_cstring(cinit_func_name);
     }
     else {
         load_func = NULL;

Modified: branches/gsoc_threads/src/ops/core.ops
==============================================================================
--- branches/gsoc_threads/src/ops/core.ops	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/src/ops/core.ops	Tue Jul  6 21:20:15 2010	(r48018)
@@ -1254,7 +1254,6 @@
 }
 
 op dlfunc(out PMC, invar PMC, in STR, in STR) {
-    char * const  name      = Parrot_str_to_cstring(interp, ($3));
     void         *dl_handle = NULL;
     void         *ptr       = NULL;
     funcptr_t     p;
@@ -1265,24 +1264,22 @@
         dl_handle = ((Parrot_ParrotLibrary_attributes*)PMC_data($2))->dl_handle;
     }
 
-    ptr = Parrot_dlsym(dl_handle, name);
+    ptr = Parrot_dlsym_str(interp, dl_handle, $3);
     p = D2FPTR(ptr);
 
     if (p == NULLfunc) {
         const char * err = Parrot_dlerror();
         Parrot_warn(interp, PARROT_WARNINGS_UNDEF_FLAG,
-                "Symbol '%s' not found: %s\n", name, err ? err : "unknown reason");
+                "Symbol '%Ss' not found: %s\n", $3, err ? err : "unknown reason");
         $1 = Parrot_pmc_new(interp, enum_class_Undef);
     }
     else {
         $1 = Parrot_pmc_new(interp, enum_class_NCI);
         VTABLE_set_pointer_keyed_str(interp, $1, $4, F2DPTR(p));
     }
-    Parrot_str_free_cstring(name);
 }
 
 op dlvar(out PMC, invar PMC, in STR) {
-    char * const  name      = Parrot_str_to_cstring(interp, ($3));
     void *        dl_handle = NULL;
     void *        p         = NULL;
 
@@ -1292,12 +1289,12 @@
         dl_handle = ((Parrot_ParrotLibrary_attributes*)PMC_data($2))->dl_handle;
     }
 
-    p = Parrot_dlsym(dl_handle, name);
+    p = Parrot_dlsym_str(interp, dl_handle, $3);
 
     if (p == NULL) {
         const char * const err = Parrot_dlerror();
         Parrot_warn(interp, PARROT_WARNINGS_UNDEF_FLAG,
-                "Symbol '%s' not found: %s\n", name, err ? err : "unknown reason");
+                "Symbol '%Ss' not found: %s\n", $3, err ? err : "unknown reason");
         $1 = Parrot_pmc_new(interp, enum_class_Undef);
     }
     else {
@@ -1306,7 +1303,6 @@
         $1 = Parrot_pmc_new(interp, enum_class_UnManagedStruct);
         VTABLE_set_pointer(interp, $1, p);
     }
-    Parrot_str_free_cstring(name);
 }
 
 inline op compreg(in STR, invar PMC) {

Modified: branches/gsoc_threads/src/ops/core_ops.c
==============================================================================
--- branches/gsoc_threads/src/ops/core_ops.c	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/src/ops/core_ops.c	Tue Jul  6 21:20:15 2010	(r48018)
@@ -15128,7 +15128,6 @@
 opcode_t *
 Parrot_dlfunc_p_p_s_s(opcode_t *cur_opcode, PARROT_INTERP)  {
     const Parrot_Context * const CUR_CTX = Parrot_pcc_get_context_struct(interp, interp->ctx);
-    char * const  name      = Parrot_str_to_cstring(interp, (SREG(3)));
     void         *dl_handle = NULL;
     void         *ptr       = NULL;
     funcptr_t     p;
@@ -15139,27 +15138,25 @@
         dl_handle = ((Parrot_ParrotLibrary_attributes*)PMC_data(PREG(2)))->dl_handle;
     }
 
-    ptr = Parrot_dlsym(dl_handle, name);
+    ptr = Parrot_dlsym_str(interp, dl_handle, SREG(3));
     p = D2FPTR(ptr);
 
     if (p == NULLfunc) {
         const char * err = Parrot_dlerror();
         Parrot_warn(interp, PARROT_WARNINGS_UNDEF_FLAG,
-                "Symbol '%s' not found: %s\n", name, err ? err : "unknown reason");
+                "Symbol '%Ss' not found: %s\n", SREG(3), err ? err : "unknown reason");
         PREG(1) = Parrot_pmc_new(interp, enum_class_Undef);
     }
     else {
         PREG(1) = Parrot_pmc_new(interp, enum_class_NCI);
         VTABLE_set_pointer_keyed_str(interp, PREG(1), SREG(4), F2DPTR(p));
     }
-    Parrot_str_free_cstring(name);
 
 return (opcode_t *)cur_opcode + 5;}
 
 opcode_t *
 Parrot_dlfunc_p_p_sc_s(opcode_t *cur_opcode, PARROT_INTERP)  {
     const Parrot_Context * const CUR_CTX = Parrot_pcc_get_context_struct(interp, interp->ctx);
-    char * const  name      = Parrot_str_to_cstring(interp, (CONST(3)->u.string));
     void         *dl_handle = NULL;
     void         *ptr       = NULL;
     funcptr_t     p;
@@ -15170,27 +15167,25 @@
         dl_handle = ((Parrot_ParrotLibrary_attributes*)PMC_data(PREG(2)))->dl_handle;
     }
 
-    ptr = Parrot_dlsym(dl_handle, name);
+    ptr = Parrot_dlsym_str(interp, dl_handle, CONST(3)->u.string);
     p = D2FPTR(ptr);
 
     if (p == NULLfunc) {
         const char * err = Parrot_dlerror();
         Parrot_warn(interp, PARROT_WARNINGS_UNDEF_FLAG,
-                "Symbol '%s' not found: %s\n", name, err ? err : "unknown reason");
+                "Symbol '%Ss' not found: %s\n", CONST(3)->u.string, err ? err : "unknown reason");
         PREG(1) = Parrot_pmc_new(interp, enum_class_Undef);
     }
     else {
         PREG(1) = Parrot_pmc_new(interp, enum_class_NCI);
         VTABLE_set_pointer_keyed_str(interp, PREG(1), SREG(4), F2DPTR(p));
     }
-    Parrot_str_free_cstring(name);
 
 return (opcode_t *)cur_opcode + 5;}
 
 opcode_t *
 Parrot_dlfunc_p_p_s_sc(opcode_t *cur_opcode, PARROT_INTERP)  {
     const Parrot_Context * const CUR_CTX = Parrot_pcc_get_context_struct(interp, interp->ctx);
-    char * const  name      = Parrot_str_to_cstring(interp, (SREG(3)));
     void         *dl_handle = NULL;
     void         *ptr       = NULL;
     funcptr_t     p;
@@ -15201,27 +15196,25 @@
         dl_handle = ((Parrot_ParrotLibrary_attributes*)PMC_data(PREG(2)))->dl_handle;
     }
 
-    ptr = Parrot_dlsym(dl_handle, name);
+    ptr = Parrot_dlsym_str(interp, dl_handle, SREG(3));
     p = D2FPTR(ptr);
 
     if (p == NULLfunc) {
         const char * err = Parrot_dlerror();
         Parrot_warn(interp, PARROT_WARNINGS_UNDEF_FLAG,
-                "Symbol '%s' not found: %s\n", name, err ? err : "unknown reason");
+                "Symbol '%Ss' not found: %s\n", SREG(3), err ? err : "unknown reason");
         PREG(1) = Parrot_pmc_new(interp, enum_class_Undef);
     }
     else {
         PREG(1) = Parrot_pmc_new(interp, enum_class_NCI);
         VTABLE_set_pointer_keyed_str(interp, PREG(1), CONST(4)->u.string, F2DPTR(p));
     }
-    Parrot_str_free_cstring(name);
 
 return (opcode_t *)cur_opcode + 5;}
 
 opcode_t *
 Parrot_dlfunc_p_p_sc_sc(opcode_t *cur_opcode, PARROT_INTERP)  {
     const Parrot_Context * const CUR_CTX = Parrot_pcc_get_context_struct(interp, interp->ctx);
-    char * const  name      = Parrot_str_to_cstring(interp, (CONST(3)->u.string));
     void         *dl_handle = NULL;
     void         *ptr       = NULL;
     funcptr_t     p;
@@ -15232,27 +15225,25 @@
         dl_handle = ((Parrot_ParrotLibrary_attributes*)PMC_data(PREG(2)))->dl_handle;
     }
 
-    ptr = Parrot_dlsym(dl_handle, name);
+    ptr = Parrot_dlsym_str(interp, dl_handle, CONST(3)->u.string);
     p = D2FPTR(ptr);
 
     if (p == NULLfunc) {
         const char * err = Parrot_dlerror();
         Parrot_warn(interp, PARROT_WARNINGS_UNDEF_FLAG,
-                "Symbol '%s' not found: %s\n", name, err ? err : "unknown reason");
+                "Symbol '%Ss' not found: %s\n", CONST(3)->u.string, err ? err : "unknown reason");
         PREG(1) = Parrot_pmc_new(interp, enum_class_Undef);
     }
     else {
         PREG(1) = Parrot_pmc_new(interp, enum_class_NCI);
         VTABLE_set_pointer_keyed_str(interp, PREG(1), CONST(4)->u.string, F2DPTR(p));
     }
-    Parrot_str_free_cstring(name);
 
 return (opcode_t *)cur_opcode + 5;}
 
 opcode_t *
 Parrot_dlvar_p_p_s(opcode_t *cur_opcode, PARROT_INTERP)  {
     const Parrot_Context * const CUR_CTX = Parrot_pcc_get_context_struct(interp, interp->ctx);
-    char * const  name      = Parrot_str_to_cstring(interp, (SREG(3)));
     void *        dl_handle = NULL;
     void *        p         = NULL;
 
@@ -15262,12 +15253,12 @@
         dl_handle = ((Parrot_ParrotLibrary_attributes*)PMC_data(PREG(2)))->dl_handle;
     }
 
-    p = Parrot_dlsym(dl_handle, name);
+    p = Parrot_dlsym_str(interp, dl_handle, SREG(3));
 
     if (p == NULL) {
         const char * const err = Parrot_dlerror();
         Parrot_warn(interp, PARROT_WARNINGS_UNDEF_FLAG,
-                "Symbol '%s' not found: %s\n", name, err ? err : "unknown reason");
+                "Symbol '%Ss' not found: %s\n", SREG(3), err ? err : "unknown reason");
         PREG(1) = Parrot_pmc_new(interp, enum_class_Undef);
     }
     else {
@@ -15276,14 +15267,12 @@
         PREG(1) = Parrot_pmc_new(interp, enum_class_UnManagedStruct);
         VTABLE_set_pointer(interp, PREG(1), p);
     }
-    Parrot_str_free_cstring(name);
 
 return (opcode_t *)cur_opcode + 4;}
 
 opcode_t *
 Parrot_dlvar_p_p_sc(opcode_t *cur_opcode, PARROT_INTERP)  {
     const Parrot_Context * const CUR_CTX = Parrot_pcc_get_context_struct(interp, interp->ctx);
-    char * const  name      = Parrot_str_to_cstring(interp, (CONST(3)->u.string));
     void *        dl_handle = NULL;
     void *        p         = NULL;
 
@@ -15293,12 +15282,12 @@
         dl_handle = ((Parrot_ParrotLibrary_attributes*)PMC_data(PREG(2)))->dl_handle;
     }
 
-    p = Parrot_dlsym(dl_handle, name);
+    p = Parrot_dlsym_str(interp, dl_handle, CONST(3)->u.string);
 
     if (p == NULL) {
         const char * const err = Parrot_dlerror();
         Parrot_warn(interp, PARROT_WARNINGS_UNDEF_FLAG,
-                "Symbol '%s' not found: %s\n", name, err ? err : "unknown reason");
+                "Symbol '%Ss' not found: %s\n", CONST(3)->u.string, err ? err : "unknown reason");
         PREG(1) = Parrot_pmc_new(interp, enum_class_Undef);
     }
     else {
@@ -15307,7 +15296,6 @@
         PREG(1) = Parrot_pmc_new(interp, enum_class_UnManagedStruct);
         VTABLE_set_pointer(interp, PREG(1), p);
     }
-    Parrot_str_free_cstring(name);
 
 return (opcode_t *)cur_opcode + 4;}
 

Modified: branches/gsoc_threads/t/configure/017-revision_from_cache.t
==============================================================================
--- branches/gsoc_threads/t/configure/017-revision_from_cache.t	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/t/configure/017-revision_from_cache.t	Tue Jul  6 21:20:15 2010	(r48018)
@@ -7,10 +7,13 @@
 use warnings;
 
 use Test::More;
-plan( skip_all =>
-    "\nRelevant only when working in checkout from repository and during configuration" )
-    unless (-e 'DEVELOPING' and ! -e 'Makefile');
-plan( tests =>  7 );
+if (-e 'DEVELOPING' and ! -e 'Makefile') {
+    plan tests =>  7;
+}
+else {
+    plan skip_all =>
+        q{Relevant only when working in checkout from repository and prior to configuration};
+}
 use Carp;
 use Cwd;
 use File::Copy;

Modified: branches/gsoc_threads/t/configure/018-revision_to_cache.t
==============================================================================
--- branches/gsoc_threads/t/configure/018-revision_to_cache.t	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/t/configure/018-revision_to_cache.t	Tue Jul  6 21:20:15 2010	(r48018)
@@ -7,10 +7,13 @@
 use warnings;
 
 use Test::More;
-plan( skip_all =>
-    "\nRelevant only when working in checkout from repository and during configuration" )
-    unless (-e 'DEVELOPING' and ! -e 'Makefile');
-plan( tests =>  8 );
+if (-e 'DEVELOPING' and ! -e 'Makefile') {
+    plan tests =>  8;
+}
+else {
+    plan skip_all =>
+        q{Relevant only when working in checkout from repository and prior to configuration};
+}
 use Carp;
 use Cwd;
 use File::Copy;

Modified: branches/gsoc_threads/t/configure/061-revision_from_cache.t
==============================================================================
--- branches/gsoc_threads/t/configure/061-revision_from_cache.t	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/t/configure/061-revision_from_cache.t	Tue Jul  6 21:20:15 2010	(r48018)
@@ -7,10 +7,17 @@
 use warnings;
 
 use Test::More;
-plan( skip_all =>
-    "\nRelevant only when working in checkout from repository and during configuration" )
-    unless (-e 'DEVELOPING' and ! -e 'Makefile');
-plan( tests => 25 );
+#plan( skip_all =>
+#    "\nRelevant only when working in checkout from repository and during configuration" )
+#    unless (-e 'DEVELOPING' and ! -e 'Makefile');
+#plan( tests => 25 );
+if (-e 'DEVELOPING' and ! -e 'Makefile') {
+    plan tests => 25;
+}
+else {
+    plan skip_all =>
+        q{Relevant only when working in checkout from repository and prior to configuration};
+}
 use Carp;
 use Cwd;
 use File::Copy;

Modified: branches/gsoc_threads/t/postconfigure/05-trace.t
==============================================================================
--- branches/gsoc_threads/t/postconfigure/05-trace.t	Tue Jul  6 21:08:39 2010	(r48017)
+++ branches/gsoc_threads/t/postconfigure/05-trace.t	Tue Jul  6 21:20:15 2010	(r48018)
@@ -14,7 +14,8 @@
     plan tests => 40;
 }
 else {
-    plan skip_all => q{Tests irrelevant unless configuration completed with tracing requested};
+    plan skip_all =>
+        q{Tests irrelevant unless configuration completed with tracing requested};
 }
 use lib qw( lib );
 use Parrot::Config;


More information about the parrot-commits mailing list