[project @ 2001-06-26 11:07:55 by simonpj]
[ghc-hetmet.git] / ghc / compiler / Makefile
index 4429348..b103a00 100644 (file)
@@ -1,5 +1,5 @@
 # -----------------------------------------------------------------------------
-# $Id: Makefile,v 1.163 2001/06/25 17:28:30 sof Exp $
+# $Id: Makefile,v 1.165 2001/06/26 11:07:55 simonpj Exp $
 
 TOP = ..
 include $(TOP)/mk/boilerplate.mk
@@ -96,12 +96,15 @@ SRC_HC_OPTS += -DILX
 endif
 
 #
-# Canonicalize the GHC version number - assume it is has the form x.yy.[z].
+# Canonicalize the GHC version number - assume it is has the form x.yy.[z] or 
+# x.yy[.date] where date = yyyymmdd
 #
-# [First sed substitution gets rid of the '.' - second appends a '0' if the
-#  'z' portion is missing]
+# [First sed substitution gets rid of the '.', second gets rid of the date portion,
+#  third appends a '0' if the z portion is missing]
 #
-CANON_HC_VERSION=$(shell echo "$(GhcVersion)" | sed -e 's/\.//g;s/^\(...\)$$/\10/g')
+CANON_HC_VERSION=$(shell echo "$(GhcVersion)" | sed -e 's/\.//g;s/^\(...\)........$$/\1/g;s/^\(...\)$$/\10/g')
+
+# 20010625
 
 ifeq "$(BootingFromHc)" "YES"
 # HC files are always from a self-booted compiler
@@ -270,6 +273,13 @@ main/DriverUtil_HC_OPTS            = -fno-cse
 main/Finder_HC_OPTS            = -fno-cse
 main/SysTools_HC_OPTS          = -fno-cse
 
+# The #include is vital for the via-C route, else the C
+# compiler doesn't realise that the stcall foreign imports are indeed
+# stdcall, and doesn't generate the Foo@8 name for them
+ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32"
+main/SysTools_HC_OPTS          += '-\#include <windows.h>'
+endif
+
 # ----------------------------------------------------------------------------
 #              C compilations