- drop binlib packages from bin rpm hack

- special-case haskell-platform bin
- bring back utf8-string
- include ghc lib since we subpackage it
This commit is contained in:
Jens Petersen 2010-06-03 12:38:38 +00:00
parent 0cb619abe6
commit 63986ca7f5
1 changed files with 17 additions and 7 deletions

View File

@ -3,7 +3,7 @@
# script to generate dependency graph for fedora haskell libraries
# requires ghc, ghc-*-devel and graphviz to be installed
set -e
set -e +x
mkdir -p .pkg-deps
@ -12,10 +12,20 @@ cd .pkg-deps
# remove the closing line
ghc-pkg dot --global | sed '$d' > pkgs.dot
# check for binary deps too
for i in alex cabal-install cpphs darcs happy haskell-platform hedgewars hscolour kaya xmonad; do
PKG=`rpm -q --qf "%{name}-%{version}" $i` || echo $i is not installed
rpm -q --requires $i | grep ghc6 | sed -e "s/libHS/\"$PKG\" -> \"/g" -e "s/-ghc6.*/\"/" >> pkgs.dot
# check for binary deps too (but not binlib)
for i in alex cabal-install happy haskell-platform hedgewars kaya; do
PKG_THERE=yes
PKG=`rpm -q --qf "%{name}-%{version}" $i` || PKG_THERE=no
if [ "$PKG_THERE" = "yes" ]; then
case $i in
haskell-platform)
rpm -q --requires $i | grep -v rpmlib | grep -v ghc | sed -e "s/^/\"$PKG\" -> \"/g" -e "s/ = \(.*\)/-\1\"/" >> pkgs.dot
;;
*)
rpm -q --requires $i | grep ghc6 | sed -e "s/libHS/\"$PKG\" -> \"/g" -e "s/-ghc6.*/\"/" >> pkgs.dot
;;
esac
fi
done
# and add it back
@ -23,8 +33,8 @@ echo "}" >> pkgs.dot
cp -p pkgs.dot pkgs.dot.orig
# ignore library packages provided by ghc
GHC_PKGS="array base-4 base-3 bin-package-db bytestring Cabal containers directory dph extensible-exceptions filepath ffi ghc-6.12 ghc-binary ghc-prim haskell98 hpc integer-gmp old-locale old-time pretty process random rts syb template-haskell time unix utf8-string-0.3.4 Win32"
# ignore library packages provided by ghc (except ghc-6.12)
GHC_PKGS="array base-4 base-3 bin-package-db bytestring Cabal containers directory dph extensible-exceptions filepath ffi ghc-binary ghc-prim haskell98 hpc integer-gmp old-locale old-time pretty process random rts syb template-haskell time unix Win32"
for i in $GHC_PKGS; do sed -i -e /$i/d pkgs.dot; done
cat pkgs.dot | tred | dot -Nfontsize=8 -Tsvg >pkgs.svg