Have ghc-pkg use an old-style package key when it's not provided.
authorEdward Z. Yang <ezyang@cs.stanford.edu>
Wed, 13 Aug 2014 13:04:10 +0000 (14:04 +0100)
committerEdward Z. Yang <ezyang@cs.stanford.edu>
Wed, 13 Aug 2014 13:59:15 +0000 (14:59 +0100)
commit5e46e1f5323a7fc09e9bbd9023d5c63e144e1ad3
treed45ab59c1b1519d404c914438d536322b2f9f931
parent434204975bb6e25a3ec0d32fc225effb8eceb0c3
Have ghc-pkg use an old-style package key when it's not provided.

Summary:
When this occurs, it means that the user is using an old version of Cabal.
In that case, don't barf out: just go ahead and install it as an old-style
package key.  The user won't be able to link multiple versions together,
but that should not be a problem because their Cabal can't handle it anyway.

What happens if old-style are mixed up with new-style?  Well, currently
with Cabal, it's indistinguishable.  However, if at some later point we
add private dependencies, libraries compiled with old style linker names
are incompatible with each other.  We'll cross that road when we come
to it.

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Test Plan: validate

Reviewers: tibbe, hvr, austin

Subscribers: simonmar, relrod, ezyang, carter

Differential Revision: https://phabricator.haskell.org/D154
utils/ghc-pkg/Main.hs