diff -ur mercury-compiler-10.04.orig/Makefile mercury-compiler-10.04/Makefile --- mercury-compiler-10.04.orig/Makefile 2010-07-12 04:31:01.000000000 +1200 +++ mercury-compiler-10.04/Makefile 2010-07-25 20:05:55.000000000 +1200 @@ -69,6 +69,6 @@ $(MMAKE) uninstall .DEFAULT: - $(MMAKE) $@ + $(MMAKE) MMAKEFLAGS=$(PARALLEL) $@ #-----------------------------------------------------------------------------# diff -ur mercury-compiler-10.04.orig/Mmakefile mercury-compiler-10.04/Mmakefile --- mercury-compiler-10.04.orig/Mmakefile 2009-10-20 17:07:24.000000000 +1300 +++ mercury-compiler-10.04/Mmakefile 2010-07-25 21:18:31.000000000 +1200 @@ -286,6 +286,47 @@ mdbcomp browser ssdb trace +cd deep_profiler && $(SUBDIR_MMAKE) +.PHONY: default_grade +default_grade: + +if test "$(DEFAULT_GRADE)" != "$(GRADE)"; then \ + gc_grade=`scripts/ml --grade $(DEFAULT_GRADE) --print-gc-grade`; \ + IWS=`/bin/pwd`/install_grade_dir.$(DEFAULT_GRADE); \ + ( \ + scripts/prepare_install_dir $${IWS} && \ + ( cd $${IWS}/boehm_gc && \ + $(SUBDIR_MMAKE) MC=mmc GRADE=$(DEFAULT_GRADE) WORKSPACE=$${IWS} \ + GC_GRADE=$${gc_grade} libgrade ) && \ + ( cd $${IWS}/runtime && \ + $(SUBDIR_MMAKE) MC=mmc GRADE=$(DEFAULT_GRADE) WORKSPACE=$${IWS} \ + libgrade ) && \ + ( cd $${IWS}/library && \ + $(SUBDIR_MMAKE) MC=mmc GRADE=$(DEFAULT_GRADE) WORKSPACE=$${IWS} \ + depend && \ + $(SUBDIR_MMAKE) MC=mmc GRADE=$(DEFAULT_GRADE) WORKSPACE=$${IWS} \ + libgrade ) && \ + ( cd $${IWS}/mdbcomp && \ + $(SUBDIR_MMAKE) MC=mmc GRADE=$(DEFAULT_GRADE) WORKSPACE=$${IWS} \ + depend && \ + $(SUBDIR_MMAKE) MC=mmc GRADE=$(DEFAULT_GRADE) WORKSPACE=$${IWS} \ + libgrade ) && \ + ( cd $${IWS}/browser && \ + $(SUBDIR_MMAKE) MC=mmc GRADE=$(DEFAULT_GRADE) WORKSPACE=$${IWS} \ + depend && \ + $(SUBDIR_MMAKE) MC=mmc GRADE=$(DEFAULT_GRADE) WORKSPACE=$${IWS} \ + libgrade ) && \ + ( cd $${IWS}/ssdb && \ + $(SUBDIR_MMAKE) MC=mmc GRADE=$(DEFAULT_GRADE) WORKSPACE=$${IWS} \ + depend && \ + $(SUBDIR_MMAKE) MC=mmc GRADE=$(DEFAULT_GRADE) WORKSPACE=$${IWS} \ + libgrade ) && \ + ( cd $${IWS}/trace && \ + $(SUBDIR_MMAKE) MC=mmc GRADE=$(DEFAULT_GRADE) WORKSPACE=$${IWS} \ + libgrade ) && \ + true \ + ) || \ + { exit 1; }; \ + fi; + #-----------------------------------------------------------------------------# .PHONY: tags diff -ur mercury-compiler-10.04.orig/boehm_gc/Mmakefile mercury-compiler-10.04/boehm_gc/Mmakefile --- mercury-compiler-10.04.orig/boehm_gc/Mmakefile 2010-02-27 02:16:44.000000000 +1300 +++ mercury-compiler-10.04/boehm_gc/Mmakefile 2010-07-25 20:05:55.000000000 +1200 @@ -176,6 +176,9 @@ # No need to install the Boehm collector for grades which don't use it. +.PHONY: libgrade +libgrade: + .PHONY: install_headers install_headers: @@ -187,6 +190,9 @@ else +.PHONY: libgrade +libgrade: lib$(GC_GRADE).$A lib$(GC_GRADE).$(EXT_FOR_SHARED_LIB) + .PHONY: install_headers install_headers: install_dirs cp $(HEADERS) $(INSTALL_INC_DIR) diff -ur mercury-compiler-10.04.orig/browser/Mmakefile mercury-compiler-10.04/browser/Mmakefile --- mercury-compiler-10.04.orig/browser/Mmakefile 2010-05-10 18:31:55.000000000 +1200 +++ mercury-compiler-10.04/browser/Mmakefile 2010-07-25 20:05:55.000000000 +1200 @@ -256,16 +256,28 @@ # there is no browser in the .NET or Erlang backends +.PHONY: libgrade +libgrade: + .PHONY: install_library install_library: else ifneq (,$(findstring java,$(GRADE))) +.PHONY: libgrade +libgrade: + .PHONY: install_library install_library: lib$(BROWSER_LIB_NAME).install else +.PHONY: libgrade +libgrade: \ + lib$(BROWSER_LIB_NAME).$A \ + lib$(BROWSER_LIB_NAME).$(EXT_FOR_SHARED_LIB) \ + all-ints + .PHONY: install_library install_library: \ lib$(BROWSER_LIB_NAME).install_library \ diff -ur mercury-compiler-10.04.orig/library/Mmakefile mercury-compiler-10.04/library/Mmakefile --- mercury-compiler-10.04.orig/library/Mmakefile 2010-05-20 21:29:30.000000000 +1200 +++ mercury-compiler-10.04/library/Mmakefile 2010-07-25 20:05:55.000000000 +1200 @@ -493,6 +493,9 @@ # XXX some modules in the browser directory need library.int3 +.PHONY: libgrade +libgrade: mercury.dll + .PHONY: install_library install_library: mercury.dll install_grade_dirs install_gac \ install_strong_name lib$(STD_LIB_NAME).install_grade_hdrs \ @@ -531,6 +534,9 @@ else +.PHONY: libgrade +libgrade: lib$(STD_LIB_NAME) + # we depend on lib$(STD_LIB_NAME) because lib$(STD_LIB_NAME).install_library # doesn't make library.int3, but some modules in the browser directory need it. @@ -541,6 +547,9 @@ else #ifneq ($(MMAKE_USE_MMC_MAKE),yes) +.PHONY: libgrade +libgrade: lib$(STD_LIB_NAME) all-ints + .PHONY: install_mercury install_mercury: install_library diff -ur mercury-compiler-10.04.orig/mdbcomp/Mmakefile mercury-compiler-10.04/mdbcomp/Mmakefile --- mercury-compiler-10.04.orig/mdbcomp/Mmakefile 2010-05-10 18:32:00.000000000 +1200 +++ mercury-compiler-10.04/mdbcomp/Mmakefile 2010-07-25 20:05:55.000000000 +1200 @@ -215,16 +215,28 @@ # there is no debugger in the .NET or Erlang backends +.PHONY: libgrade +libgrade: + .PHONY: install_library install_library: else ifneq (,$(findstring java,$(GRADE))) +.PHONY: libgrade +libgrade: + .PHONY: install_library install_library: lib$(MDBCOMP_LIB_NAME).install else +.PHONY: libgrade +libgrade: \ + lib$(MDBCOMP_LIB_NAME).$A \ + lib$(MDBCOMP_LIB_NAME).$(EXT_FOR_SHARED_LIB) \ + all-ints + .PHONY: install_library install_library: \ lib$(MDBCOMP_LIB_NAME).install_library \ diff -ur mercury-compiler-10.04.orig/runtime/Mmakefile mercury-compiler-10.04/runtime/Mmakefile --- mercury-compiler-10.04.orig/runtime/Mmakefile 2010-07-16 03:24:52.000000000 +1200 +++ mercury-compiler-10.04/runtime/Mmakefile 2010-07-25 20:05:55.000000000 +1200 @@ -466,6 +466,9 @@ # mercury/library/Mmakefile.) # (Runtime support for the Erlang backend is in the library directory.) +.PHONY: libgrade +libgrade: + .PHONY: install_headers install_headers: @@ -478,6 +481,9 @@ else ifeq ($(findstring il,$(GRADE)),il) +.PHONY: libgrade +libgrade: $(DOTNET_DLLS) + .PHONY: install_headers install_headers: @@ -492,6 +498,9 @@ else +.PHONY: libgrade +libgrade: lib$(RT_LIB_NAME).$A lib$(RT_LIB_NAME).$(EXT_FOR_SHARED_LIB) + # mercury_conf.h needs to be in a separate directory so it can be # overridden by a different configuration. .PHONY: install_headers diff -ur mercury-compiler-10.04.orig/ssdb/Mmakefile mercury-compiler-10.04/ssdb/Mmakefile --- mercury-compiler-10.04.orig/ssdb/Mmakefile 2010-05-10 18:32:00.000000000 +1200 +++ mercury-compiler-10.04/ssdb/Mmakefile 2010-07-25 20:05:55.000000000 +1200 @@ -250,16 +250,28 @@ # there is no ssdb in the .NET or Erlang backends +.PHONY: libgrade +libgrade: + .PHONY: install_library install_library: else ifneq (,$(findstring java,$(GRADE))) +.PHONY: libgrade +libgrade: + .PHONY: install_library install_library: lib$(SSDB_LIB_NAME).install else +.PHONY: libgrade +libgrade: \ + lib$(SSDB_LIB_NAME).$A \ + lib$(SSDB_LIB_NAME).$(EXT_FOR_SHARED_LIB) \ + all-ints + .PHONY: install_library install_library: \ lib$(SSDB_LIB_NAME).install_library \ diff -ur mercury-compiler-10.04.orig/trace/Mmakefile mercury-compiler-10.04/trace/Mmakefile --- mercury-compiler-10.04.orig/trace/Mmakefile 2008-07-30 05:58:58.000000000 +1200 +++ mercury-compiler-10.04/trace/Mmakefile 2010-07-25 20:05:55.000000000 +1200 @@ -324,6 +324,9 @@ # there is no tracing in the .NET, Java, Erlang backends +.PHONY: libgrade +libgrade: + .PHONY: install_headers install_headers: @@ -332,6 +335,13 @@ else +.PHONY: libgrade +libgrade: \ + lib$(TRACE_LIB_NAME).$A \ + lib$(TRACE_LIB_NAME).$(EXT_FOR_SHARED_LIB) \ + lib$(EVENTSPEC_LIB_NAME).$A \ + lib$(EVENTSPEC_LIB_NAME).$(EXT_FOR_SHARED_LIB) + .PHONY: install_headers install_headers: $(HDRS) $(LIB_GLOBALS_H) cp `vpath_find $(HDRS) $(LIB_GLOBALS_H)` $(INSTALL_INC_DIR)