diff options
author | Ian Lynagh <igloo@earth.li> | 2009-06-11 13:40:57 +0000 |
---|---|---|
committer | Ian Lynagh <igloo@earth.li> | 2009-06-11 13:40:57 +0000 |
commit | acf18dd9725b011450ae9098a501abf0ff9e93c7 (patch) | |
tree | 54bdd4a965b2b60e08ce67183a4085901d1cc7cb /rules/cmm-suffix-rules.mk | |
parent | 96fff1ba94bd3a21da3fa797816bd6e82e4148ba (diff) | |
download | haskell-acf18dd9725b011450ae9098a501abf0ff9e93c7.tar.gz |
Add rules for building .cmm files in libraries
Diffstat (limited to 'rules/cmm-suffix-rules.mk')
-rw-r--r-- | rules/cmm-suffix-rules.mk | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/rules/cmm-suffix-rules.mk b/rules/cmm-suffix-rules.mk new file mode 100644 index 0000000000..6eb9616dad --- /dev/null +++ b/rules/cmm-suffix-rules.mk @@ -0,0 +1,54 @@ +# ----------------------------------------------------------------------------- +# +# (c) 2009 The University of Glasgow +# +# This file is part of the GHC build system. +# +# To understand how the build system works and how to modify it, see +# http://hackage.haskell.org/trac/ghc/wiki/Building/Architecture +# http://hackage.haskell.org/trac/ghc/wiki/Building/Modifying +# +# ----------------------------------------------------------------------------- + + +define cmm-suffix-rules +# $1 = dir +# $2 = distdir +# $3 = way + +# .cmm files depend on all the .h files, to a first approximation. + +ifneq "$$(CLEANING)" "YES" + +ifneq "$$(BootingFromHc)" "YES" + +$1/$2/build/%.$$($3_way_)o : $1/%.cmm $$(rts_H_FILES) $$($1_$2_HC) + "$$(MKDIRHIER)" $$(dir $$@) + "$$($1_$2_HC)" $$($1_$2_$3_MOST_HC_OPTS) -c $$< -o $$@ + +$1/$2/build/%.$$($3_way_)o : $1/$2/build/%.cmm $$(rts_H_FILES) $$($1_$2_HC) + "$$(MKDIRHIER)" $$(dir $$@) + "$$($1_$2_HC)" $$($1_$2_$3_MOST_HC_OPTS) -c $$< -o $$@ + +$1/$2/build/%.$$($3_way_)hc : $1/%.cmm $$(rts_H_FILES) $$($1_$2_HC) + "$$(MKDIRHIER)" $$(dir $$@) + "$$($1_$2_HC)" $$($1_$2_$3_MOST_HC_OPTS) -c $$< -o $$@ + +$1/$2/build/%.$$($3_way_)hc : $1/$2/build/%.cmm $$(rts_H_FILES) $$($1_$2_HC) + "$$(MKDIRHIER)" $$(dir $$@) + "$$($1_$2_HC)" $$($1_$2_$3_MOST_HC_OPTS) -c $$< -o $$@ + +$1/$2/build/%.$$($3_way_)s : $1/%.cmm $$(rts_H_FILES) $$($1_$2_HC) + "$$(MKDIRHIER)" $$(dir $$@) + "$$($1_$2_HC)" $$($1_$2_$3_MOST_HC_OPTS) -c $$< -o $$@ + +$1/$2/build/%.$$($3_way_)s : $1/$2/build/%.cmm $$(rts_H_FILES) $$($1_$2_HC) + "$$(MKDIRHIER)" $$(dir $$@) + "$$($1_$2_HC)" $$($1_$2_$3_MOST_HC_OPTS) -c $$< -o $$@ + +endif + +endif + +endef + |