Some compilation steps (such as compiling the NeXtMidas shell) cannot execute within
the NeXtMidas shell and require an "external" compilation interface to boot-strap the build.
The tools.NmMake
class, which runs via the nm
OS shell
script, provides this interface.
The chart below summarizes the "nm make
" functions:
NAME nm make - Boot-strap to build NeXtMidas from the OS shell (Native code is disabled); performs miscellaneous build tasks for NeXtMidas. SYNOPSIS nm make [TASK ...] DESCRIPTION nm make zip OPT NAME nm make jar OPT NAME Creates a zip/jar file named NAME containing the OPT option tree. (A ".zip" extension after NAME creates a zip file, ".jar" creates a jar file, and no extension uses the given default.) If OPT is "all", "nxm", "nextmidas", or "nmroot" then the entire $NMROOT is included. Note: Symbolic links within OPT are not followed when making the zip/jar. nm make dist OPT NAME Identical to "nm make zip OPT NAME" except it omits COTS/Binary files when making the zip/jar. nm make clean [OPT] Cleans all build products (.class files, .so files, etc.) for the OPT option tree. If OPT is "all" then it cleans all build products for all option trees, and removes WebStart jars and JavaDoc files. nm make boot (Implies "nm make gen") Compiles the boot classes and stops. (Rarely used.) nm make gen Generates the libm Java code in the SYS option tree and stops. (Rarely used.) nm make [PARAMS] Builds the boot classes (see "nm make boot") and enters the NeXtMidas shell to continue building. The command executed in the shell equals "nM> make PARAMS". Common applications: 1. Build the SYS option tree from scratch: $ nm make all 2. Build an arbitrary option tree (foo): $ nm make all foo 3. Build only the code and jars for an option tree: $ nm make "code|jar" foo Note: In Unix, you must quote any parameter with a pipe ('|').