packages feed

hsc3-graphs-0.15: sh/mk-packages.sh

#!/bin/bash

function mk_packages
{
    i=$1.hs
    o=$1.packages
    grep '{- .* -}' $i | \
        sed -e 's/.*{- //g' | \
        sed -e 's/ -}//g' | \
        sort -u | \
        xargs echo | \
        sed -e 's/ /,/g' > $o
}

function mk_cabal
{
    o=$1.cabal
    read < $1.packages p
    echo "Executable hsc3-"$1 > $o
    echo " If !flag(build-exec)" >> $o
    echo "  buildable: False" >> $o
    echo " main-is: gr/"$1".hs" >> $o
    echo " build-depends: "$p >> $o
}

for i in *.hs ; do mk_packages $(basename $i .hs) ; done
for i in *.hs ; do mk_cabal $(basename $i .hs) ; done

c="../hsc3-graphs.cabal"
d=$(date)
echo "-- Auto-generated by sh/mk-packages.sh: "$d >> $c
cat *.cabal >> $c