Description
Describe the bug
In GHC#22564 we noted that users of Cabal's extra-bundled-libraries
field are saddled with the unfortunate requirement of naming their native libraries with a rather ad-hoc libC
prefix (specified in the Cabal reference documentation).
This requirement is due to the strange implementation of extra-bundled-libraries
: "bundled" libraries are added to the hsLibraries
field of InstalledPackageInfo
, leaving GHC's runtime linker with an ambiguity regarding whether the library is a Haskell object (in which case it may need a "way" suffix in its name) or native object. The required libHS
/libC
prefix exists merely to allow the linker to resolve this ambiguity.
IMHO it would be much better if extra-bundled-libraries
were instead implemented in terms of a new InstalledPackageInfo
field, eliminating the ambiguity by construction.
(this was originally filed as GHC#22732