Add several new record features
[ghc-hetmet.git] / libraries / gen_contents_index
1 #!/bin/sh
2
3 set -e
4
5 if [ -e base/dist ]
6 then
7     HADDOCK_FILES=`ls -1 */dist/doc/html/*/*.haddock | sort`
8 else
9     HADDOCK_FILES=`ls -1 */*.haddock | sort`
10 fi
11
12 # Automagically create the prologue for the combined index via a
13 # header, the package prologues (in alphabetical order of the
14 # packages) and a footer.
15 {
16     cat libraries-header.txt
17     echo
18     # Hack to find out if we're in a build tree or installed docs
19     for HADDOCK_FILE in $HADDOCK_FILES
20     do
21         NAME=`echo "$HADDOCK_FILE" | sed "s#/.*##"`
22         if [ "$NAME" != haskell98 ]
23         then
24             echo "[@${NAME}@]"
25             grep -v '^ *$$' "$NAME"/prologue.txt
26             echo
27             HADDOCK_ARGS="$HADDOCK_ARGS --read-interface=$NAME,$HADDOCK_FILE"
28         fi
29     done
30     cat libraries-footer.txt
31     echo
32 } > libraries.txt
33
34 # Now create the combined contents and index pages
35 haddock --gen-index --gen-contents -o . \
36         -t "Haskell Hierarchical Libraries" \
37         -p libraries.txt \
38         $HADDOCK_ARGS
39
40 # Unhandled Windows help stuff?:
41
42 #libraries.HxS : libraries.txt
43 #        haddock ...
44 #               -k libraries
45 #               --html-help=mshelp2
46 #       ( cd $(HTML_DIR) && if Hxcomp -p libraries.HxC -o ../$@ ; then false ; else true ; fi ) || true
47 #
48 #libraries.chm : libraries.txt
49 #       haddock ...
50 #               -k libraries \
51 #               --html-help=mshelp \
52 #       ( cd $(HTML_DIR) && if hhc libraries.hhp ; then false ; else true ; fi && mv libraries.chm .. ) || true
53