diff options
author | Joachim Breitner <mail@joachim-breitner.de> | 2010-01-13 14:48:02 +0000 |
---|---|---|
committer | Joachim Breitner <mail@joachim-breitner.de> | 2010-01-13 14:48:02 +0000 |
commit | d22c8a42bfa0d6f065929ce33bee9cc6abdb9da3 (patch) | |
tree | 092a7c17fab7cf60a63640cc2296dea1f6a353fc /Dh_Haskell.sh | |
parent | 3cbc445df013c0f9e1c6addcdb5ce18d77939b12 (diff) |
Create dh_haskell_provides
Diffstat (limited to 'Dh_Haskell.sh')
-rw-r--r-- | Dh_Haskell.sh | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/Dh_Haskell.sh b/Dh_Haskell.sh index f15dc48..74d95ca 100644 --- a/Dh_Haskell.sh +++ b/Dh_Haskell.sh @@ -68,6 +68,18 @@ providing_package_for_ghc6_prof(){ echo $package } +cabal_package_ids(){ + local config + local package_ids + until [ -z "$1" ] + do + config=$1 + package_ids="$package_ids `grep-dctrl -n -i -s Id "" $config`" + shift + done + echo $package_ids +} + cabal_depends(){ local config local dep @@ -111,6 +123,32 @@ depends_for_ghc6_prof(){ dependencies $packages } +provides_for_ghc6(){ + local dep + local packages + for package_id in `cabal_package_ids $@` ; do + packages=", $packages `package_id_to_virtual_package dev $package_id`" + done + echo $packages | sed -e 's/^,[ ]*//' +} + +provides_for_ghc6_prof(){ + local dep + local packages + for package_id in `cabal_package_ids $@` ; do + packages=", $packages `package_id_to_virtual_package prof $package_id`" + done + echo $packages | sed -e 's/^,[ ]*//' +} + +package_id_to_virtual_package(){ + local type + local id + type="$1" + echo $2 | tr A-Z a-z | \ + perl -pe 's/([a-z0-9]+)-([0-9\.]+)-(.....).........................../libghc6-\1-'$type'-\2-\3/' +} + depends_for_hugs(){ local version local upstream_version |