
On Thu, Oct 31, 2013 at 10:55:30PM +0100, Fabien Dubosson wrote:
I'll start with asking on haskell-cafe, because it sure looks like this problem ought to be solved by Cabal and not by us.
Yep I saw your mail, and also the first response. Since I read the answer after I wrote this message, I added some comment in curly braces regarding to this new information. I'll try later to use the `--enable-executable-dynamic` instead of `--ghc-options=-dynamic`.
I had a look at the change you created and I'm not sure a flag to the pkgbuild command is a good way to go. I'm much more in favour of simply making it the way we build, i.e. add '--enable-executable-dynamic' on all builds of lib packages.
Exactly, everything named haskell-* are library packages, only a few packages are pure tool packages (e.g. cblrepo, git-annex). Pure tool packages make use of makedepends. The relevant lines in cblrepo are found in Util.Translation, lines 302 and 303 in the current version (https://github.com/magthe/cblrepo/blob/master/src/Util/Translation.hs#L302).
Ok, and if we want to use shared libraries, it will just require us to modify this part to put all the dependences only in `depends` right? Also will the static libraries still be needed if all packages use shared libraries?
Sure, but I'm not convinced using shared libs is the route to take for pure executable packages (like cblrepo and git-annex). As long as pure executable packages are linked statically we'll need the static libs of course. It's also the case that linking statically is the Ghc default, which speaks in favour of keeping the static libs. /M -- Magnus Therning OpenPGP: 0xAB4DFBA4 email: magnus@therning.org jabber: magnus@therning.org twitter: magthe http://therning.org/magnus Some operating systems are called 'user friendly', Linux however is 'expert friendly'.