projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Split XARGS into XARGS and XARGS_OPTS
[ghc-hetmet.git]
/
compiler
/
ghc.mk
diff --git
a/compiler/ghc.mk
b/compiler/ghc.mk
index
498e8dc
..
86f91a9
100644
(file)
--- a/
compiler/ghc.mk
+++ b/
compiler/ghc.mk
@@
-141,8
+141,7
@@
$(eval $(call clean-target,compiler,config_hs,$(compiler_CONFIG_HS)))
PLATFORM_H = ghc_boot_platform.h
PLATFORM_H = ghc_boot_platform.h
-compiler/stage1/$(PLATFORM_H) : mk/config.mk mk/project.mk
- "$(MKDIRHIER)" $(dir $@)
+compiler/stage1/$(PLATFORM_H) : mk/config.mk mk/project.mk | $$(dir $$@)/.
"$(RM)" $(RM_OPTS) $@
@echo "Creating $@..."
@echo "#ifndef __PLATFORM_H__" >$@
"$(RM)" $(RM_OPTS) $@
@echo "Creating $@..."
@echo "#ifndef __PLATFORM_H__" >$@
@@
-188,8
+187,7
@@
endif
# For stage2 and above, the BUILD platform is the HOST of stage1, and
# the HOST platform is the TARGET of stage1. The TARGET remains the same
# (stage1 is the cross-compiler, not stage2).
# For stage2 and above, the BUILD platform is the HOST of stage1, and
# the HOST platform is the TARGET of stage1. The TARGET remains the same
# (stage1 is the cross-compiler, not stage2).
-compiler/stage2/$(PLATFORM_H) : mk/config.mk mk/project.mk
- "$(MKDIRHIER)" $(dir $@)
+compiler/stage2/$(PLATFORM_H) : mk/config.mk mk/project.mk | $$(dir $$@)/.
"$(RM)" $(RM_OPTS) $@
@echo "Creating $@..."
@echo "#ifndef __PLATFORM_H__" >$@
"$(RM)" $(RM_OPTS) $@
@echo "Creating $@..."
@echo "#ifndef __PLATFORM_H__" >$@
@@
-414,9
+412,14
@@
compiler_PACKAGE = ghc
# when it gets registered; see Note [munge-stage1-package-config]
# below.
ifneq "$(ProjectPatchLevel)" "0"
# when it gets registered; see Note [munge-stage1-package-config]
# below.
ifneq "$(ProjectPatchLevel)" "0"
+
define compiler_PACKAGE_MAGIC
compiler_stage1_VERSION = $(subst .$(ProjectPatchLevel),,$(ProjectVersion))
endef
define compiler_PACKAGE_MAGIC
compiler_stage1_VERSION = $(subst .$(ProjectPatchLevel),,$(ProjectVersion))
endef
+
+# Don't register the non-munged package
+compiler_stage1_REGISTER_PACKAGE = NO
+
endif
# haddocking only happens for stage2
endif
# haddocking only happens for stage2
@@
-457,11
+460,16
@@
$(compiler_stage2_depfile) : $(includes_H_CONFIG) $(includes_H_PLATFORM) $(inclu
$(compiler_stage3_depfile) : $(includes_H_CONFIG) $(includes_H_PLATFORM) $(includes_GHCCONSTANTS) $(includes_DERIVEDCONSTANTS) $(PRIMOP_BITS)
# Every Constants.o object file depends on includes/GHCConstants.h:
$(compiler_stage3_depfile) : $(includes_H_CONFIG) $(includes_H_PLATFORM) $(includes_GHCCONSTANTS) $(includes_DERIVEDCONSTANTS) $(PRIMOP_BITS)
# Every Constants.o object file depends on includes/GHCConstants.h:
-$(eval $(call compiler-hs-dependency,Constants,$(includes_GHCCONSTANTS)))
+$(eval $(call compiler-hs-dependency,Constants,$(includes_GHCCONSTANTS) includes/HaskellConstants.hs))
# Every PrimOp.o object file depends on $(PRIMOP_BITS):
$(eval $(call compiler-hs-dependency,PrimOp,$(PRIMOP_BITS)))
# Every PrimOp.o object file depends on $(PRIMOP_BITS):
$(eval $(call compiler-hs-dependency,PrimOp,$(PRIMOP_BITS)))
+# GHC itself doesn't know about the above dependencies, so we have to
+# switch off the recompilation checker for those modules:
+compiler/prelude/PrimOps_HC_OPTS += -fforce-recomp
+compiler/main/Constants_HC_OPTS += -fforce-recomp
+
# Note [munge-stage1-package-config]
# Strip the date/patchlevel from the version of stage1. See Note
# [fiddle-stage1-version] above.
# Note [munge-stage1-package-config]
# Strip the date/patchlevel from the version of stage1. See Note
# [fiddle-stage1-version] above.