diff options
author | David Waern <david.waern@gmail.com> | 2007-11-10 17:19:48 +0000 |
---|---|---|
committer | David Waern <david.waern@gmail.com> | 2007-11-10 17:19:48 +0000 |
commit | 3cd9016f5263741a38b904d1dad474abff8c2f3e (patch) | |
tree | 975158657f34fd549d96bd18e2fecb9d8af8dc2e /src/Main.hs | |
parent | 08b75f838779c59083e4f693ed2b002d5ac2c49f (diff) |
FIX: contents and index should include external package modules when --gen-contents/--gen-index
Diffstat (limited to 'src/Main.hs')
-rw-r--r-- | src/Main.hs | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/src/Main.hs b/src/Main.hs index 443466de..c342430b 100644 --- a/src/Main.hs +++ b/src/Main.hs @@ -121,10 +121,12 @@ main = handleTopExceptions $ do -- render the interfaces updateHTMLXRefs packages - render flags interfaces + let ifaceFiles = map fst packages + let installedIfaces = concatMap ifInstalledIfaces ifaceFiles + render flags interfaces installedIfaces -- last but not least, dump the interface file! - dumpInterfaceFile (map toInstalledInterface interfaces) homeLinks flags + dumpInterfaceFile (map toInstalledIface interfaces) homeLinks flags ------------------------------------------------------------------------------- @@ -133,8 +135,8 @@ main = handleTopExceptions $ do -- | Render the interfaces with whatever backend is specified in the flags -render :: [Flag] -> [Interface] -> IO () -render flags interfaces = do +render :: [Flag] -> [Interface] -> [InstalledInterface] -> IO () +render flags interfaces installedIfaces = do let title = case [str | Flag_Heading str <- flags] of [] -> "" @@ -181,27 +183,32 @@ render flags interfaces = do prologue <- getPrologue flags let - visibleMods = [ m | m <- interfaces, OptHide `notElem` (ifaceOptions m) ] - installedIfaces = map toInstalledInterface visibleMods - packageName = (Just . modulePkgStr . ifaceMod . head) visibleMods + -- visible home-module interfaces + visibleIfaces = [ m | m <- interfaces, OptHide `notElem` (ifaceOptions m) ] + + -- *all* visible interfaces including external package modules + allVisibleIfaces = map toInstalledIface visibleIfaces + ++ installedIfaces + + packageName = (Just . modulePkgStr . ifaceMod . head) visibleIfaces when (Flag_GenIndex `elem` flags) $ do ppHtmlIndex odir title packageName maybe_html_help_format maybe_contents_url maybe_source_urls maybe_wiki_urls - installedIfaces + allVisibleIfaces copyHtmlBits odir libdir css_file when (Flag_GenContents `elem` flags && Flag_GenIndex `elem` flags) $ do - ppHtmlHelpFiles title packageName visibleMods odir maybe_html_help_format [] + ppHtmlHelpFiles title packageName visibleIfaces odir maybe_html_help_format [] when (Flag_GenContents `elem` flags) $ do ppHtmlContents odir title packageName maybe_html_help_format maybe_index_url maybe_source_urls maybe_wiki_urls - installedIfaces True prologue + allVisibleIfaces True prologue copyHtmlBits odir libdir css_file when (Flag_Html `elem` flags) $ do - ppHtml title packageName visibleMods odir + ppHtml title packageName visibleIfaces odir prologue maybe_html_help_format maybe_source_urls maybe_wiki_urls maybe_contents_url maybe_index_url |