fcm_make
¶
An application for running the fcm make
command.
The fcm_make
application expects a file file/fcm-make.cfg
in
its application configuration. It runs fcm make
using this
configuration file.
You can configure these applications with environment variables or
settings in rose-app.conf
. (Settings in rose-app.conf
override their equivalent environment variables.)
By default the bin/
directories of builds will be prepended to
the PATH
environment variable by rose task-env
and/or rose task-run commands run by subsequent
tasks in the suite.
Example¶
meta=fcm_make
mode=fcm_make
opt.jobs=8
Invocation¶
- If a task’s name contains the string
fcm_make
then rose task-run will run this built-in application automatically. - If a task’s name contains the string
fcm_make2*
and it does not have its own application configuration then rose task-run will attempt to associate it with the correspondingfcm_make*
application configuration.
Rose Configuration API¶
-
Rose App
fcm_make
¶ -
Config
args
= ARG ...¶ Env Var: ROSE_TASK_OPTIONS
For passing extra options and arguments to the
fcm make
command.
-
Config
dest-orig
= PATH¶ Specify the path to the destination of the original make. This is normally specified as a relative path under
$ROSE_SUITE_DIR/
. The default isshare/$ROSE_TASK_NAME
. If rose task-run is invoked in--new
mode, the application will remove this directory before runningfcm make --new
.
-
Config
dest-cont
= PATH¶ Specify the path to the destination of the continuation make. This is normally specified as a relative path under
$ROSE_SUITE_DIR/
. The default is to use the same location asfcm_make|dest-orig
. If rose task-run is invoked in--new
mode, the application will remove this directory before runningfcm make --new
. (If this location is in the same physical location of the destination of the original make, you should only invoke rose task-run--new
on the original make. Otherwise, contents generated by the original make will be wiped clean before the continuation make begins.)
-
Config
fast-dest-root-orig
= PATH¶ Specify the path to an existing location that can be used as a fast working directory for the original make. If this is specified, the
fcm
make command will be invoked in a temporary directory under this location before being copied back to the actual destination.
-
Config
fast-dest-root-cont
= PATH¶ Specify the path to an existing location that can be used as a fast working directory for the continuation make. If this is specified, the
fcm make
command will be invoked in a temporary directory under this location before being copied back to the actual destination.
-
Config
make-name-orig
= NAME¶ Specify the context name of the original make. The default is a null string. You can specify an alternate context name if this is undesirable. The
fcm make
command will be invoked with the--name=NAME
option offcm make
.
-
Config
make-name-cont
= NAME¶ Specify the context name of the continuation make. If the default
fcm_make
→fcm_make2
mapping is used, the context name of the continuation make will be set to2
. You can specify an alternate context name if this is undesirable. The continuation command will be invoked with the--name=NAME
option offcm make
.
-
Config
mirror-step
= STEP-NAME¶ Specify the name of the mirror step, if not mirror. The application will normally look for a matching task in the suite (e.g.
fcm_make
→fcm_make2
) which will continue thefcm make
command at a remoteHOST
. If such a task is found, it will add the configurationmirror.target=HOST:cylc-run/$ROSE_SUITE_NAME/share/$ROSE_TASK_NAME
as an argument to thefcm make
command to substitute the mirror target. To switch off this feature, setSTEP-NAME
to a null string, i.e.mirror-step=
.
-
Config
opt.jobs
= N¶ Env Var: ROSE_TASK_N_JOBS
Default: 4 This can be used to control the number of processes
fcm make
would use in parallel.
-
Config
orig-cont-map
= ORIG-NAME:CONT-NAME¶ This setting allows you to override the default
fcm_make
→fcm_make2
mapping between the names of the original and the continuation tasks in the suite.
-
Config
use-pwd
= true¶ By default, the application changes the working directory to
$ROSE_SUITE_DIR/share/$ROSE_TASK_NAME
. This option will stop this, and the working directory is the normal working directory of the task.
-
Config