]> err.no Git - dpkg/commitdiff
Cleanup second pass parsing of dependency fields
authorGuillem Jover <guillem@debian.org>
Tue, 28 Aug 2007 01:24:06 +0000 (04:24 +0300)
committerGuillem Jover <guillem@debian.org>
Tue, 28 Aug 2007 02:11:35 +0000 (05:11 +0300)
ChangeLog
scripts/dpkg-gencontrol.pl

index aefeb62b5d9ba9e5e5db13f9e7596fd4f7dff9c7..143d00357523fc4289599f57a69b3e4be69ce16b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2007-08-28  Guillem Jover  <guillem@debian.org>
+
+       * scripts/dpkg-gencontrol.pl: Add comments about the second pass
+       parsing for dependency fields. Remove handling of uninteresting fields
+       in the second pass parsing.
+
 2007-08-24  Guillem Jover  <guillem@debian.org>
 
        * scripts/dpkg-gencontrol.pl: Allow a package stanza to override the
index 9a9524b314cf5df49ae1525e60af5b8bf1ae17b2..868d640196f7954cf959accf58f4e598808cd9c4 100755 (executable)
@@ -160,6 +160,7 @@ for $_ (keys %fi) {
         if (m/^(Package|Description|Homepage|Essential|Optional)$/) {
             $f{$_}= $v;
         } elsif (exists($pkg_dep_fields{$_})) {
+           # Delay the parsing until later
         } elsif (m/^Section$|^Priority$/) {
             $spvalue{$_}= $v;
         } elsif (m/^Architecture$/) {
@@ -213,25 +214,18 @@ $f{'Version'} = $forceversion if defined($forceversion);
 &init_substvars;
 init_substvar_arch();
 
+# Process dependency fields in a second pass, now that substvars have been
+# initialized.
+
 for $_ (keys %fi) {
     my $v = $fi{$_};
 
-    if (s/^C //) {
-    } elsif (s/^C$myindex //) {
-        if (m/^(Package|Description|Essential|Optional)$/) {
-        } elsif (exists($pkg_dep_fields{$_})) {
+    if (s/^C$myindex //) {
+        if (exists($pkg_dep_fields{$_})) {
            my $dep = parsedep(substvars($v), 1, 1);
            &error(sprintf(_g("error occurred while parsing %s"), $_)) unless defined $dep;
             $f{$_}= showdep($dep, 0);
-        } elsif (m/^Section$|^Priority$/) {
-        } elsif (m/^Architecture$/) {
-        } elsif (s/^X[CS]*B[CS]*-//i) {
-        } elsif (!m/^X[CS]+-/i) {
         }
-    } elsif (m/^C\d+ /) {
-    } elsif (s/^L //) {
-    } elsif (m/o:/) {
-    } else {
     }
 }