I'm trying to build head (latest try with ghc-6.5.20060429) for my macbook pro (Mac OS X intel) using hc files built on a x86 linux (Ubuntu Breezy Badger).  I have the following issues:


1) Issues with bookstrap.mk

bootstrap.mk in head contains the following lines

TOP_SAVED := $(TOP)
TOP:=$(TOP)/ghc

include $(TOP)/mk/version.mk
include $(TOP)/mk/paths.mk

# Reset TOP
TOP:=$(TOP_SAVED)

However, those files are not at those locations.  Looking back at 6.4.2, it seems that they were in those locations in 6.4.2, but that changes in the directory structure mean that the line that sets top to $(TOP)/ghc is obsolete.  version.mk is nowhere to be seen, nor is version.mk.in.  It looks as if the variables set in this file are now set in config.mk and that version.mk is no longer required.  If that's true, I can replace all of the lines above with:

include $(TOP)/mk/paths.mk

2) Building the .hc files

The building guide says that I can build hc files on another host running on the same platform.  The word platform seems to be used to describe architecture in some places and architecture & O/S in others.  I have assumed that it means architecture in this case (if we already have a compiler that runs on the same Arch & OS, why are we porting).

What the building guide does not do is provide instructions for producing registerized hc files.  The recipe I have stumbled onto is this

a) Create mk/build.mk and add the following lines:

GhcLibHcOpts = -O -fvia-C -keep-hc-files
GhcRtsHcOpts = -keep-hc-files
GhcStage1HcOpts = -O -fvia-C -keep-hc-files
GhcStage2HcOpts = -O -fvia-C -keep-hc-files

b) run "./configure"
c) run "make"
d) I want to run "make hc-file-bundle Project=ghc", but it complains
about a few missing files.  So first I cd to rts and
run "make AutoApply.hc AutoApply_p.hc AutoApply_thr.hc \
AutoApply_thr_p.hc AutoApply_debug.hc AutoApply_thr_debug.hc"
e) run "make hc-file-bundle Project=ghc", which works just fine.
f) untar the resulting file in the parent directory of ghc-6.5.20060429 on the target machine

3) running the build. 

I'm following the steps in distrib/hc-build by hand, which work out to:

./configure --enable-hc-boot
make -C utils boot all
make -C ghc boot
make -C libraries boot all GhcBootLibs=YES
make -C ghc all

Is this all correct?  I'm having problems with the build in utils, but by then I've already made enough assumptions about how to fix the build that there's little point in asking the question until I've verified that I haven't messed things up upstream.

Reilly Hayes



_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to