[Fedora-haskell-list] RFE: GHC packaging improvement proposal
petersen at redhat.com
Fri Dec 11 07:57:05 UTC 2009
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
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
> 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
> + 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.
> + I'm 101% sure that there are errors in that .spec file.
It is shame you branched off 184.108.40.20691010-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
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
And join us on freenode #fedora-haskell if you care for irc.
More information about the Fedora-haskell-list