Fix gen_contents_index on MSYS
[ghc-hetmet.git] / libraries / gen_contents_index
1 #!/bin/sh
2
3 set -e
4
5 HADDOCK_ARGS=
6
7 case $* in
8 --inplace)
9     HADDOCK=../inplace/bin/haddock
10     HADDOCK_FILES1=`ls -1     */dist-install/doc/html/*/*.haddock | sort`
11     HADDOCK_FILES2=`ls -1 dph/*/dist-install/doc/html/*/*.haddock | sort`
12     HADDOCK_FILES="$HADDOCK_FILES1 $HADDOCK_FILES2"
13     for HADDOCK_FILE in $HADDOCK_FILES
14     do
15         LIBPATH=`echo "$HADDOCK_FILE" | sed 's#/dist-install.*##'`
16         NAME=`echo "$HADDOCK_FILE" | sed 's#.*/##' | sed 's#\.haddock$##'`
17         VERSION=`grep -i '^version:' $LIBPATH/$NAME.cabal | sed 's/.*[[:space:]]//'`
18         HADDOCK_ARG="--read-interface=${NAME}-${VERSION},$HADDOCK_FILE"
19         HADDOCK_ARGS="$HADDOCK_ARGS $HADDOCK_ARG"
20     done
21     ;;
22 *)
23     HADDOCK=../../../../../bin/haddock
24     # We don't want the GHC API to swamp the index
25     HADDOCK_FILES=`ls -1 */*.haddock | grep -v '/ghc\.haddock' | sort`
26     for HADDOCK_FILE in $HADDOCK_FILES
27     do
28         NAME_VERSION=`echo "$HADDOCK_FILE" | sed 's#/.*##'`
29         HADDOCK_ARG="--read-interface=${NAME_VERSION},$HADDOCK_FILE"
30         HADDOCK_ARGS="$HADDOCK_ARGS $HADDOCK_ARG"
31     done
32     ;;
33 esac
34
35 # Now create the combined contents and index pages
36 $HADDOCK --gen-index --gen-contents -o . \
37          -t "Haskell Hierarchical Libraries" \
38          -p "prologue.txt" \
39          $HADDOCK_ARGS
40
41 # Unhandled Windows help stuff?:
42
43 #libraries.HxS : libraries.txt
44 #        haddock ...
45 #               -k libraries
46 #               --html-help=mshelp2
47 #       ( cd $(HTML_DIR) && if Hxcomp -p libraries.HxC -o ../$@ ; then false ; else true ; fi ) || true
48 #
49 #libraries.chm : libraries.txt
50 #       haddock ...
51 #               -k libraries \
52 #               --html-help=mshelp \
53 #       ( cd $(HTML_DIR) && if hhc libraries.hhp ; then false ; else true ; fi && mv libraries.chm .. ) || true
54