summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ghc/hschooks.c2
-rw-r--r--rules/build-prog.mk6
2 files changed, 7 insertions, 1 deletions
diff --git a/ghc/hschooks.c b/ghc/hschooks.c
index 2224b0210e..f3c4b4d1a7 100644
--- a/ghc/hschooks.c
+++ b/ghc/hschooks.c
@@ -5,7 +5,7 @@ in instead of the defaults.
*/
#include "Rts.h"
-#if __GLASGOW_HASKELL__ <611
+#if defined(__GLASGOW_HASKELL__) && (__GLASGOW_HASKELL__ <611)
#include "RtsFlags.h"
#endif
diff --git a/rules/build-prog.mk b/rules/build-prog.mk
index 0efac4c039..0e0a66504f 100644
--- a/rules/build-prog.mk
+++ b/rules/build-prog.mk
@@ -103,7 +103,13 @@ $(call build-dependencies,$1,$2,$3)
# Just the 'v' way for programs
$(call distdir-way-opts,$1,$2,v,$3)
+ifeq "$3" "0"
+# For stage 0, we use GHC to compile C sources so that we don't have to
+# worry about where the RTS header files are
$(call c-suffix-rules,$1,$2,v,YES)
+else
+$(call c-suffix-rules,$1,$2,v,NO)
+endif
$(call hs-suffix-rules,$1,$2,v)
$$(foreach dir,$$($1_$2_HS_SRC_DIRS),\