Hi Lorenzo,
and welcome to the SIG! :) Just noticed your mail.
I am a newcomer to Haskell (thanks to xmonad) and I plan to do some
serious things with it (as soon as I get proficient with this elegant FP
language).
Great (BTW I just pushed xmonad-0.9 into f12-testing - should appear soon.)
During the last two-three weeks I've been secretly working on the
GHC
package (6.12). As you know, GHC can now create shared libraries so I deemed
that a little change in the .spec file was necessary.
Okay cool - better not to work in secret though :) -
I think the current ghc.spec in pkg cvs already supports shared libs
quite a bit now but look forward to looking at your ideas. :)
* ghc: contains only the compiler, tools (such as ghc-pkg, etc) and
libHSrts.a which seems to be (statically) linked in every application.
In general: stuff needed only at compile time.
Yeah but I have seen ghc package install errors when static libs
are not around - probably something that upstream needs to fix.
* ghc-libs (and ghc-libs-static): contains the dynamic version of
libHSghc
which is *HUGE* (and I guess it's needed only by programs which want
to access
GHC internals -- I don't have it installed and xmonad, xmobar and such
things work).
Cool - guess we could have done that long ago...
* ghc-common: This subpackage contains packages.d/*.config files
and
owns core library directories, it is (mostly) empty and is required by
ghc-runtime and ghc-runtime-static.
* ghc-runtime (and ghc-runtime-static): nothing to say, it contains
just the core libraries and their interface files (.hi/.dyn_hi)
I think shared libs and interfaces should be separated.
+ cabal-install 0.7.5 (from darcs) seems to work decently with this
That's right.
+ I decided to take libHSghc off the runtime package(s) because of
its huge size and because it is not generally needed by other
libraries/applications, thus making the runtime package small:
Aha good idea.
I still can't get Cabal to link shared libraries instead of
static
Pass the option "--ghc-option=-dynamic" to cabal configure.
It is shame you branched off 6.12.0.20091010-2.fc13, Bryan and
I committed quite few changes in cvs since then. I know cvs is not
a DVCS - fedora pkg cvs may be moving to git next year... :)
The current spec file works for rc2 anyway and provides shared
libraries.
Going to look through your spec file now.
In future it would be helpfil if you could send us a patch or
put it into bugzilla if you like and I can review and integrate
to cvs.
And join us on freenode #fedora-haskell if you care for irc.
Thanks, Jens