Hi, Am Freitag, den 15.04.2011, 19:05 +0530 schrieb Joachim Breitner: > I have a vague feeling that we do not need to Build-Depend on the -doc > files of the dependencies. I think haddock is creating the links > “blindly”, only relying on the haddock-html field in the ghc-pkg data > base, so having the .html and .haddock files available is not required. > > If someone has time to verify that, that would be great. > > We would have to change the Recommends-list-generating code in > haskell-devscripts, but it is safe to assume that for a link pointing > to /usr/share/doc/<foo>/html, we can Recommend: <foo>. Maybe such code > could be put in a separate script, as it is not really tied to Haskell. my vague feeling was wrong, Cabal checks whether the interface is present before telling haddock to link to that package: interfaces <- sequence [ case interfaceAndHtmlPath ipkg of Nothing -> return (Left (packageId ipkg)) Just (interface, html) -> do exists <- doesFileExist interface if exists then return (Right (interface, html)) else return (Left (packageId ipkg)) | ipkg <- PackageIndex.allPackages transitiveDeps ] let missing = [ pkgid | Left pkgid <- interfaces ] warning = "The documentation for the following packages are not " ++ "installed. No links will be generated to these packages: " ++ intercalate ", " (map display missing) flags = [ (interface, if null html then Nothing else Just html) | Right (interface, html) <- interfaces ] so we need to keep depending on the -doc packages. Also, this means that docs built now do not contain links to docs of dependencies built before 7.0.3, at least not until we either install the symlink-workaround or patch haddock _and_ Cabal to transparently map the wrong path to the right path. Greetings, Joachim -- Joachim "nomeata" Breitner Debian Developer nomeata@debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C JID: nomeata@joachim-breitner.de | http://people.debian.org/~nomeata
Attachment:
signature.asc
Description: This is a digitally signed message part