
igloo:
With the wrapper everything was fine here on the host side.
I then had to do the I_ -> int stg_exit thing as committed to CVS for IA64, and also change machine/{pal,fpu}.h to asm/{pal,fpu}.h in ghc/rts/Adjuster.c and ghc/rts/Signals.c. (I'd already applied the MBLOCK hack from x86-64). The compile then failed with
I got another (loopy) compile on alpha-dec-osf3 that went through cleanly, with the following fixes: On the x86-*-openbsd host: * ------------------------------------------------------------------------ ==fptools== gmake all - --no-print-directory -r; in /home/dons/unreg/ghc-6.0.1/libraries/base/cbits ------------------------------------------------------------------------ [..] gcc -O -Wall -DCOMPILING_STDLIB -I../../../ghc/includes -I../../../ghc/rts -I../include -c longlong.c -o longlong.o In file included from ../../../ghc/includes/Stg.h:189, from ../../../ghc/includes/Rts.h:20, from longlong.c:29: ../../../ghc/includes/TailCalls.h:86: invalid register name for `_procedure' # Fixed by adding to libraries/mk/boilerplate.mk: SRC_CC_OPTS+= -DUSE_MINIINTERPRETER On the alpha target: * gcc -O -DNO_REGS -DUSE_MINIINTERPRETER -I/import/pill0/1/dons/ghc/alpha-osf3/ghc-6.0.1/ghc/includes -I/import/pill0/1/dons/ghc/alpha-osf3/ghc-6.0.1/libraries/base/include -I/import/pill0/1/dons/ghc/alpha-osf3/ghc-6.0.1/libraries/unix/include -Wall -W -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Winline -Waggregate-return -Wbad-function-cast -I../includes -I. -Iparallel -DCOMPILING_RTS -fomit-frame-pointer -c BlockAlloc.c -o BlockAlloc.o In file included from BlockAlloc.c:24: MBlock.h:79: #error HEAP_ALLOCED not defined # fix: Applied MBlock.h x86_64 fix/hack * conflicting types for `stg_exit' # fix: I_ -> int in ghc/rts/RtsUtils.h ghc/includes/PrimOps.h * Can't locate file for: -lreadline collect2: ld returned 1 exit status # fix: comment out readline in mk/bootstrap.mk And then everything went though, to the re-configure part of hc-build, but the ghc-inplace seems to go into an infinite loop on invocation. It won't produce output even with invalid command line flags. It just sits and spins for a few minutes, and then I have to kill it. The only interesting thing is that it ignores the first ^C, and requires a second ^C to die. I'll try a debug build of some kind. Unless someone has some better idea. -- Don