ugly hack to cause ghc_boot_platform.h to be built before primops.txt
authorSimon Marlow <simonmar@microsoft.com>
Mon, 21 Aug 2006 12:06:30 +0000 (12:06 +0000)
committerSimon Marlow <simonmar@microsoft.com>
Mon, 21 Aug 2006 12:06:30 +0000 (12:06 +0000)
compiler/Makefile

index 0d8d8c7..e2d42aa 100644 (file)
@@ -639,6 +639,18 @@ ifneq "$(BootingFromHc)" "YES"
 depend :: $(PRIMOP_BITS)
 endif
 
 depend :: $(PRIMOP_BITS)
 endif
 
+# This is an ugly hack: we need stage1/$(PLATFORM_H) built before we
+# preprocess primops.txt.pp, but we don't want to just add that
+# dependency because we don't want $(PLATFORM_H) built during normal
+# operations, because we don't have have dependencies from the .hs
+# sources on it, and we don't want those dependencies because that
+# would cause everything to be rebuilt every time the Makefile
+# changed.  So here we add the required dependency only when making
+# boot or depend:
+ifneq "$(findstring boot, $(MAKECMDGOALS))$(findstring depend, $(MAKECMDGOALS))" ""
+prelude/primops.txt.pp : stage1/$(PLATFORM_H)
+endif
+
 primop-data-decl.hs-incl: prelude/primops.txt
        $(GENPRIMOP) --data-decl          < $< > $@
 primop-tag.hs-incl: prelude/primops.txt
 primop-data-decl.hs-incl: prelude/primops.txt
        $(GENPRIMOP) --data-decl          < $< > $@
 primop-tag.hs-incl: prelude/primops.txt