Next: Miscellaneous options, Previous: Link options, Up: Invocation [Contents][Index]
-m--makeTreat the non-option arguments to ‘mmc’ as files to make, rather than source files. Create the specified files, if they are not already up-to-date. (Note that this option also enables ‘--use-subdirs’.)
-r--rebuildSame as ‘--make’, but always rebuild the target files even if they are up to date.
-k--keep-goingWith ‘--make’ keep going as far as possible even if an error is detected.
-j n--jobs nWith ‘--make’, attempt to perform up to n jobs concurrently for some tasks.
--track-flagsWith ‘--make’, keep track of the options used when compiling each module. If an option for a module is added or removed, ‘mmc --make’ will then know to recompile the module even if the timestamp on the file itself has not changed. Warning, verbosity and build system options are not tracked.
--pre-link-command commandSpecify a command to run before linking with ‘mmc --make’. This can be used to compile C source files which rely on header files generated by the Mercury compiler. The command will be passed the names of all of the source files in the program or library, with the source file containing the main module given first.
--extra-init-command commandSpecify a command to produce extra entries in the .init file for a library. The command will be passed the names of all of the source files in the program or library, with the source file containing the main module given first.
--install-prefix dirSpecify the directory under which to install Mercury libraries.
--install-command commandSpecify the command to use to install the files in Mercury
libraries. The given command will be invoked as
command source target
to install each file in a Mercury library.
The default command is ‘cp’.
--install-command-dir-option optionSpecify the flag to pass to the install command to install
a directory. The given command will be invoked as
command option source target
to install each directory. The default option is ‘-R’.
--no-detect-libgradesDo not scan the installation directory to determine which standard library grades are available.
--libgrade gradeAdd grade to the list of compilation grades in which a library to be installed should be built.
--no-libgradeClear the list of compilation grades in which a library to be installed should be built. The main use of this is to avoid building and installing the default set of grades.
--libgrades-include-component component--libgrades-include componentRemove grades that do not contain the specified component from the set of library grades to be installed. (This option does not work with Mmake, only ‘mmc --make’.)
--libgrades-exclude-component component--libgrades-exclude componentRemove grades that contain the specified component from the set of library grades to be installed. (This option does not work with Mmake, only ‘mmc --make’.)
--lib-linkage {shared,static}Specify whether libraries should be installed for shared or static linking. This option can be specified multiple times. By default libraries will be installed for both shared and static linking.
--flags file--flags-file fileTake options from the specified file, and handle them as if they were specified on the command line.
--options-file fileAdd file to the list of options files to be processed. If file is ‘-’, an options file will be read from the standard input. By default the file Mercury.options in the current directory will be read. See Using Mmake for a description of the syntax of options files.
--config-file fileRead the Mercury compiler’s configuration information from file. If the ‘--config-file’ option is not set, a default configuration will be used, unless ‘--no-mercury-stdlib-dir’ is passed to ‘mmc’. The configuration file is just an options file (see Using Mmake).
--options-search-directory dirAdd dir to the list of directories to be searched for options files.
--mercury-configuration-directory dir--mercury-config-dir dirSearch dir for Mercury system’s configuration files.
-I dir--search-directory dirAppend dir to the list of directories to be searched for imported modules.
--intermod-directory dirAppend dir to the list of directories to be searched for ‘.opt’ files.
--use-search-directories-for-intermodAppend the arguments of all -I options to the list of directories to be searched for ‘.opt’ files.
--no-libgrade-install-checkDo not check that libraries have been installed before attempting to use them. (This option is only meaningful with ‘mmc --make’.)
--use-subdirsCreate intermediate files in a Mercury subdirectory, rather than in the current directory.
--use-grade-subdirsGenerate intermediate files in a Mercury subdirectory, laid out so that multiple grades can be built simultaneously. Executables and libraries will be symlinked or copied into the current directory. ‘--use-grade-subdirs’ does not work with Mmake (it does work with ‘mmc --make’).
--order-make-by-timestampMake ‘mmc --make’ compile more recently modified source files first.
--show-make-timesReport run times for commands executed by ‘mmc --make’.
--extra-library-header file--extra-lib-header fileInstall the specified C header file along with a Mercury library. (This option is only supported by ‘mmc --make’)
--restricted-command-lineEnable this option if your shell doesn’t support long command lines. This option uses temporary files to pass arguments to sub-commands. (This option is only supported by ‘mmc --make’)
--env-type typeSpecify the environment type in which the compiler and generated programs will be invoked. The environment type controls how the compiler and generated programs interact with the shell and other system tools. The type should be one of ‘posix’, ‘cygwin’, ‘msys’, or ‘windows’. This option is equivalent to setting all of ‘--host-env-type’, ‘--system-env-type’ and ‘--target-env-type’ to type.
--host-env-type typeSpecify the environment type in which the compiler will be invoked. (See above for a list of supported environment types.)
--system-env-type typeSpecify the environment type in which external programs invoked by the compiler will run. If not specified, this defaults to the value given by ‘--host-env-type’.
--target-env-type typeSpecify the environment type in which generated programs will be invoked. (See above for a list of supported environment types.)
Next: Miscellaneous options, Previous: Link options, Up: Invocation [Contents][Index]