summaryrefslogtreecommitdiff
path: root/rules/hi-rule.mk
diff options
context:
space:
mode:
authorIan Lynagh <ian@well-typed.com>2013-01-05 18:50:29 +0000
committerIan Lynagh <ian@well-typed.com>2013-01-10 18:34:17 +0000
commit5cb088088be8573a01c991421ad882ce899067db (patch)
tree78336541081f121863be9b28a25b9b00f9c06d6a /rules/hi-rule.mk
parent8dd2f981e43211a5c47aabe8b45e572e4f50b9fd (diff)
downloadhaskell-5cb088088be8573a01c991421ad882ce899067db.tar.gz
Make the rule for .hi files depend on the .hs/.lhs files
make thought that it could make a .hi file for the C files in libraries, which was causing problems when using dynamic-too.
Diffstat (limited to 'rules/hi-rule.mk')
-rw-r--r--rules/hi-rule.mk8
1 files changed, 5 insertions, 3 deletions
diff --git a/rules/hi-rule.mk b/rules/hi-rule.mk
index 35baffd11a..c1e75022e4 100644
--- a/rules/hi-rule.mk
+++ b/rules/hi-rule.mk
@@ -62,11 +62,13 @@
# documentation). An empty command is enough to get GNU make to think
# it has updated %.hi, but without actually spawning a shell to do so.
-define hi-rule # $1 = way
+define hi-rule # $1 = source directory, $2 = object directory, $3 = way
-%.$$($1_hisuf) : %.$$($1_osuf) ;
+$2/%.$$($3_hisuf) : $2/%.$$($3_osuf) $1/%.hs ;
+$2/%.$$($3_hisuf) : $2/%.$$($3_osuf) $1/%.lhs ;
-%.$$($1_way_)hi-boot : %.$$($1_way_)o-boot ;
+$2/%.$$($3_way_)hi-boot : $2/%.$$($3_way_)o-boot $1/%.hs ;
+$2/%.$$($3_way_)hi-boot : $2/%.$$($3_way_)o-boot $1/%.lhs ;
endef