Fix for 1st half of #2203
[ghc-hetmet.git] / compiler / Makefile.ghcbin
index 626ec51..379a725 100644 (file)
@@ -9,15 +9,46 @@
 TOP = ..
 include $(TOP)/mk/boilerplate.mk
 
-stage=2
-
+ifeq "$(stage)" "2"
 HC=$(GHC_STAGE1)
+endif
+
+ifeq "$(stage)" "3"
+HC=$(GHC_STAGE2)
+endif
+
+EXCLUDED_C_SRCS += ghc-inplace.c
+
+SRC_HC_OPTS += -Wall
 SRC_HC_OPTS += -package ghc
-SRC_HC_OPTS += -DGHCI -DBREAKPOINT
 SRC_HC_OPTS += -Istage$(stage)
 SRC_HC_OPTS += \
-  -cpp -fglasgow-exts -fno-generics -Rghc-timing \
+  -cpp -fglasgow-exts -XNoGenerics -Rghc-timing \
   -I. -IcodeGen -InativeGen -Iparser
+SRC_HC_OPTS += $(GhcHcOpts) $(GhcStage$(stage)HcOpts)
+ifeq "$(TargetOS_CPP)" "openbsd"
+SRC_HC_OPTS += -optl-Xlinker -optl-E
+endif
+
+ifeq "$(GhcWithInterpreter)" "YES"
+SRC_HC_OPTS += -DGHCI
+
+# Should the debugger commands be enabled?
+ifeq "$(GhciWithDebugger)" "YES"
+SRC_HC_OPTS += -DDEBUGGER
+endif
+
+endif
+
+ifeq "$(GhcThreaded)" "YES"
+SRC_HC_OPTS += -threaded
+endif
+ifeq "$(GhcProfiled)" "YES"
+SRC_HC_OPTS += -prof
+endif
+ifeq "$(GhcDebugged)" "YES"
+SRC_LD_OPTS += -debug
+endif
 
 odir=stage$(stage)
 
@@ -25,6 +56,6 @@ HS_SRCS = main/Main.hs
 HS_OBJS = $(patsubst %, $(odir)/%, $(addsuffix .$(way_)o,$(basename $(HS_SRCS))))
 $(odir)/main/Main.o : libHSghc$(_way).a
 
-include $(TOP)/mk/target.mk
+WAYS=$(GhcCompilerWays)
 
--include .depend-$(stage)
+include $(TOP)/mk/target.mk