diff --git a/Distribution/Simple/Configure.hs b/Distribution/Simple/Configure.hs index d5fb0d0dbefabffd427882303c31b93881e63c96..a6ea84fd5649139f9e9aad78232e6c51a472ef6d 100644 --- a/Distribution/Simple/Configure.hs +++ b/Distribution/Simple/Configure.hs @@ -271,7 +271,7 @@ configure (pkg_descr0, pbi) cfg dataSubdirTemplate = maybeDefault configDataSubDir dataSubdirTemplate, docDirTemplate = maybeDefault configDocDir docDirTemplate, htmlDirTemplate = maybeDefault configHtmlDir htmlDirTemplate, - interfaceDirTemplate = maybeDefault configInterfaceDir interfaceDirTemplate + haddockDirTemplate = maybeDefault configHaddockDir haddockDirTemplate } -- check extensions diff --git a/Distribution/Simple/Install.hs b/Distribution/Simple/Install.hs index 5c08e75ddb6eeddf2c2fcf89ba3fc96f50a6633c..9bc3d6829dcb91abd364c9cd740350f97b81f34b 100644 --- a/Distribution/Simple/Install.hs +++ b/Distribution/Simple/Install.hs @@ -108,7 +108,7 @@ install pkg_descr lbi (CopyFlags copydest verbosity) = do progdir = progPref, docdir = docPref, htmldir = htmlPref, - interfacedir = interfacePref, + haddockdir = interfacePref, includedir = incPref } = absoluteInstallDirs pkg_descr lbi copydest docExists <- doesDirectoryExist $ haddockPref pkg_descr diff --git a/Distribution/Simple/InstallDirs.hs b/Distribution/Simple/InstallDirs.hs index f592a999869c112137c81fa6767ed3aef971362d..8d2b5af53e6c88a8406c5535996e097b0f10eeb2 100644 --- a/Distribution/Simple/InstallDirs.hs +++ b/Distribution/Simple/InstallDirs.hs @@ -52,7 +52,7 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -} module Distribution.Simple.InstallDirs ( - InstallDirs(..), haddockdir, haddockinterfacedir, + InstallDirs(..), InstallDirTemplates(..), defaultInstallDirs, absoluteInstallDirs, @@ -110,7 +110,7 @@ data InstallDirs dir = InstallDirs { docdir :: dir, mandir :: dir, htmldir :: dir, - interfacedir :: dir + haddockdir :: dir } deriving (Read, Show) -- | The installation dirctories in terms of 'PathTemplate's that contain @@ -148,7 +148,7 @@ data InstallDirTemplates = InstallDirTemplates { docDirTemplate :: PathTemplate, manDirTemplate :: PathTemplate, htmlDirTemplate :: PathTemplate, - interfaceDirTemplate :: PathTemplate + haddockDirTemplate :: PathTemplate } deriving (Read, Show) -- --------------------------------------------------------------------------- @@ -183,7 +183,7 @@ defaultInstallDirs comp hasLibs = do _other -> "$datadir" </> "doc" </> "$pkgid" manDir = "$datadir" </> "man" htmlDir = "$docdir" </> "html" - interfaceDir = "$docdir" </> "html" + haddockDir = "$htmldir" return InstallDirTemplates { prefixDirTemplate = toPathTemplate prefixDir, binDirTemplate = toPathTemplate binDir, @@ -197,17 +197,9 @@ defaultInstallDirs comp hasLibs = do docDirTemplate = toPathTemplate docDir, manDirTemplate = toPathTemplate manDir, htmlDirTemplate = toPathTemplate htmlDir, - interfaceDirTemplate = toPathTemplate interfaceDir + haddockDirTemplate = toPathTemplate haddockDir } -haddockdir :: InstallDirs FilePath -> PackageDescription -> FilePath -haddockdir installDirs pkg_descr = - htmldir installDirs - -haddockinterfacedir :: InstallDirs FilePath -> PackageDescription -> FilePath -haddockinterfacedir installDirs pkg_descr = - interfacedir installDirs - -- --------------------------------------------------------------------------- -- Converting directories, absolute or prefix-relative @@ -244,8 +236,9 @@ substituteTemplates pkgId compilerId dirs = dirs' ++ [dataDirVar], htmlDirTemplate = subst htmlDirTemplate $ prefixBinLibVars ++ [dataDirVar, dataSubdirVar, docDirVar], - interfaceDirTemplate = subst interfaceDirTemplate $ prefixBinLibVars - ++ [dataDirVar, dataSubdirVar, docDirVar] + haddockDirTemplate = subst haddockDirTemplate $ prefixBinLibVars + ++ [dataDirVar, dataSubdirVar, + docDirVar, htmlDirVar] } -- The initial environment has all the static stuff but no paths env = initialPathTemplateEnv pkgId compilerId @@ -258,6 +251,7 @@ substituteTemplates pkgId compilerId dirs = dirs' dataDirVar = (DataDirVar, dataDirTemplate dirs') dataSubdirVar = (DataSubdirVar, dataSubdirTemplate dirs') docDirVar = (DocDirVar, docDirTemplate dirs') + htmlDirVar = (HtmlDirVar, htmlDirTemplate dirs') prefixBinLibVars = [prefixDirVar, binDirVar, libDirVar, libSubdirVar] -- | Convert from abstract install directories to actual absolute ones by @@ -278,7 +272,7 @@ absoluteInstallDirs pkgId compilerId copydest dirs = docdir = copy $ path docDirTemplate, mandir = copy $ path manDirTemplate, htmldir = copy $ path htmlDirTemplate, - interfacedir = copy $ path interfaceDirTemplate + haddockdir = copy $ path haddockDirTemplate } where dirs' = substituteTemplates pkgId compilerId dirs { @@ -314,7 +308,7 @@ prefixRelativeInstallDirs pkgId compilerId dirs = datadir = (flip fmap) (relative dataDirTemplate) (</> path dataSubdirTemplate), docdir = relative docDirTemplate, htmldir = relative htmlDirTemplate, - interfacedir = relative interfaceDirTemplate + haddockdir = relative haddockDirTemplate } where -- substitute the path template into each other, except that we map @@ -353,6 +347,7 @@ data PathTemplateVariable = | DataDirVar -- ^ The @$datadir@ path variable | DataSubdirVar -- ^ The @$datasubdir@ path variable | DocDirVar -- ^ The @$docdir@ path variable + | HtmlDirVar -- ^ The @$htmldir@ path variable | PkgNameVar -- ^ The @$pkg@ package name path variable | PkgVerVar -- ^ The @$version@ package version path variable | PkgIdVar -- ^ The @$pkgid@ package Id path variable, eg @foo-1.0@ @@ -407,6 +402,7 @@ instance Show PathTemplateVariable where show DataDirVar = "datadir" show DataSubdirVar = "datasubdir" show DocDirVar = "docdir" + show HtmlDirVar = "htmldir" show PkgNameVar = "pkg" show PkgVerVar = "version" show PkgIdVar = "pkgid" @@ -425,6 +421,7 @@ instance Read PathTemplateVariable where ,("datadir", DataDirVar) ,("datasubdir", DataSubdirVar) ,("docdir", DocDirVar) + ,("htmldir", HtmlDirVar) ,("pkgid", PkgIdVar) ,("pkg", PkgNameVar) ,("version", PkgVerVar) diff --git a/Distribution/Simple/Register.hs b/Distribution/Simple/Register.hs index db2fa06f591717b949bc489ab95eadb17b23f8a3..79520ad7a931466a5e86658ed8fe732d46b7abc1 100644 --- a/Distribution/Simple/Register.hs +++ b/Distribution/Simple/Register.hs @@ -63,7 +63,6 @@ module Distribution.Simple.Register ( import Distribution.Simple.LocalBuildInfo (LocalBuildInfo(..), distPref, InstallDirs(..), - haddockinterfacedir, haddockdir, InstallDirTemplates(..), absoluteInstallDirs, toPathTemplate) import Distribution.Simple.Compiler (CompilerFlavor(..), Compiler(..), @@ -272,18 +271,18 @@ mkInstalledPackageInfo pkg_descr lbi inplace = do dataSubdirTemplate = toPathTemplate distPref, docDirTemplate = toPathTemplate (pwd </> distPref </> "doc"), htmlDirTemplate = toPathTemplate (pwd </> distPref </> "doc" </> "html" </> pkgName (package pkg_descr)), - interfaceDirTemplate = toPathTemplate (pwd </> distPref </> "doc" </> "html" </> pkgName (package pkg_descr)) + haddockDirTemplate = toPathTemplate (pwd </> distPref </> "doc" </> "html" </> pkgName (package pkg_descr)) } } NoCopyDest (absinc,relinc) = partition isAbsolute (includeDirs bi) installIncludeDir | null (installIncludes bi) = [] | otherwise = [includedir installDirs] haddockInterfaceDir - | inplace = haddockinterfacedir inplaceDirs pkg_descr - | otherwise = haddockinterfacedir installDirs pkg_descr - haddockDir - | inplace = haddockdir inplaceDirs pkg_descr - | otherwise = haddockdir installDirs pkg_descr + | inplace = haddockdir inplaceDirs + | otherwise = haddockdir installDirs + haddockHtmlDir + | inplace = htmldir inplaceDirs + | otherwise = htmldir installDirs libraryDir | inplace = build_dir | otherwise = libdir installDirs @@ -317,7 +316,7 @@ mkInstalledPackageInfo pkg_descr lbi inplace = do IPI.frameworkDirs = [], IPI.frameworks = frameworks bi, IPI.haddockInterfaces = [haddockInterfaceDir </> haddockName pkg_descr], - IPI.haddockHTMLs = [haddockDir] + IPI.haddockHTMLs = [haddockHtmlDir] } -- ----------------------------------------------------------------------------- diff --git a/Distribution/Simple/Setup.hs b/Distribution/Simple/Setup.hs index 1883be0dc87e0970f10f70a6ebee43cfe3dd1e08..44f82dc41539b1fa14c1e472f743adf7a34e9729 100644 --- a/Distribution/Simple/Setup.hs +++ b/Distribution/Simple/Setup.hs @@ -125,7 +125,7 @@ data ConfigFlags = ConfigFlags { -- ^installation dir for documentation configHtmlDir :: Maybe FilePath, -- ^installation dir for HTML documentation - configInterfaceDir :: Maybe FilePath, + configHaddockDir :: Maybe FilePath, -- ^installation dir for haddock interfaces configScratchDir :: Maybe FilePath, @@ -160,7 +160,7 @@ emptyConfigFlags progConf = ConfigFlags { configDataSubDir = Nothing, configDocDir = Nothing, configHtmlDir = Nothing, - configInterfaceDir = Nothing, + configHaddockDir = Nothing, configScratchDir = Nothing, configVerbose = normal, configPackageDB = GlobalPackageDB, @@ -375,9 +375,9 @@ configureCommand progConf = makeCommand name shortDesc longDesc emptyFlags optio "installation directory for HTML documentation" (reqArg "DIR" $ \path flags -> flags { configHtmlDir = Just path }) - ,option "" ["interfacedir"] + ,option "" ["haddockdir"] "installation directory for haddock interfaces" - (reqArg "DIR" $ \path flags -> flags { configInterfaceDir = Just path }) + (reqArg "DIR" $ \path flags -> flags { configHaddockDir = Just path }) ,option "b" ["scratchdir"] "directory to receive the built package [dist/scratch]"