Hi Ian,

I've seen this ticket (see [1]), and stage=1 only worked if I explicitly disabled building packages like ghc, and the tools with the stage 1 compiler. This seemed reasonable, as I only wanted to build a cross compiler, not a toolchain for my target.

Additionally, I found that the RTS would never get built as a dependency for ghc-prim when using stage=1. The ghc-prim package only builds dist-boot and dist-install variants, and the RTS only ever builds a dist variant. When dependencies are generated in build-package-way for ghc-prim, the variable rts-1.0_dist-install_$(way)_LIB expands to "", and ghc-prim builds without forcing the RTS to also build.

I've fixed this by adding a dist-install alias (listed below) in rts/ghc.mk, as well as adding $$($1_$2_$3_DEPS_LIBS) to the dependencies of the static archive rule in rules/build-package-way.mk.

> rts-$(rts_VERSION)_dist-install_$1_LIB = $$(rts_$1_LIB)

I have some other changes that make Stage1Only work as expected, and would be happy to submit a patch if it's desired functionality.

Thanks!

--trevor

[1] http://www.haskell.org/pipermail/ghc-devs/2013-April/001002.html

On Fri 12 Apr 2013 05:58:40 AM PDT, Ian Lynagh wrote:
On Fri, Apr 12, 2013 at 02:51:44PM +0200, Gabor Greif wrote:

Apparently all_compiler depends on all_compiler_stage2 currently,
which it should not, given $(Stage1Only)=="YES".

See http://hackage.haskell.org/trac/ghc/ticket/7639#comment:5


Thanks
Ian


Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://www.haskell.org/mailman/listinfo/ghc-devs

Reply via email to