r46066 - in /trunk/libextutils-parsexs-perl: Changes MANIFEST META.yml README debian/changelog lib/ExtUtils/ParseXS.pm t/XSInclude.xsh t/XSMore.xs t/more.t t/typemap

jawnsy-guest at users.alioth.debian.org jawnsy-guest at users.alioth.debian.org
Sun Oct 18 22:21:54 UTC 2009


Author: jawnsy-guest
Date: Sun Oct 18 22:21:49 2009
New Revision: 46066

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=46066
Log:
New upstream release

Added:
    trunk/libextutils-parsexs-perl/t/XSInclude.xsh
      - copied unchanged from r46065, branches/upstream/libextutils-parsexs-perl/current/t/XSInclude.xsh
    trunk/libextutils-parsexs-perl/t/XSMore.xs
      - copied unchanged from r46065, branches/upstream/libextutils-parsexs-perl/current/t/XSMore.xs
    trunk/libextutils-parsexs-perl/t/more.t
      - copied unchanged from r46065, branches/upstream/libextutils-parsexs-perl/current/t/more.t
    trunk/libextutils-parsexs-perl/t/typemap
      - copied unchanged from r46065, branches/upstream/libextutils-parsexs-perl/current/t/typemap
Modified:
    trunk/libextutils-parsexs-perl/Changes
    trunk/libextutils-parsexs-perl/MANIFEST
    trunk/libextutils-parsexs-perl/META.yml
    trunk/libextutils-parsexs-perl/README
    trunk/libextutils-parsexs-perl/debian/changelog
    trunk/libextutils-parsexs-perl/lib/ExtUtils/ParseXS.pm

Modified: trunk/libextutils-parsexs-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libextutils-parsexs-perl/Changes?rev=46066&op=diff
==============================================================================
--- trunk/libextutils-parsexs-perl/Changes (original)
+++ trunk/libextutils-parsexs-perl/Changes Sun Oct 18 22:21:49 2009
@@ -1,4 +1,35 @@
 Revision history for Perl extension ExtUtils::ParseXS.
+
+2.21 - Mon Oct  5 11:17:53 EDT 2009
+
+ Bug fixes:
+ - Adds full path in INCLUDE #line directives (RT#50198) [patch by "spb"]
+
+ Other:
+ - Updated copyright and maintainer list
+
+2.20_07 - Sat Oct  3 11:26:55 EDT 2009
+
+ Bug fixes:
+ - Use "char* file" for perl < 5.9, not "char[] file"; fixes mod_perl
+   breakage due to prior attempts to fix RT#48104 [David Golden] 
+
+2.20_06 - Fri Oct  2 23:45:45 EDT 2009
+
+ Bug fixes:
+ - Added t/typemap to fix broken test on perl 5.6.2 [David Golden]
+ - More prototype fixes for older perls [Goro Fuji]
+ - Avoid "const char *" in test files as it breaks on 5.6.2 [Goro Fuji]
+
+ Other:
+ - Merged changes from 2.2004 maintenance branch (see 2.200401 to 2.200403)
+   [David Golden]
+
+2.20_05 - Sat Aug 22 21:46:56 EDT 2009
+
+ Bug fixes:
+ - Fix prototype related bugs [Goro Fuji]
+ - Fix the SCOPE keyword [Goro Fuji]
 
 2.200403 - Fri Oct  2 02:01:58 EDT 2009
 
@@ -18,6 +49,7 @@
 
  - No changes from 2.20_04.
 
+
 2.20_04 - Mon Aug 10 11:18:47 EDT 2009
 
  Bug fixes:
@@ -30,8 +62,8 @@
 2.20_03 - Thu Jul 23 23:14:50 EDT 2009
 
  Bug fixes:
- - Fixed "const char *" errors for 5.8.8 (and older) (RT#48104)
-   [Vincent Pit]
+ - Fixed "const char *" errors for 5.8.8 (and older) (RT#48104) 
+   [Vincent Pit] 
  - Added newline before a preprocessor directive (RT#30673)
    [patch by hjp]
 

Modified: trunk/libextutils-parsexs-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libextutils-parsexs-perl/MANIFEST?rev=46066&op=diff
==============================================================================
--- trunk/libextutils-parsexs-perl/MANIFEST (original)
+++ trunk/libextutils-parsexs-perl/MANIFEST Sun Oct 18 22:21:49 2009
@@ -12,7 +12,11 @@
 t/bugs/typemap
 t/include/nscore.h
 t/include/nsUniversalDetector.h
+t/more.t
+t/typemap
 t/usage.t
+t/XSInclude.xsh
+t/XSMore.xs
 t/XSTest.pm
 t/XSTest.xs
 t/XSUsage.pm

Modified: trunk/libextutils-parsexs-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libextutils-parsexs-perl/META.yml?rev=46066&op=diff
==============================================================================
--- trunk/libextutils-parsexs-perl/META.yml (original)
+++ trunk/libextutils-parsexs-perl/META.yml Sun Oct 18 22:21:49 2009
@@ -1,8 +1,9 @@
 ---
 name: ExtUtils-ParseXS
-version: 2.200403
+version: 2.21
 author:
-  - 'Maintained by Ken Williams, <ken at mathforum.org>'
+  - 'Ken Williams, <ken at mathforum.org>'
+  - 'David Golden, <dagolden at cpan.org>'
 abstract: converts Perl XS code into C code
 license: perl
 resources:
@@ -24,7 +25,7 @@
 provides:
   ExtUtils::ParseXS:
     file: lib/ExtUtils/ParseXS.pm
-    version: 2.200403
+    version: 2.21
 generated_by: Module::Build version 0.3502
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html

Modified: trunk/libextutils-parsexs-perl/README
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libextutils-parsexs-perl/README?rev=46066&op=diff
==============================================================================
--- trunk/libextutils-parsexs-perl/README (original)
+++ trunk/libextutils-parsexs-perl/README Sun Oct 18 22:21:49 2009
@@ -92,10 +92,15 @@
 AUTHOR
     Based on xsubpp code, written by Larry Wall.
 
-    Maintained by Ken Williams, <ken at mathforum.org>
+    Maintained by:
+
+    *   Ken Williams, <ken at mathforum.org>
+
+    *   David Golden, <dagolden at cpan.org>
 
 COPYRIGHT
-    Copyright 2002-2003 Ken Williams. All rights reserved.
+    Copyright 2002-2009 by Ken Williams, David Golden and other
+    contributors. All rights reserved.
 
     This library is free software; you can redistribute it and/or modify it
     under the same terms as Perl itself.

Modified: trunk/libextutils-parsexs-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libextutils-parsexs-perl/debian/changelog?rev=46066&op=diff
==============================================================================
--- trunk/libextutils-parsexs-perl/debian/changelog (original)
+++ trunk/libextutils-parsexs-perl/debian/changelog Sun Oct 18 22:21:49 2009
@@ -1,3 +1,9 @@
+libextutils-parsexs-perl (2.210000-1) UNRELEASED; urgency=low
+
+  * New upstream release
+
+ -- Jonathan Yu <jawnsy at cpan.org>  Sun, 18 Oct 2009 14:45:30 -0400
+
 libextutils-parsexs-perl (2.200403-1) unstable; urgency=low
 
   [ Jonathan Yu ]

Modified: trunk/libextutils-parsexs-perl/lib/ExtUtils/ParseXS.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libextutils-parsexs-perl/lib/ExtUtils/ParseXS.pm?rev=46066&op=diff
==============================================================================
--- trunk/libextutils-parsexs-perl/lib/ExtUtils/ParseXS.pm (original)
+++ trunk/libextutils-parsexs-perl/lib/ExtUtils/ParseXS.pm Sun Oct 18 22:21:49 2009
@@ -18,7 +18,8 @@
 my($XSS_work_idx, $cpp_next_tmp);
 
 use vars qw($VERSION);
-$VERSION = '2.200403';
+$VERSION = '2.21';
+$VERSION = eval $VERSION if $VERSION =~ /_/;
 
 use vars qw(%input_expr %output_expr $ProtoUsed @InitFileCode $FH $proto_re $Overload $errors $Fallback
 	    $cplusplus $hiertype $WantPrototypes $WantVersionChk $except $WantLineNumbers
@@ -354,6 +355,15 @@
 #endif
 
 #endif
+
+/* NOTE: the prototype of newXSproto() is different in versions of perls,
+ * so we define a portable version of newXSproto()
+ */
+#ifdef newXS_flags
+#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0)
+#else
+#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv)
+#endif /* !defined(newXS_flags) */
 
 EOF
 
@@ -438,7 +448,7 @@
     $xsreturn = 0;
 
     $_ = shift(@line);
-    while (my $kwd = check_keyword("REQUIRE|PROTOTYPES|FALLBACK|VERSIONCHECK|INCLUDE")) {
+    while (my $kwd = check_keyword("REQUIRE|PROTOTYPES|FALLBACK|VERSIONCHECK|INCLUDE|SCOPE")) {
       &{"${kwd}_handler"}() ;
       next PARAGRAPH unless @line ;
       $_ = shift(@line);
@@ -848,7 +858,7 @@
 	next;
       }
       last if $_ eq "$END:";
-      death(/^$BLOCK_re/o ? "Misplaced `$1:'" : "Junk at end of function");
+      death(/^$BLOCK_re/o ? "Misplaced `$1:'" : "Junk at end of function ($_)");
     }
     
     print Q(<<"EOF") if $except;
@@ -871,12 +881,12 @@
 #
 EOF
 
-    my $newXS = "newXS" ;
-    my $proto = "" ;
+    our $newXS = "newXS" ;
+    our $proto = "" ;
     
     # Build the prototype string for the xsub
     if ($ProtoThisXSUB) {
-      $newXS = "newXSproto";
+      $newXS = "newXSproto_portable";
       
       if ($ProtoThisXSUB eq 2) {
 	# User has specified empty prototype
@@ -898,23 +908,20 @@
       }
       $proto = qq{, "$proto"};
     }
-    
+
     if (%XsubAliases) {
       $XsubAliases{$pname} = 0
 	unless defined $XsubAliases{$pname} ;
       while ( ($name, $value) = each %XsubAliases) {
 	push(@InitFileCode, Q(<<"EOF"));
-#        cv = newXS(\"$name\", XS_$Full_func_name, file);
+#        cv = ${newXS}(\"$name\", XS_$Full_func_name, file$proto);
 #        XSANY.any_i32 = $value ;
-EOF
-	push(@InitFileCode, Q(<<"EOF")) if $proto;
-#        sv_setpv((SV*)cv$proto) ;
 EOF
       }
     }
     elsif (@Attributes) {
       push(@InitFileCode, Q(<<"EOF"));
-#        cv = newXS(\"$pname\", XS_$Full_func_name, file);
+#        cv = ${newXS}(\"$pname\", XS_$Full_func_name, file$proto);
 #        apply_attrs_string("$Package", cv, "@Attributes", 0);
 EOF
     }
@@ -922,17 +929,14 @@
       while ( ($name, $value) = each %Interfaces) {
 	$name = "$Package\::$name" unless $name =~ /::/;
 	push(@InitFileCode, Q(<<"EOF"));
-#        cv = newXS(\"$name\", XS_$Full_func_name, file);
+#        cv = ${newXS}(\"$name\", XS_$Full_func_name, file$proto);
 #        $interface_macro_set(cv,$value) ;
-EOF
-	push(@InitFileCode, Q(<<"EOF")) if $proto;
-#        sv_setpv((SV*)cv$proto) ;
 EOF
       }
     }
     else {
       push(@InitFileCode,
-	   "        ${newXS}(\"$pname\", XS_$Full_func_name, file$proto);\n");
+	   "        (void)${newXS}(\"$pname\", XS_$Full_func_name, file$proto);\n");
     }
   }
 
@@ -951,7 +955,7 @@
     /* Making a sub named "${Package}::()" allows the package */
     /* to be findable via fetchmethod(), and causes */
     /* overload::Overloaded("${Package}") to return true. */
-    newXS("${Package}::()", XS_${Packid}_nil, file$proto);
+    (void)${newXS}("${Package}::()", XS_${Packid}_nil, file$proto);
 MAKE_FETCHMETHOD_WORK
   }
 
@@ -984,7 +988,7 @@
   #so `file' is unused
   print Q(<<"EOF") if $Full_func_name;
 ##if (PERL_REVISION == 5 && PERL_VERSION < 9)
-#    char file[] = __FILE__;
+#    char* file = __FILE__;
 ##else
 #    const char* file = __FILE__;
 ##endif
@@ -1360,7 +1364,7 @@
       $Overload = 1 unless $Overload;
       my $overload = "$Package\::(".$1 ;
       push(@InitFileCode,
-	   "        newXS(\"$overload\", XS_$Full_func_name, file$proto);\n");
+	   "        (void)${newXS}(\"$overload\", XS_$Full_func_name, file$proto);\n");
     }
   }  
 }
@@ -1454,16 +1458,10 @@
     death("Error: Only 1 SCOPE declaration allowed per xsub")
       if $scope_in_this_xsub ++ ;
 
-    for (;  !/^$BLOCK_re/o;  $_ = shift(@line)) {
-      next unless /\S/;
-      TrimWhitespace($_) ;
-      if ($_ =~ /^DISABLE/i) {
-	$ScopeThisXSUB = 0
-      } elsif ($_ =~ /^ENABLE/i) {
-	$ScopeThisXSUB = 1
-      }
-    }
-
+    TrimWhitespace($_);
+    death ("Error: SCOPE: ENABLE/DISABLE")
+        unless /^(ENABLE|DISABLE)\b/i;
+    $ScopeThisXSUB = ( uc($1) eq 'ENABLE' );
   }
 
 sub PROTOTYPES_handler ()
@@ -1524,7 +1522,8 @@
 #
 EOF
 
-    $filepathname = $filename = $_ ;
+    $filename = $_ ;
+    $filepathname = "$dir/$filename";
 
     # Prime the pump by reading the first
     # non-blank line
@@ -2080,11 +2079,24 @@
 
 Based on xsubpp code, written by Larry Wall.
 
-Maintained by Ken Williams, <ken at mathforum.org>
+Maintained by: 
+
+=over 4
+
+=item *
+
+Ken Williams, <ken at mathforum.org>
+
+=item *
+
+David Golden, <dagolden at cpan.org>
+
+=back
 
 =head1 COPYRIGHT
 
-Copyright 2002-2003 Ken Williams.  All rights reserved.
+Copyright 2002-2009 by Ken Williams, David Golden and other contributors.  All
+rights reserved.
 
 This library is free software; you can redistribute it and/or
 modify it under the same terms as Perl itself.




More information about the Pkg-perl-cvs-commits mailing list