[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

GHC armel build



Hi all,

I've been meaning to write about this earlier but never quite got around
to it...

I've been working on bootstrapping an unregisterised build of GHC, the
"Glorious Glasgow Haskell Compilation System", for armel. Initially I
worked in qemu, but Wookey sorted me out with build machine access
earlier this week.

Since an unregisterised port to arm already exists this is really just a
bootstrapping excercise by the looks of it. Float word order is checked
in the configure script and the only hardcoded (#if defined __arm__)
byte swapping occurs in a private copy of gmp which doesn't appear to be
used.

I'm using ghc6 sources from unstable and mainly following the GHC
porting documentation at
http://www.haskell.org/ghc/docs/6.6/html/building/sec-porting-ghc.html

There are a few inaccurate paths in that document
(spurious .../ghc/...), but otherwise things work as documented with the
following exceptions:

. The step "make hc-file-bundle Project=Ghc" tries to package the file
  libraries/haskell-src/Language/Haskell/Parser.hs which doesn't exist.
  Commenting out the corresponding line in the top-level Makefile fixes
  the problem.

. The file libraries/Cabal/cabal-setup/CabalSetup.hc isn't build
  automatically on the host. A "make CabalSetup.hc" in the respective
  directory followed by transferring the generated file to the target
  works around that problem.

My build has now reached the stage of rebuilding the libraries with the
already built initial compiler on the target.

Martin, Wookey says you are also working on a GHC build for armel. Are
you aiming for an unregisterised build or a full port? How far along
have you got? Have I missed anything up to where I am now?

Regards,

Rene



Reply to: