[m-users.] adding grades

Julien Fischer jfischer at opturion.com
Thu Jan 20 00:57:44 AEDT 2022


Hi Sean,

On Wed, 19 Jan 2022, Sean Charles (emacstheviking) wrote:

> I currently only have high-level C grade but I want to add Java to the list.
> Do I need to rebuild with C and Java or can I augment an existing
> build deplyment by just specifying Java this time?

Coincidently, I've just been discussing this with Zoltan over in the
reviews list.  Most of the Mercury system supports installing extras
grades after the initial installation -- the one major exception to that
is mmake, but if you're planning to use the java grade, that's not
relevant anyway since the java grade only works with mmc --make.

Assuming you still have the source tree from your initial install
lying about, you should be able to do something like the following:

1. Edit the top-level Mmakefile as per the following diff:

-----------------------------------------------------------
diff --git a/Mmakefile b/Mmakefile
index 506fa24..c97ed4b 100644
--- a/Mmakefile
+++ b/Mmakefile
@@ -716,7 +716,7 @@ OVERRIDE_MC_FOR_LIBGRADE = MC=mmc \
  endif

  .PHONY: install_grades
-install_grades: install_main
+install_grades:
         # Use the newly installed compiler to build the libraries in
         # various
         # different grades. Except when cross-compiling, we override
         # MC=mmc so
         # that we use the mmc from the scripts directory, which runs the
         # newly
------------------------------------------------------------

This will prevent the compiler itself be reinstalled.

2. Do:

    $ mmake install_grades LIBGRADES="java"

Julien.


More information about the users mailing list