# -----------------------------------------------------------------------------
-# $Id: Makefile,v 1.84 2000/07/17 11:15:08 simonmar Exp $
+# $Id: Makefile,v 1.86 2000/08/07 14:11:48 sewardj Exp $
TOP = ..
include $(TOP)/mk/boilerplate.mk
# be to do ` env PATH=$(PATH) make hsc 'to minimise the environment. (or the
# equivalent of `env' if it doesn't exist locally).
#
+ifneq "$(way)" "dll"
HS_PROG=hsc$(_way)
+else
+HS_PROG=hsc
+endif
# -----------------------------------------------------------------------------
# ----------------------------------------------------------------------------
+# Generate supporting stuff for prelude/PrimOp.lhs
+# from prelude/primops.txt
+
+GENPOC=$(TOP)/utils/genprimopcode/genprimopcode
+
+prelude/PrimOp.o : prelude/PrimOp.lhs prelude/primops.txt
+ $(RM) primop-data-decl.hs
+ $(RM) primop-tag
+ $(RM) primop-list
+ $(RM) primop-has-side-effects.hs
+ $(RM) primop-out-of-line.hs
+ $(RM) primop-commutable.hs
+ $(RM) primop-needs-wrapper.hs
+ $(RM) primop-can-fail.hs
+ $(RM) primop-strictness.hs
+ $(RM) primop-usage.hs
+ $(RM) primop-primop-info.hs
+ $(GENPOC) --data-decl < prelude/primops.txt > primop-data-decl.hs
+ $(GENPOC) --primop-tag < prelude/primops.txt > primop-tag.hs
+ $(GENPOC) --primop-list < prelude/primops.txt > primop-list.hs
+ $(GENPOC) --has-side-effects < prelude/primops.txt > primop-has-side-effects.hs
+ $(GENPOC) --out-of-line < prelude/primops.txt > primop-out-of-line.hs
+ $(GENPOC) --commutable < prelude/primops.txt > primop-commutable.hs
+ $(GENPOC) --needs-wrapper < prelude/primops.txt > primop-needs-wrapper.hs
+ $(GENPOC) --can-fail < prelude/primops.txt > primop-can-fail.hs
+ $(GENPOC) --strictness < prelude/primops.txt > primop-strictness.hs
+ $(GENPOC) --usage < prelude/primops.txt > primop-usage.hs
+ $(GENPOC) --primop-primop-info < prelude/primops.txt > primop-primop-info.hs
+ $(RM) $@
+ $(HC) -c -o $@ $(HC_OPTS) prelude/PrimOp.lhs
+
+# ----------------------------------------------------------------------------
# Parsers/lexers
parser/hschooks.o : parser/hschooks.c