tag 398384 patch usertag 398384 supplied-patch thanks Hi,
As my previous NMU has caused this error I have prepared another NMU to
fix this bug. As the freeze is coming real soon now I will upload this
NMU as soon as I have verified it works correct.
The interdiff between the last two versions is attached.
Greetings Arjan
hs-plugins (0.9.10-3.4) unstable; urgency=high
* Non-maintainer upload.
* Set urgency to high to get the fixed version in etch.
* Fix failure to install due tue missing dependencies (Closes: #398384):
- debian/mk-haskell-depends: update script to take installed package
configuration files as arguments.
- debian/rules: call debian/mk-haskell-depends script with the
installed package configuration files as arguments.
* debian/rules: properly cleanup leftover
docs/hs-plugins.{aux,dvi,log,ps} on clean.
diff -u hs-plugins-0.9.10/debian/changelog hs-plugins-0.9.10/debian/changelog
--- hs-plugins-0.9.10/debian/changelog
+++ hs-plugins-0.9.10/debian/changelog
@@ -1,3 +1,17 @@
+hs-plugins (0.9.10-3.4) unstable; urgency=high
+
+ * Non-maintainer upload.
+ * Set urgency to high to get the fixed version in etch.
+ * Fix failure to install due tue missing dependencies (Closes: #398384):
+ - debian/mk-haskell-depends: update script to take installed package
+ configuration files as arguments.
+ - debian/rules: call debian/mk-haskell-depends script with the
+ installed package configuration files as arguments.
+ * debian/rules: properly cleanup leftover
+ docs/hs-plugins.{aux,dvi,log,ps} on clean.
+
+ -- Arjan Oosting <[EMAIL PROTECTED]> Mon, 13 Nov 2006 21:49:53 +0100
+
hs-plugins (0.9.10-3.3) unstable; urgency=low
* Non-maintainer upload.
diff -u hs-plugins-0.9.10/debian/rules hs-plugins-0.9.10/debian/rules
--- hs-plugins-0.9.10/debian/rules
+++ hs-plugins-0.9.10/debian/rules
@@ -36,6 +36,7 @@
rm -f build-stamp configure
-$(MAKE) distclean configure
-(cd docs; $(MAKE) clean)
+ rm -f docs/hs-plugins.aux docs/hs-plugins.dvi docs/hs-plugins.log docs/hs-plugins.ps
dh_clean
install: build
@@ -71,7 +72,7 @@
dh_fixperms
dh_installdeb
dh_shlibdeps
- sh -e debian/mk-haskell-depends
+ sh -e debian/mk-haskell-depends -Xaltdata -Xhi -Xplugings debian/libghc6-plugins-dev/usr/lib/haskell-packages/ghc6/lib/hs-plugins-*/*.installed-pkg-config
dh_gencontrol
dh_md5sums
dh_builddeb
diff -u hs-plugins-0.9.10/debian/mk-haskell-depends hs-plugins-0.9.10/debian/mk-haskell-depends
--- hs-plugins-0.9.10/debian/mk-haskell-depends
+++ hs-plugins-0.9.10/debian/mk-haskell-depends
@@ -63,13 +63,33 @@
}
dependency(){
+ local deb
+ local version
+ local next_upstream_version
deb=$1
version=`dpkg-query --showformat='${Version}' -W $deb`
next_upstream_version=`echo $version | sed -e 's/-[^-]*$/+/'`
echo "$deb (>= $version), $deb (<< $next_upstream_version)"
}
+dependencies(){
+ local deb
+ local debs
+ local deps
+ debs=$@
+ for deb in `sort_uniq $debs` ; do
+ deps="$deps, `dependency $deb`"
+ done
+
+ echo $deps | sed -e 's/^,[ ]*//'
+}
+
providing_package_for_ghc6(){
+ local deb
+ local dep
+ local dir
+ local dirs
+ local lib
dep=$1
dirs=`ghc-pkg6 field $dep library-dirs | cut -d':' -f 2`
lib=`ghc-pkg6 field $dep hs-libraries | sed -e 's|hs-libraries: *\([^ ]*\).*|\1|' `
@@ -83,6 +103,11 @@
}
providing_package_for_ghc6_prof(){
+ local deb
+ local dep
+ local dir
+ local dirs
+ local lib
dep=$1
dirs=`ghc-pkg6 field $dep library-dirs | cut -d':' -f 2`
lib=`ghc-pkg6 field $dep hs-libraries | sed -e 's|hs-libraries: *\([^ ]*\).*|\1|' `
@@ -95,38 +120,52 @@
echo $deb
}
+cabal_depends(){
+ local config
+ local dep
+ local depends
+ local final_depends
+ until [ -z "$1" ]
+ do
+ config=$1
+ depends="$depends `grep-dctrl -n -i -s Depends "" $config | tr "," " "`"
+ shift
+ done
+ for dep in `sort_uniq $depends` ; do
+ # The package is not mentioned in the ignored package list with the same version
+ # or mentioned without any version in the ignored package list?
+ if echo " $ignores " | grep -qv " $dep " &&
+ echo " $ignores " | grep -qv " `echo $dep | sed s%-[0-9][.0-9a-zA-Z]*$%%` " ;
+ then
+ final_depends="$final_depends $dep"
+ fi
+ done
+ echo $final_depends
+}
depends_for_ghc6(){
- config=$1
- cabal_depends=`grep-dctrl -n -i -s Depends "" $config | tr "," " "`
-
- for dep in $cabal_depends ; do
+ local dep
+ local debs
+ for dep in `cabal_depends [EMAIL PROTECTED] ; do
debs="$debs `providing_package_for_ghc6 $dep`"
done
- for deb in `sort_uniq $debs` ; do
- deps="$deps, `dependency $deb`"
- done
-
- echo $deps | sed -e 's/^,[ ]*//'
+ dependencies $debs
}
depends_for_ghc6_prof(){
- config=$1
- cabal_depends=`grep-dctrl -n -i -s Depends "" $config | tr "," " "`
-
- for dep in $cabal_depends ; do
+ local dep
+ local debs
+ for dep in `cabal_depends [EMAIL PROTECTED] ; do
debs="$debs `providing_package_for_ghc6_prof $dep`"
done
- for deb in `sort_uniq $debs` ; do
- deps="$deps, `dependency $deb`"
- done
-
- echo $deps | sed -e 's/^,[ ]*//'
+ dependencies $debs
}
find_config_for_ghc6(){
+ local f
+ local pkg
pkg=$1
case "$pkg" in
libghc6-*-prof)
@@ -152,32 +191,60 @@
-for pkg in `dh_listpackages [EMAIL PROTECTED]; do
+args=
+ignores=
+files=
+until [ -z "$1" ]
+do
+ case "$1" in
+ -X*)
+ pkg=${1##-X}
+ ignores="$ignores $pkg"
+ ;;
+
+ --exclude=*)
+ pkg=${1##--exclude=}
+ ignores="$ignores $pkg"
+ ;;
+
+ -*)
+ args="$args $1"
+ ;;
+ *)
+ if [ -f $1 ] ; then
+ files="$files $1"
+ else
+ echo "Installed package description file $1 can not be found" >&2
+ exit 1
+ fi
+ ;;
+ esac
+ shift
+done
+
+for pkg in `dh_listpackages $args`; do
sfile=debian/$pkg.substvars
touch $sfile
case "$pkg" in
- libghc6-*-prof)
- grep -v ^haskell:Depends $sfile > $sfile.tmp || true
+ libghc6-*-dev|libghc6-*-prof)
config=`find_config_for_ghc6 $pkg`
if [ -f "$config" ] ; then
- echo "haskell:Depends=`depends_for_ghc6_prof $config`" >> $sfile.tmp
- else
- echo "haskell:Depends=`dependency ghc6-prof`" >> $sfile.tmp
+ files="$files $config"
fi
- mv $sfile.tmp $sfile
- ;;
-
- libghc6-*-dev)
- grep -v ^haskell:Depends $sfile > $sfile.tmp || true
- config=`find_config_for_ghc6 $pkg`
- if [ -f "$config" ] ; then
- echo "haskell:Depends=`depends_for_ghc6 $config`" >> $sfile.tmp
- else
- echo "haskell:Depends=`dependency ghc6`" >> $sfile.tmp
+ if [ -z "$files" ] ; then
+ echo "No installed package description files can not be found" >&2
+ exit 1
fi
+ grep -v ^haskell:Depends $sfile > $sfile.tmp || true
+ case "$pkg" in
+ libghc6-*-dev)
+ echo "haskell:Depends=`depends_for_ghc6 $files`" >> $sfile.tmp
+ ;;
+ libghc6-*-prof)
+ echo "haskell:Depends=`depends_for_ghc6_prof $files`" >> $sfile.tmp
+ ;;
+ esac
mv $sfile.tmp $sfile
;;
-
*)
;;
esac
done
-
signature.asc
Description: Dit berichtdeel is digitaal ondertekend

