Compiles one or more BMS maps.
| Attribute | Description | Required |
|---|---|---|
| asmdir | The name of the directory where Assembler copybooks (.mac files) are to be written. Defaults to the current directory. | No |
| coboldir | The name of the directory where COBOL copybooks (.cpy files) are to be written. Defaults to the current directory. | No |
| configuration | The name of the active directive set configuration to be used when searching for directive set files. | No |
| connectionName | The name of the remote connection. | No |
| destdir | The name of the directory where the output from a compilation of a BMS map (.mod file) is to be written. Defaults to the current directory. | No |
| failonerror | Stop the build process if the task exits with a return-code other than 0. Defaults to false. | No |
| is64Bit | If true, compiles to a 64-bit target. Defaults to false (i.e. 32-bit target). | No |
| mf.forceCompile | If true, compiles a BMS source file even if it is not out-of-date. Defaults to false. | No |
| plidir | The name of the directory where PL/I include files (.inc) from a compilation are to be written. Defaults to the current directory. | No |
| projectName | The name of the project. | No |
| settingsDir | The name of the active directive set settings directory. | No |
| srcdir | The name of the directory where the BMS map files are to be picked up from. Defaults to the current directory. | No |
| srcfile | The name of the BMS map source file to be compiled. Must not be used if nested mffilelist elements have been specified. | No |
| mf.buildThreadCount | The maximum number of parallel compilations to be used. Defaults to 1. | No |
| useDirectiveSet | If true, this indicates that the build should search for a directive set file. Defaults to false. | No |
| userEnv | The name of the properties file that contains the user specified environment variables. | No |
| verbose | If true, causes additional informational messages to be displayed by the task. Defaults to false. | No |
By default, the return code of a <bms> task is ignored. When you set failonerror="true", any non-zero response is treated as an error and means the build exits.
Compile a single BMS map to a .mod file and generate the associated COBOL copybook into a copybook sub-directory:
<bms srcfile="acctset.bms" srcdir="${basedir}" destdir="${basedir}/bin" coboldir="${basedir}/copybooks"/>
Compile a single BMS map to a .mod file using compiler directives specified in a nested mfdirlist element to generate map attributes (/SYSPARM=MAP):
<bms srcfile="acctset.bms" srcdir="${basedir}" generatemap="true" destdir="${basedir}/bin" coboldir="${basedir}/copybooks">
<mfdirlist>
<directive name="/CS" value="$"/>
<directive name="/DP" value="."/>
<directive name="/IGNORE"/>
</mfdirlist>
</bms>
Compile a set of BMS map files using compiler directives specified in a referenced mfdirlist elements and a referenced mffilelist element to generate the associated copybooks (/SYSPARM=DSECT):
<mfdirlist id="bms.directives">
<directive name="/CS" value="$"/>
<directive name="/DP" value="."/>
<directive name="/IGNORE"/>
</mfdirlist>
<mffilelist id="bms.source.files">
<file name="map1.bms"/>
<file name="map2.bms"/>
<file name="map3.bms"/>
</mffilelist>
<bms srcdir="${basedir}" generatecopybook="true" copybookname="Copybook1" destdir="${basedir}/bin" coboldir="${basedir}/copybooks" asmdir="${basedir}/copybooks" plidir="${basedir}/copybooks">
<mfdirlist refid="bms.directives"/>
<mffilelist refid="bms.source.files"/>
</bms>