retitle 467343 libvcp-perl: FTBFS with Perl 5.10
merge 467343 479948
tag 467343 patch
thanks

On Sun, Feb 24, 2008 at 09:18:02PM +0200, Niko Tyni wrote:
> Package: libvcp-perl
> Version: 0.9-20050110-1

> This package fails to build with Perl 5.10.0 (currently in experimental.)
> 
> I looked into this a bit, and the reason is a change in Getopt::Long
> between 2.35 (bundled with Perl 5.8.8) and 2.37 (bundled with Perl
> 5.10.0). The argument given to a user callback function is now a
> 'Getopt::Long::CallBack' object that is overloaded to return the option
> name when stringified for backwards compatibility, but it's always 0
> when numified.

Hi Bastian,

the Getopt::Long regression is now fixed in perl 5.10.0-12, but the
package still doesn't build.

/usr/bin/perl -Iinc  "-Iblib/arch" "-Iinc" "-Iblib/lib" "-I/usr/lib/perl/5.10" 
"-I/usr/share/perl/5.10" \
    bin/gentrevml --cvs --batch 0 --no-big-files > 
t/test-cvs-in-0-no-big-files.revml
Not a HASH reference at /usr/share/perl5/XML/Doctype.pm line 322.
BEGIN failed--compilation aborted at bin/gentrevml line 575.
make[1]: *** [t/test-cvs-in-0-no-big-files.revml] Error 255

This is because of pseudo-hash related changes in libxml-autowriter-perl
that require regenerating lib/RevML/Doctype/v0_35.pm with something like

 perl -Ilib bin/compile_dtd revml.dtd

Then there's a problem with the autogenerated help module:

writing lib/VCP/Help.pm
Can't locate object method "select" via package
"VCP::PodDESCRIPTIONParser" at lib/VCP/PodDESCRIPTIONParser.pm line 74.
[...]
t/01driver....................1/45 syntax error at 
/home/niko/tmp/libvcp-perl-0.9-20050110/blib/lib/VCP/Help.pm line 835, at EOF

which is because Pod::Text no longer uses Pod::Select in Perl 5.10.0.
Just using Pod::Select instead of Pod::Text in lib/VCP/Pod*.pm seems to
work.

With these and the usual fix for an unconditional removal of
/usr/lib/perl5, the package finally builds. 

There are still some test failures, but they don't seem to differ from
those present already on Etch, and the build doesn't stop on them.

I'm attaching the complete patch for your convenience and merging the
other FTBFS bug.

Cheers,
-- 
Niko Tyni   [EMAIL PROTECTED]
diff --git a/debian/rules b/debian/rules
index b832350..1f2b073 100755
--- a/debian/rules
+++ b/debian/rules
@@ -41,8 +41,6 @@ install: build
 
 	$(MAKE) install DESTDIR=$(TMP) PREFIX=/usr
 	
-	rmdir --ignore-fail-on-non-empty --parents $(TMP)/usr/lib/perl5
-
 # Build architecture-dependent files here.
 binary-arch: build install
 # We have nothing to do by default.
diff --git a/lib/RevML/Doctype/v0_35.pm b/lib/RevML/Doctype/v0_35.pm
index a106e8d..8068b91 100644
--- a/lib/RevML/Doctype/v0_35.pm
+++ b/lib/RevML/Doctype/v0_35.pm
@@ -3,7 +3,7 @@ package RevML::Doctype::v0_35 ;
 ##
 ## THIS FILE CREATED AUTOMATICALLY: YOU MAY LOSE ANY EDITS IF YOU MOFIFY IT.
 ##
-## When: Mon Sep 13 04:15:51 2004
+## When: Wed Aug  6 20:55:57 2008
 ## By:   RevML::Doctype, v0.1, (XML::Doctype, v0.11)
 ##
 
@@ -15,187 +15,136 @@ sub import {
    $XML::Doctype::_default_dtds{$callpkg} = $doctype ;
 }
 
-$doctype = bless( [
-  {
-    'ELTS' => 1,
-    'NAME' => 2,
-    'SYSID' => 3,
-    'PUBID' => 4
-  },
-  {
-    'lock' => bless( [
-      {
-        'PATHS' => 6,
-        'DECLARED' => 3,
-        'NAME' => 4,
-        'TODO' => 7,
-        'NAMES' => 5,
-        'CONTENT' => 2,
-        'ATTDEFS' => 1
-      },
-      undef,
-      '^(?:<time>)?<user_id>$',
-      1,
-      'lock',
-      [
+$doctype = bless( {
+  'ELTS' => {
+    'lock' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'lock',
+      'NAMES' => [
         'time',
         'user_id'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'source_filebranch_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'source_filebranch_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'content' => bless( [
-      {},
-      {
-        'encoding' => bless( [
-          {
-            'NAME' => 2,
-            'DEFAULT' => 1,
-            'TYPE' => 5,
-            'QUANT' => 4,
-            'OUT_DEFAULT' => 3
-          },
-          undef,
-          'encoding',
-          undef,
-          '#REQUIRED',
-          '(none|base64)'
-        ], 'XML::Doctype::AttDef' )
-      },
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'content',
-      [
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:<time>)?<user_id>$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'source_filebranch_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'source_filebranch_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'content' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'content',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'from_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'from_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'rev_root' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'rev_root',
-      [
+      ],
+      'ATTDEFS' => {
+        'encoding' => bless( {
+          'NAME' => 'encoding',
+          'DEFAULT' => undef,
+          'QUANT' => '#REQUIRED',
+          'TYPE' => '(none|base64)'
+        }, 'XML::Doctype::AttDef' )
+      },
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'from_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'from_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'rev_root' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'rev_root',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'branch_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'branch_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'sourcesafe_action' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'sourcesafe_action',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'name' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'name',
-      [
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'branch_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'branch_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'sourcesafe_action' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'sourcesafe_action',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'name' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'name',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'rep_type' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'rep_type',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'p4_action' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'p4_action',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'source_safe_info' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'source_safe_info',
-      [
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'rep_type' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'rep_type',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'p4_action' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'p4_action',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'source_safe_info' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'source_safe_info',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'delta' => bless( [
-      {},
-      {
-        'type' => bless( [
-          {},
-          undef,
-          'type',
-          undef,
-          '#REQUIRED',
-          '(diff-u)'
-        ], 'XML::Doctype::AttDef' ),
-        'encoding' => bless( [
-          {},
-          undef,
-          'encoding',
-          undef,
-          '#REQUIRED',
-          '(none|base64)'
-        ], 'XML::Doctype::AttDef' )
-      },
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'delta',
-      [
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'delta' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'delta',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'attrib' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'attrib',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'rev' => bless( [
-      {},
-      {
-        'id' => bless( [
-          {},
-          undef,
-          'id',
-          undef,
-          '#REQUIRED',
-          'CDATA'
-        ], 'XML::Doctype::AttDef' )
+      ],
+      'ATTDEFS' => {
+        'type' => bless( {
+          'NAME' => 'type',
+          'DEFAULT' => undef,
+          'QUANT' => '#REQUIRED',
+          'TYPE' => '(diff-u)'
+        }, 'XML::Doctype::AttDef' ),
+        'encoding' => bless( {
+          'NAME' => 'encoding',
+          'DEFAULT' => undef,
+          'QUANT' => '#REQUIRED',
+          'TYPE' => '(none|base64)'
+        }, 'XML::Doctype::AttDef' )
       },
-      '^<name><source_name><source_filebranch_id><source_repo_id><action>(?:<type>)?(?:<cvs_info>|<p4_info>|<source_safe_info>|<pvcs_info>)?(?:<branch_id><source_branch_id>)?<rev_id><source_rev_id>(?:<change_id><source_change_id>)?(?:<time>)?(?:<mod_time>)?(?:<user_id>)?(?:<p4_action>|<sourcesafe_action>)?(?:<label>)*(?:<lock>)?(?:<comment>)?(?:<previous_id>(?:<from_id>)?)?(?:<earlier_id>)*(?:<content>|<delta>)?(?:<digest>)?$',
-      1,
-      'rev',
-      [
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'attrib' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'attrib',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'rev' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'rev',
+      'NAMES' => [
         'earlier_id',
         'lock',
         'mod_time',
@@ -214,194 +163,171 @@ $doctype = bless( [
         'change_id',
         'name',
         'source_change_id',
-        'source_name',
         'p4_action',
-        'source_repo_id',
+        'source_name',
         'source_safe_info',
+        'source_repo_id',
         'delta',
         'comment',
         'action',
         'digest',
         'label',
+        'user_id',
         'cvs_info',
-        'type',
-        'user_id'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'user_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'user_id',
-      [
+        'type'
+      ],
+      'ATTDEFS' => {
+        'id' => bless( {
+          'NAME' => 'id',
+          'DEFAULT' => undef,
+          'QUANT' => '#REQUIRED',
+          'TYPE' => 'CDATA'
+        }, 'XML::Doctype::AttDef' )
+      },
+      'CONTENT' => '^<name><source_name><source_filebranch_id><source_repo_id><action>(?:<type>)?(?:<cvs_info>|<p4_info>|<source_safe_info>|<pvcs_info>)?(?:<branch_id><source_branch_id>)?<rev_id><source_rev_id>(?:<change_id><source_change_id>)?(?:<time>)?(?:<mod_time>)?(?:<user_id>)?(?:<p4_action>|<sourcesafe_action>)?(?:<label>)*(?:<lock>)?(?:<comment>)?(?:<previous_id>(?:<from_id>)?)?(?:<earlier_id>)*(?:<content>|<delta>)?(?:<digest>)?$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'type' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'type',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'cvs_info' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'cvs_info',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'type' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'type',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'cvs_info' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'cvs_info',
-      [
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'user_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'user_id',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'label' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'label',
-      [
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'label' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'label',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'trunk_rev_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'trunk_rev_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'earlier_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'earlier_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'time' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'time',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'mod_time' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'mod_time',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'source_branch_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'source_branch_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'source_rev_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'source_rev_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'pvcs_info' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<trunk_rev_id>|<attrib>|<char>)*$',
-      1,
-      'pvcs_info',
-      [
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'trunk_rev_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'trunk_rev_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'earlier_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'earlier_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'time' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'time',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'mod_time' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'mod_time',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'source_branch_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'source_branch_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'source_rev_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'source_rev_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'pvcs_info' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'pvcs_info',
+      'NAMES' => [
         'char',
         'attrib',
         'trunk_rev_id'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'p4_info' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'p4_info',
-      [
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<trunk_rev_id>|<attrib>|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'p4_info' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'p4_info',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'branches' => bless( [
-      {},
-      undef,
-      undef,
-      undef,
-      'branches',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'rev_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'rev_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'p4_branch_spec' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'p4_branch_spec',
-      [
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'branches' => bless( {
+      'NAME' => 'branches',
+      'NAMES' => [],
+      'ATTDEFS' => undef
+    }, 'XML::Doctype::ElementDecl' ),
+    'rev_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'rev_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'p4_branch_spec' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'p4_branch_spec',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'previous_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'previous_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'change_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'change_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'source_change_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'source_change_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'revml' => bless( [
-      {},
-      {
-        'version' => bless( [
-          {},
-          '0.35',
-          'version',
-          undef,
-          '#FIXED',
-          'CDATA'
-        ], 'XML::Doctype::AttDef' )
-      },
-      '^<time><rep_type><rep_desc>(?:<comment>)?<rev_root>(?:<branches>)?(?:<rev>)*$',
-      1,
-      'revml',
-      [
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'previous_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'previous_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'change_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'change_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'source_change_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'source_change_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'revml' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'revml',
+      'NAMES' => [
         'comment',
         'rev_root',
         'time',
@@ -409,146 +335,96 @@ $doctype = bless( [
         'branches',
         'rep_desc',
         'rep_type'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'source_name' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'source_name',
-      [
+      ],
+      'ATTDEFS' => {
+        'version' => bless( {
+          'NAME' => 'version',
+          'DEFAULT' => '0.35',
+          'QUANT' => '#FIXED',
+          'TYPE' => 'CDATA'
+        }, 'XML::Doctype::AttDef' )
+      },
+      'CONTENT' => '^<time><rep_type><rep_desc>(?:<comment>)?<rev_root>(?:<branches>)?(?:<rev>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'source_name' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'source_name',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'source_repo_id' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'source_repo_id',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'comment' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'comment',
-      [
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'source_repo_id' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'source_repo_id',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'comment' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'comment',
+      'NAMES' => [
         'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'char' => bless( [
-      {},
-      {
-        'code' => bless( [
-          {},
-          undef,
-          'code',
-          undef,
-          '#REQUIRED',
-          'CDATA'
-        ], 'XML::Doctype::AttDef' )
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'char' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'char',
+      'NAMES' => [],
+      'ATTDEFS' => {
+        'code' => bless( {
+          'NAME' => 'code',
+          'DEFAULT' => undef,
+          'QUANT' => '#REQUIRED',
+          'TYPE' => 'CDATA'
+        }, 'XML::Doctype::AttDef' )
       },
-      'EMPTY',
-      1,
-      'char',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'action' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'action',
-      []
-    ], 'XML::Doctype::ElementDecl' ),
-    'rep_desc' => bless( [
-      {},
-      undef,
-      '^(?:(?:#PCDATA)?|<char>)*$',
-      1,
-      'rep_desc',
-      [
-        'char'
-      ]
-    ], 'XML::Doctype::ElementDecl' ),
-    'digest' => bless( [
-      {},
-      {
-        'type' => bless( [
-          {},
-          undef,
-          'type',
-          undef,
-          '#REQUIRED',
-          '(MD5)'
-        ], 'XML::Doctype::AttDef' ),
-        'encoding' => bless( [
-          {},
-          undef,
-          'encoding',
-          undef,
-          '#REQUIRED',
-          '(base64)'
-        ], 'XML::Doctype::AttDef' )
+      'CONTENT' => 'EMPTY'
+    }, 'XML::Doctype::ElementDecl' ),
+    'action' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'action',
+      'NAMES' => [],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'digest' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'digest',
+      'NAMES' => [],
+      'ATTDEFS' => {
+        'type' => bless( {
+          'NAME' => 'type',
+          'DEFAULT' => undef,
+          'QUANT' => '#REQUIRED',
+          'TYPE' => '(MD5)'
+        }, 'XML::Doctype::AttDef' ),
+        'encoding' => bless( {
+          'NAME' => 'encoding',
+          'DEFAULT' => undef,
+          'QUANT' => '#REQUIRED',
+          'TYPE' => '(base64)'
+        }, 'XML::Doctype::AttDef' )
       },
-      '^(?:(?:#PCDATA)?)$',
-      1,
-      'digest',
-      []
-    ], 'XML::Doctype::ElementDecl' )
+      'CONTENT' => '^(?:(?:#PCDATA)?)$'
+    }, 'XML::Doctype::ElementDecl' ),
+    'rep_desc' => bless( {
+      'DECLARED' => 1,
+      'NAME' => 'rep_desc',
+      'NAMES' => [
+        'char'
+      ],
+      'ATTDEFS' => undef,
+      'CONTENT' => '^(?:(?:#PCDATA)?|<char>)*$'
+    }, 'XML::Doctype::ElementDecl' )
   },
-  'revml',
-  undef,
-  undef
-], 'RevML::Doctype' );
-$doctype->[1]{'source_filebranch_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'content'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'from_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'rev_root'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'branch_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'sourcesafe_action'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'name'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'rep_type'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'p4_action'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'source_safe_info'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'delta'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'delta'}[1]{'type'}[0] = $doctype->[1]{'content'}[1]{'encoding'}[0];
-$doctype->[1]{'delta'}[1]{'encoding'}[0] = $doctype->[1]{'content'}[1]{'encoding'}[0];
-$doctype->[1]{'attrib'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'rev'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'rev'}[1]{'id'}[0] = $doctype->[1]{'content'}[1]{'encoding'}[0];
-$doctype->[1]{'user_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'type'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'cvs_info'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'label'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'trunk_rev_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'earlier_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'time'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'mod_time'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'source_branch_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'source_rev_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'pvcs_info'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'p4_info'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'branches'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'rev_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'p4_branch_spec'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'previous_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'change_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'source_change_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'revml'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'revml'}[1]{'version'}[0] = $doctype->[1]{'content'}[1]{'encoding'}[0];
-$doctype->[1]{'source_name'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'source_repo_id'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'comment'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'char'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'char'}[1]{'code'}[0] = $doctype->[1]{'content'}[1]{'encoding'}[0];
-$doctype->[1]{'action'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'rep_desc'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'digest'}[0] = $doctype->[1]{'lock'}[0];
-$doctype->[1]{'digest'}[1]{'type'}[0] = $doctype->[1]{'content'}[1]{'encoding'}[0];
-$doctype->[1]{'digest'}[1]{'encoding'}[0] = $doctype->[1]{'content'}[1]{'encoding'}[0];
+  'SYSID' => undef,
+  'NAME' => 'revml',
+  'PUBID' => undef
+}, 'RevML::Doctype' );
 
  1 ;
diff --git a/lib/VCP/PodDESCRIPTIONParser.pm b/lib/VCP/PodDESCRIPTIONParser.pm
index de412d6..13f2889 100644
--- a/lib/VCP/PodDESCRIPTIONParser.pm
+++ b/lib/VCP/PodDESCRIPTIONParser.pm
@@ -24,8 +24,8 @@ Converts packages (any string matching /\w[:\w]+/) to filenames.
 
 $VERSION = 0.1 ;
 
-use Pod::Text;
[EMAIL PROTECTED] = qw( Pod::Text );
+use Pod::Select;
[EMAIL PROTECTED] = qw( Pod::Select );
 
 use strict;
 
diff --git a/lib/VCP/PodOPTIONSParser.pm b/lib/VCP/PodOPTIONSParser.pm
index 25cc6ec..c5cff51 100644
--- a/lib/VCP/PodOPTIONSParser.pm
+++ b/lib/VCP/PodOPTIONSParser.pm
@@ -24,8 +24,8 @@ Converts packages (any string matching /\w[:\w]+/) to filenames.
 
 $VERSION = 0.1 ;
 
-use Pod::Text;
[EMAIL PROTECTED] = qw( Pod::Text );
+use Pod::Select;
[EMAIL PROTECTED] = qw( Pod::Select);
 
 use strict;
 

Reply via email to