Momotor lang-gcc-build checklet¶
The mtrchk-org-momotor-lang-gcc-build package provides a checklet to build an executable from C source code using GCC.
Checklet¶
- checklet mtrchk.org.momotor.lang.gcc.build.GccBuild(recipe, product, config, results, task_id, work_dir=None)¶
Compile C source files using GCC
- tasks@scheduler option¶
Enable multiple tasks for this step. If not provided, a single task is generated for this step.
See Scheduler tasks option for the documentation of this option.
- Type:
string
- Required:
False
- Multiple:
False
- Location:
config, recipe, step
- Default:
No default
Provided by:
StepTasksCheckletMixin
- secret option¶
Dynamic secret property value for the result. Momotor LTI will not show steps with a secret property set to
trueto learners, but will still show that step to reviewers.The option value can be one of the following:
alwaysortrue: adds a secret property with valuetrueto the result.false: do not add a secret property to the result.on-fail: adds a secret property with valuetrueto the result if the step fails.on-pass: adds a secret property with valuetrueto the result if the step passed.default: inherits the value from the next provider. If the last provider is ‘default’ no property will be added.
Note that this only adds a secret property with value
true, but never one with valuefalse. This ensures that a default defined in a recipe will be used unless the step or config explicitly override it.The value can contain reference placeholders to inherit the value from another step’s options or properties.
- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
default
Provided by:
SecretOptionMixin
- label option¶
Label for this step. Momotor LTI uses labels as the header of the step in the result view. If a step does not have a label, Momotor LTI will use the step id as the label.
Can contain reference placeholders and task id placeholders.
- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
No default
Provided by:
LabelOptionMixin
- feedback-pass option¶
Feedback to prepend to the report property when this step passes.
Can contain reference placeholders and task id placeholders.
- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
No default
Provided by:
FeedbackOptionMixin
- feedback-fail option¶
Feedback to prepend to the report property when this step fails.
Can contain reference placeholders and task id placeholders.
- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
No default
Provided by:
FeedbackOptionMixin
- timeLimit option¶
Maximum time allowed for execution. Can be supplied in
hh:mm:ssformat, or as seconds- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
No default
Provided by:
ExecutionMixin
- blockLimit option¶
Maximum time allowed without any progress (wall clock time). Can be supplied in
hh:mm:ssformat, or as seconds- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
No default
Provided by:
ExecutionMixin
- memoryLimit option¶
Maximum memory usage allowed for execution. Can use IEC or SI units, eg.
1k(for 1000 bytes) or1KiB(for 1024 bytes)- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
No default
Provided by:
ExecutionMixin
- processLimit option¶
Maximum number of child processes
- Type:
integer
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
No default
Provided by:
ExecutionMixin
- gcc@tools option¶
GCC version(s) to use.
Can be a space or comma separated list of version requirements to indicate alternative version preferences (in order of most to least preferred).
See the tool registry documentation for details.
- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
gcc
- input-file-ref option¶
Reference to the C source files to build.
The files will be copied to a working directory and the file names will be provided to the compiler.
The reference is parsed with
find_files(), see that method for details.- Type:
Any
- Required:
False
- Multiple:
True
- All:
True
- Location:
config, step, recipe
- Default:
@product:#*.c
- extra-file-ref option¶
Reference to the additional source files to build (e.g. header files, libs etc.).
The files will be copied to the directory with the C files.
The reference is parsed with
find_files(), see that method for details.- Type:
Any
- Required:
False
- Multiple:
True
- All:
True
- Location:
config, step, recipe
- Default:
@product:#*.h
- language option¶
Language option (
-x) provided to the GCC compiler.- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
none
- standard option¶
Standard option (
-std) provided to the GCC compiler.- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
No default
- feature-option option¶
Feature option(s) (any boolean option starting with
-f) provided to the GCC compiler.- Type:
Any
- Required:
False
- Multiple:
True
- All:
True
- Location:
config, step, recipe
- Default:
No default
- lib option¶
Libs option(s) (
-l) provided to the GCC compiler.- Type:
Any
- Required:
False
- Multiple:
True
- All:
False
- Location:
config, step, recipe
- Default:
m
- extra-lib option¶
Additional libs option(s) (
-l) provided to the GCC compiler.- Type:
Any
- Required:
False
- Multiple:
True
- All:
True
- Location:
config, step, recipe
- Default:
No default
- optimize option¶
Optimization option (
-O) provided to the GCC compiler.- Type:
Any
- Required:
False
- Multiple:
True
- All:
False
- Location:
config, step, recipe
- Default:
2
- warn option¶
Warning options (any boolean option starting with
-W) provided to the GCC compiler.- Type:
Any
- Required:
False
- Multiple:
True
- All:
True
- Location:
config, step, recipe
- Default:
all
- static-executable option¶
Build a static executable.
- Type:
boolean
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
False
- output-file-name option¶
Name of the executable file.
- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
a.out
- output-file-class option¶
File class for collected executable files.
- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
executable
- pass-score option¶
Score when passing
- Type:
Any
- Required:
False
- Multiple:
False
- Location:
config, step, recipe
- Default:
No default