Browse Source

Handle %undefine

Michael van Elst 23 years ago
parent
commit
34a68fb6bf
2 changed files with 9 additions and 3 deletions
  1. 7 1
      openpkg-tool/openpkg-index.pl
  2. 2 2
      openpkg-tool/openpkg-tool.spec

+ 7 - 1
openpkg-tool/openpkg-index.pl

@@ -321,6 +321,12 @@ sub package2data ($$) {
             } else {
                 $var{$1} = $2;
             }
+        } elsif ($v =~ /^\#(?:undefine)\s*(\S+)\s*$/) {
+            if (exists $evar{$1}) {
+                $evar{$1} = "\%\{$1\}";
+            } else {
+                delete $var{$1};
+            }
         } elsif ($v =~ /^\#(?:provides)\s*(\S+)\s*(.*?)\s*$/) {
             #
             # store option for current condition
@@ -372,7 +378,7 @@ sub spec2data ($) {
     $s =~ s/^\s*#.*?\n//mg;
 
     # map commands
-    $s =~ s/^%(ifdef|ifndef|if|NoSource|option|define|else|endif|\{)/#$1/mg;
+    $s =~ s/^%(ifdef|ifndef|if|NoSource|option|undefine|define|else|endif|\{)/#$1/mg;
 
     # split sections
     foreach (split(/^(?=%\w+\s*\n)/m, $s)) {

+ 2 - 2
openpkg-tool/openpkg-tool.spec

@@ -32,8 +32,8 @@ Packager:     The OpenPKG Project
 Distribution: OpenPKG [EVAL]
 Group:        Bootstrapping
 License:      GPL
-Version:      20030110
-Release:      20030110
+Version:      20030113
+Release:      20030113
 
 #   list of sources
 Source0:      openpkg.sh