[ Uuaah! My last mail only went to Sigbjorn. Next try... ]
Sigbjorn Finne wrote:
> [...]
> > * Happy searches the *buildtree* for its templates. Excerpt from
> > fptools/happy/src/Makefile: HAPPYLIB = $(FPTOOLS_TOP_ABS)/happy/templates
> >
>
> As long as you don't install, that should be cool...
It would be even cooler if I could install ghc *and* happy (and lx and
GreenCard and... :-) in one sweep.
> --Sigbjorn (stealthily updating ghc-2.06-src.tar.gz to include these patches.)
> [ patches deleted ]
Those patches are not sufficient yet:
[...]
------------------------------------------------------------------------
==fptools== make boot;
in /mnt/liesl1/inst/panne/ghc-2.06-iX86-unknown-linux/happy/src
------------------------------------------------------------------------
Making Version.hs version=1.3
template_dir=/mnt/liesl1/inst/panne/ghc-2.06-iX86-unknown-linux/happy/templates
if [ -d ../../ghc ]; then \
(cd ../../ghc/driver && make boot); \
(cd ../../ghc/utils/mkdependHS && make boot) \
fi
../utils/unlit/unlit ghc-asm.lprl ghc-asm.prl
make[3]: ../utils/unlit/unlit: Command not found
make[3]: *** [ghc-asm.prl] Error 127
rm -f mkdependHS
Creating mkdependHS...
Done.
../../ghc/driver/ghc -M -optdep-f -optdep.depend -optdep-o -optdepo -O -H32m -cpp
-fhaskell-1.3 -fglasgow-exts Version.hs GenUtils.lhs Set.lhs ParseMonad
.lhs Lexer.lhs AbsSyn.lhs Grammar.lhs Parser.hs First.lhs LALR.lhs Target.lhs
ProduceCode.lhs Info.lhs GetOpt.lhs Main.lhs
/bin/sh: ../../ghc/driver/ghc: No such file or directory
make[2]: *** [depend] Error 127
make[1]: *** [boot] Error 2
make: *** [boot] Error 2
If "(cd ../../ghc/utils/unlit && make boot); \" is added to the "if"
in fptools/happy/src/Makefile, "make boot" succeeds, but "make all"
still wants to use the not yet existing ghc-2.06 for the compilation
of happy:
------------------------------------------------------------------------
==fptools== make all;
in /mnt/liesl1/inst/panne/ghc-2.06-iX86-unknown-linux/happy/src
------------------------------------------------------------------------
../../ghc/driver/ghc -O -H32m -cpp -fhaskell-1.3 -fglasgow-exts -c Version.hs -o
Version.o -osuf o
make[2]: ../../ghc/driver/ghc: Command not found
make[2]: *** [Version.o] Error 127
make[1]: *** [all] Error 2
make: *** [all] Error 2
Adding the "unlit" line above and replacing "MKDEPENDHS := $(HC)" with:
HC=$(WithGhcHc)
ifeq ($(Ghc2_0),NO)
MKDEPENDHS = $(MKDEPENDHS_1_2)
endif
(stolen from fptools/ghc/compiler/Makefile), things went almost smoothly.
The remaining problem: compiling Happy's Main.lhs needs excessive memory,
actually more than I have! :-( 100MB was my last try before giving up)
Fix: Add "HappyHcOpts += -Onot" to build.mk.
Another small glitch: Something from the user_guide is missing.
"Solution": touch fptools/ghc/docs/users_guide/2-06-notes.lit
Hmm, slowly the task of building ghc-2.06 from source turns into a
matter of honor: Me against the evil build tree... %-]
--
Sven Panne Tel.: +49/89/2178-2235
LMU, Institut fuer Informatik FAX : +49/89/2178-2211
LFE Programmier- und Modellierungssprachen Oettingenstr. 67
mailto:[EMAIL PROTECTED] D-80538 Muenchen
http://www.pms.informatik.uni-muenchen.de/mitarbeiter/panne