X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=libraries%2Fgen_contents_index;h=04209fdb8fc70502717b1c9cf6d45b27c08ecad9;hp=99efc8fcc605d23cd6a2a3cbae09ad619bb77dc5;hb=e5c3b478b3cd1707cf122833822f44b2ac09b8e9;hpb=6f476448854b3775b806b6a07a530aa2b70ea02f diff --git a/libraries/gen_contents_index b/libraries/gen_contents_index index 99efc8f..04209fd 100644 --- a/libraries/gen_contents_index +++ b/libraries/gen_contents_index @@ -3,28 +3,38 @@ set -e HADDOCK_ARGS= -NAMES= case $* in --inplace) HADDOCK=../inplace/bin/haddock - HADDOCK_FILES=`ls -1 */dist-install/doc/html/*/*.haddock | sort` - HADDOCK_FILES="$HADDOCK_FILES `ls -1 dph/*/dist-install/doc/html/*/*.haddock | sort`" + for LIB in `grep '^libraries/[^ ]* *- ' ../packages | sed -e 's#libraries/##' -e 's/ .*//'` + do + HADDOCK_FILE="$LIB/dist-install/doc/html/$LIB/$LIB.haddock" + if [ -f "$HADDOCK_FILE" ] + then + LIBPATH=`echo "$HADDOCK_FILE" | sed 's#/dist-install.*##'` + NAME=`echo "$HADDOCK_FILE" | sed 's#.*/##' | sed 's#\.haddock$##'` + # It's easier to portably remove tabs with tr than to try to get + # sed to do what we want + VERSION=`grep -i '^version:' $LIBPATH/$NAME.cabal | sed 's/.*://' | tr -d ' \t'` + HADDOCK_ARG="--read-interface=${NAME}-${VERSION},$HADDOCK_FILE" + HADDOCK_ARGS="$HADDOCK_ARGS $HADDOCK_ARG" + fi + done ;; *) - HADDOCK=../../../../bin/haddock + HADDOCK=../../../../../bin/haddock # We don't want the GHC API to swamp the index - HADDOCK_FILES=`ls -1 */*.haddock | grep -v "ghc/" | sort` + HADDOCK_FILES=`ls -1 */*.haddock | grep -v '/ghc\.haddock' | sort` + for HADDOCK_FILE in $HADDOCK_FILES + do + NAME_VERSION=`echo "$HADDOCK_FILE" | sed 's#/.*##'` + HADDOCK_ARG="--read-interface=${NAME_VERSION},$HADDOCK_FILE" + HADDOCK_ARGS="$HADDOCK_ARGS $HADDOCK_ARG" + done ;; esac -for HADDOCK_FILE in $HADDOCK_FILES -do - NAME=` echo "$HADDOCK_FILE" | sed 's#.*/##' | sed 's#\.haddock$##' ` - HADDOCK_ARGS="$HADDOCK_ARGS --read-interface=$NAME,$HADDOCK_FILE" - NAMES="$NAMES $NAME" -done - # Now create the combined contents and index pages $HADDOCK --gen-index --gen-contents -o . \ -t "Haskell Hierarchical Libraries" \