Add support for 'make help' in subdirectories
[ghc-hetmet.git] / ghc / ghc.mk
index c931394..1bda27b 100644 (file)
@@ -117,12 +117,18 @@ all_ghc_stage2 : $(GHC_STAGE2)
 all_ghc_stage3 : $(GHC_STAGE3)
 
 $(INPLACE_LIB)/extra-gcc-opts : extra-gcc-opts
-       $(CP) $< $@
+       "$(CP)" $< $@
 
 # The GHC programs need to depend on all the helper programs they might call
-$(GHC_STAGE1) : $(INPLACE_LIB)/extra-gcc-opts $(MANGLER) $(SPLIT)
-$(GHC_STAGE2) : $(INPLACE_LIB)/extra-gcc-opts $(MANGLER) $(SPLIT)
-$(GHC_STAGE3) : $(INPLACE_LIB)/extra-gcc-opts $(MANGLER) $(SPLIT)
+ifeq "$(GhcUnregisterised)" "NO"
+$(GHC_STAGE1) : $(MANGLER) $(SPLIT)
+$(GHC_STAGE2) : $(MANGLER) $(SPLIT)
+$(GHC_STAGE3) : $(MANGLER) $(SPLIT)
+endif
+
+$(GHC_STAGE1) : $(INPLACE_LIB)/extra-gcc-opts
+$(GHC_STAGE2) : $(INPLACE_LIB)/extra-gcc-opts
+$(GHC_STAGE3) : $(INPLACE_LIB)/extra-gcc-opts
 
 ifeq "$(Windows)" "YES"
 $(GHC_STAGE1) : $(TOUCHY) $(INPLACE)/stamp-mingw $(INPLACE_LIB)/perl.exe
@@ -130,6 +136,11 @@ $(GHC_STAGE2) : $(TOUCHY) $(INPLACE)/stamp-mingw $(INPLACE_LIB)/perl.exe
 $(GHC_STAGE3) : $(TOUCHY) $(INPLACE)/stamp-mingw $(INPLACE_LIB)/perl.exe
 endif
 
+ifeq "$(BootingFromHc)" "YES"
+$(GHC_STAGE2) : $(ALL_STAGE1_LIBS)
+ghc_stage2_OTHER_OBJS += $(compiler_stage2_v_LIB) $(ALL_STAGE1_LIBS) $(ALL_STAGE1_LIBS) $(ALL_STAGE1_LIBS) $(ALL_RTS_LIBS) $(libffi_STATIC_LIB)
+endif
+
 endif
 
 INSTALL_LIBS += extra-gcc-opts
@@ -138,7 +149,7 @@ ifeq "$(Windows)" "NO"
 install: install_ghc_link
 .PNONY: install_ghc_link
 install_ghc_link: 
-       $(RM) -f $(DESTDIR)$(bindir)/ghc
+       "$(RM)" $(RM_OPTS) $(DESTDIR)$(bindir)/ghc
        $(LN_S) ghc-$(ProjectVersion) $(DESTDIR)$(bindir)/ghc
 else
 # On Windows we install the main binary as $(bindir)/ghc.exe
@@ -146,7 +157,7 @@ else
 install: install_ghc_post
 .PHONY: install_ghc_post
 install_ghc_post: install_bins
-       $(RM) -f $(DESTDIR)$(bindir)/ghc.exe
-       $(MV) -f $(DESTDIR)$(bindir)/ghc-stage$(INSTALL_GHC_STAGE).exe $(DESTDIR)$(bindir)/ghc.exe
+       "$(RM)" $(RM_OPTS) $(DESTDIR)$(bindir)/ghc.exe
+       "$(MV)" -f $(DESTDIR)$(bindir)/ghc-stage$(INSTALL_GHC_STAGE).exe $(DESTDIR)$(bindir)/ghc.exe
 endif