Hi Goswin,

this is my attempt on version mangling, it works at least for the
packages I needed right now.

Diffed vs. svn r327.


Andreas
Index: ia32-libs-tools/convert
===================================================================
--- ia32-libs-tools/convert	(revision 327)
+++ ia32-libs-tools/convert	(working copy)
@@ -41,7 +41,22 @@
   | while read LINE; do
       echo "$LINE" | tr "|" "\n" \
       | while read PKG2 VER2; do
-          echo " $($RENAME "$PKG2") $VER2 "
+          PKG2NEW="$($RENAME "$PKG2")"
+	  if [ "$PKG2" != "$PKG2NEW" ]; then
+            case "$VER2" in
+              (\(*\ $VER\))
+                echo " $($RENAME "$PKG2") $(echo "$VER2" | sed -e "s/ $VER/ $NEWVER/") "
+                ;;
+              (\(\>*\)|\(=*\))
+                echo " $($RENAME "$PKG2") $(echo "$VER2" | sed -e "s/ *)/~...@version@)/") "
+                ;;
+              (*)
+                echo " $($RENAME "$PKG2") $VER2 "
+                ;;
+            esac
+          else
+            echo " $($RENAME "$PKG2") $VER2 "
+          fi
         done | tr '\n' '|' | sed 's/  / /g' | sed 's/ |$/,/'
     done | tr '\n' ',' | sed 's/ \(.*\),/\1\n/'
 }
@@ -164,9 +179,9 @@
     DEPPKG="$PKG"
   fi
   if grep -q "^Depends:" DEBIAN/control; then
-    sed -i "s/Depends: /Depends: $DEPPKG (= $VER), /" DEBIAN/control
+    sed -i "s/Depends: /Depends: $DEPPKG (>= ${VER%%+b*}), $DEPPKG (<= ${VER%%+b*}+b99), /" DEBIAN/control
   else
-    echo "Depends: $DEPPKG (= $VER)" >>DEBIAN/control
+    echo "Depends: $DEPPKG (>= ${VER%%+b*}), $DEPPKG (<= ${VER%%+b*}+b99)" >>DEBIAN/control
   fi
 
   # FIXME: use mangle

Reply via email to