diff options
author | simonmar <unknown> | 2005-01-20 14:22:33 +0000 |
---|---|---|
committer | simonmar <unknown> | 2005-01-20 14:22:33 +0000 |
commit | c830ae13ccd7373b5478e10382a57d497ebc6a40 (patch) | |
tree | d2c20dc72ccbab640452fe1b010fa3527a55a203 /ghc/compiler/main/Packages.lhs | |
parent | 850ee50c9e5e7bf0fde21f484c5f2f88fcb738a8 (diff) | |
download | haskell-c830ae13ccd7373b5478e10382a57d497ebc6a40.tar.gz |
[project @ 2005-01-20 14:22:19 by simonmar]
Fill in the haddock-interfaces and haddock-html fields in the
package.conf files.
To do this I had to make some changes:
- haddock-interfaces requires the value of $(datadir). We can't
just plug this in, because $(datadir) might change at install-time
(eg. a Windows installer can be placed anywhere, as can a Unix
binary .tar.gz distribution). The current trick is for the
compiler to splice in the value of $libdir in package.conf at
runtime. So we could extend this mechanism and tell the compiler
the value of $datadir via a command-line option, but that seems
ugly.
On Windows, $datadir==$libdir, so we don't need any changes:
package.conf still uses $libdir, and a Windows installation is
independent of its absolute location. Even 'make install' on
Windows should have this property.
On Unix:
- for 'make install' and in-place execution, we just use
absolute paths in package.conf
- for a binary dist, we generate a package.conf that refers
to $libdir and $datadir, and splice in the values at
install-time (distrib/Makefile-bin.in).
- Also, I renamed $libdir to $topdir to more closely reflect its
actual meaning. This is somewhat malicious in that it will flush
out all those clients using $libdir when they really shouldn't
be :-)
Diffstat (limited to 'ghc/compiler/main/Packages.lhs')
-rw-r--r-- | ghc/compiler/main/Packages.lhs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/ghc/compiler/main/Packages.lhs b/ghc/compiler/main/Packages.lhs index 93a8856882..4b758b22fc 100644 --- a/ghc/compiler/main/Packages.lhs +++ b/ghc/compiler/main/Packages.lhs @@ -234,8 +234,8 @@ readPackageConfig dflags pkg_map conf_file = do mungePackagePaths :: String -> [PackageConfig] -> [PackageConfig] --- Replace the string "$libdir" at the beginning of a path --- with the current libdir (obtained from the -B option). +-- Replace the string "$topdir" at the beginning of a path +-- with the current topdir (obtained from the -B option). mungePackagePaths top_dir ps = map munge_pkg ps where munge_pkg p = p{ importDirs = munge_paths (importDirs p), @@ -246,7 +246,7 @@ mungePackagePaths top_dir ps = map munge_pkg ps munge_paths = map munge_path munge_path p - | Just p' <- maybePrefixMatch "$libdir" p = top_dir ++ p' + | Just p' <- maybePrefixMatch "$topdir" p = top_dir ++ p' | otherwise = p |