diff options
| author | Clemens Fruhwirth <clemens@endorphin.org> | 2007-12-28 18:40:24 +0000 |
|---|---|---|
| committer | Clemens Fruhwirth <clemens@endorphin.org> | 2007-12-28 18:40:24 +0000 |
| commit | 88e09197fcd710148c7a6b990b9a2b4706b49881 (patch) | |
| tree | 931a8bd74ace9c6487889c54374e09e250316e9e | |
| parent | 323f97a926395f7e86d6450e247ec0604d7d1765 (diff) | |
| download | haskell-88e09197fcd710148c7a6b990b9a2b4706b49881.tar.gz | |
Install dynlibs correctly
Add dynlibdir target to config.mk.in, setting it to @libdir@.
Invoke installPackage with dynlibdir at libraries/Makefile
Make installPackage.hs hand dynlibdir to Cabal.
| -rw-r--r-- | libraries/Makefile | 4 | ||||
| -rw-r--r-- | libraries/installPackage.hs | 10 | ||||
| -rw-r--r-- | mk/config.mk.in | 1 |
3 files changed, 10 insertions, 5 deletions
diff --git a/libraries/Makefile b/libraries/Makefile index 57c9adf3ab..9bd393bb1d 100644 --- a/libraries/Makefile +++ b/libraries/Makefile @@ -94,6 +94,7 @@ iprefix = $$topdir ibindir = $$topdir ilibdir = $$topdir ilibexecdir = $$topdir +idynlibdir = $$topdir idatadir = $$topdir idocdir = $$topdir/doc/libraries/$$pkg ihaddockdir = $$topdir/doc/libraries/$$pkg @@ -106,6 +107,7 @@ iprefix = $(prefix) ibindir = $(bindir) ilibdir = $(libdir) ilibexecdir = $(libexecdir) +idynlibdir = $(dynlibdir) idatadir = $(datadir) idocdir = $(docdir)/libraries/$$pkg ihaddockdir = $(htmldir)/libraries/$$pkg @@ -372,7 +374,7 @@ $(foreach SUBDIR,$(SUBDIRS),install.library.$(SUBDIR)): \ install.library.%: installPackage/installPackage ifBuildable/ifBuildable if ifBuildable/ifBuildable $*; then \ cd $* && \ - ../installPackage/installPackage install '$(GHC_PKG_PROG)' '$(DESTDIR)$(libdir)/package.conf' '$(DESTDIR)' '$(prefix)' '$(iprefix)' '$(ibindir)' '$(ilibdir)' '$(ilibexecdir)' '$(idatadir)' '$(idocdir)' '$(ihtmldir)' '$(ihaddockdir)' ; \ + ../installPackage/installPackage install '$(GHC_PKG_PROG)' '$(DESTDIR)$(libdir)/package.conf' '$(DESTDIR)' '$(prefix)' '$(iprefix)' '$(ibindir)' '$(ilibdir)' '$(ilibexecdir)' '$(idynlibdir)' '$(idatadir)' '$(idocdir)' '$(ihtmldir)' '$(ihaddockdir)' ; \ fi .PHONY: binary-dist binary-dist.library.% diff --git a/libraries/installPackage.hs b/libraries/installPackage.hs index 371604b131..df2a9e20d3 100644 --- a/libraries/installPackage.hs +++ b/libraries/installPackage.hs @@ -17,12 +17,12 @@ main let verbosity = mkVerbosity args' in doRegisterInplace verbosity "install" : ghcpkg : ghcpkgconf : destdir : topdir : - iprefix : ibindir : ilibdir : ilibexecdir : + iprefix : ibindir : ilibdir : ilibexecdir : idynlibdir : idatadir : idocdir : ihtmldir : ihaddockdir : args' -> let verbosity = mkVerbosity args' in doInstall verbosity ghcpkg ghcpkgconf destdir topdir - iprefix ibindir ilibdir ilibexecdir idatadir + iprefix ibindir ilibdir ilibexecdir idynlibdir idatadir idocdir ihtmldir ihaddockdir _ -> error ("Bad arguments: " ++ show args) @@ -54,10 +54,10 @@ doRegisterInplace verbosity = doInstall :: Verbosity -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath -> FilePath - -> FilePath -> FilePath -> FilePath + -> FilePath -> FilePath -> FilePath -> FilePath -> IO () doInstall verbosity ghcpkg ghcpkgconf destdir topdir - iprefix ibindir ilibdir ilibexecdir idatadir + iprefix ibindir ilibdir ilibexecdir idynlibdir idatadir idocdir ihtmldir ihaddockdir = do let userHooks = simpleUserHooks copyto = if null destdir then NoCopyDest else CopyTo destdir @@ -92,6 +92,7 @@ doInstall verbosity ghcpkg ghcpkgconf destdir topdir i_copy = i { prefix = toPathTemplate' iprefix, bindir = toPathTemplate' ibindir, libdir = toPathTemplate' ilibdir, + dynlibdir = toPathTemplate' idynlibdir, libexecdir = toPathTemplate' ilibexecdir, datadir = toPathTemplate' idatadir, docdir = toPathTemplate' idocdir, @@ -114,6 +115,7 @@ doInstall verbosity ghcpkg ghcpkgconf destdir topdir i_reg = i { prefix = toPathTemplate iprefix, bindir = toPathTemplate ibindir, libdir = toPathTemplate ilibdir, + dynlibdir = toPathTemplate idynlibdir, libexecdir = toPathTemplate ilibexecdir, datadir = toPathTemplate idatadir, docdir = toPathTemplate idocdir, diff --git a/mk/config.mk.in b/mk/config.mk.in index 5283f66791..1ce9751b02 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -557,6 +557,7 @@ datadir0 := @datadir@ libdir0 := @libdir@ includedir := @includedir@ mandir := @mandir@ +dynlibdir := @libdir@ ifeq "$(RelocatableBuild)" "YES" |
