Commit 5f6fcf78 authored by Moritz Angermann's avatar Moritz Angermann Committed by Ben Gamari

Compile with `--via-asm` when cross compiling.

This bumps `hsc2hs` and adds the new `--via-asm` flag,
which allows to successfully cross compile the win32
lirbary.

- Compile with `--via-asm` when cross compiling. This requires
haskell/hsc2hs#5 (https://github.com/haskell/hsc2hs/pull/5)

Test Plan: ./validate

Reviewers: bgamari

Reviewed By: bgamari

Subscribers: rwbarton, thomie, carter

Differential Revision: https://phabricator.haskell.org/D4439
parent ffb2738f
......@@ -649,8 +649,12 @@ $(eval $(call set_stage_HSC2HS_OPTS,0))
$(eval $(call set_stage_HSC2HS_OPTS,1))
$(eval $(call set_stage_HSC2HS_OPTS,2))
ifeq "$(CrossCompiling)" "YES"
SRC_HSC2HS_OPTS_STAGE1 += --cross-compile
SRC_HSC2HS_OPTS_STAGE2 += --cross-compile
# We'll assume we compile with gcc or clang, and both support `-S` and can as such use the
# --via-asm pass, which should be faster and is required for cross compiling to windows, as
# the c compiler complains about non-constant expressions even though they are constant and
# end up as constants in the assembly.
SRC_HSC2HS_OPTS_STAGE1 += --cross-compile --via-asm
SRC_HSC2HS_OPTS_STAGE2 += --cross-compile --via-asm
endif
SRC_HSC2HS_OPTS_STAGE0 += --cflag=-D$(HostArch_CPP)_HOST_ARCH --cflag=-D$(HostOS_CPP)_HOST_OS
SRC_HSC2HS_OPTS_STAGE1 += --cflag=-D$(TargetArch_CPP)_HOST_ARCH --cflag=-D$(TargetOS_CPP)_HOST_OS
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment