Use a descriptive variable name, instead of $REPLY.
[invirt/packages/invirt-dev.git] / invirt-build-release
index ea09e2c..9dd40c1 100755 (executable)
@@ -1,4 +1,5 @@
 #!/bin/bash
+distribution=hardy
 svnuri="$(invirt-getconf svn.uri)"
 
 set -e
@@ -12,13 +13,29 @@ for package; do
     svn export $svnuri/trunk/packages/$package build-release/$package
     cd build-release/$package
     
-    eval  `perl '-F:\s+' -lane 'print  $F[0]."=".$F[1] if /^Version|^Source|^Distribution/' \
-        <(dpkg-parsechangelog)`
-    
+    eval $(perl -ne 'print if s/^(Version|Source|Distribution): /\1=/' \
+             <(dpkg-parsechangelog))
     dpkg-buildpackage -us -uc -rfakeroot -S
     cd ..
-    sbuild -A -d hardy-amd64 "${Source}_${Version}.dsc"
-    
+    arch_any=0
+    sed -ne 's/^Architecture: //p' ${Source}_${Version}.dsc | while read arch; do
+        case "$arch" in
+            all)
+                ;;
+            any)
+                arch_any=1;;
+            *)
+                echo "invirt-build-release: arch '$Architecture' unimplemented" >&2
+                exit 1;;
+        esac
+    done
+    if [ $arch_any -eq 0 ]; then
+        sbuild -d $distribution --arch-all   ${Source}_${Version}.dsc
+    else
+        sbuild -d $distribution --arch amd64 --arch-all ${Source}_${Version}.dsc
+        sbuild -d $distribution --arch i386  ${Source}_${Version}.dsc
+    fi
+
     if ! svn ls $svnuri/package_tags/$Source >/dev/null 2>&1; then
         svn mkdir $svnuri/package_tags/$Source \
             -m "Create package tags directory"
@@ -31,15 +48,14 @@ for package; do
     fi
     
     [ $Distribution = 'unstable' ] \
-        || echo "$(basename $0): warning: Distribution is ${Distribution}, script expects unstable"
+        || echo "$(basename $0): warning: Distribution is $Distribution, script expects unstable"
     changesfile=`pwd`/${Source}_*${Version}*.changes
     for i in $changesfile; do
         reprepro-env include unstable $i
-        reprepro-env copy stable unstable \
-           $(perl '-F:\s+' -lane 'print $F[1]." " if /^Binary/' <$i)
+        reprepro-env copy stable unstable $(sed -ne 's/^Binary: //p' $i)
     done
-    reprepro-env copy stable unstable ${Source}
+    reprepro-env copy stable unstable $Source
     
     cd ..
-    rm -rf build-release
+    rm -rf build-release/$package
 done