plilink

Description

Link a PL/I application.

Parameters

Attribute Description Required
additionaloptions Specify additional options that are to be included on the linker command line. Defaults to "". No
configuration The name of the build configuration. No
destdir The name of the directory where the linked application is to be written. Defaults to the current directory. No
destfile The name of the executable that is to be created. Yes
desttype The type of application the linker is to produce. The value of this attribute must be one of "exe", "dll" or "lib". Note that linker output varies depending on the target platform. The attribute exe will generate an executable with extension ".exe" on Windows and an executable with no extension on UNIX. The attribute dll will generate a dynamic link library with extension ".dll" on Windows and a shared object with extension ".so" on UNIX. The attribute lib will generate a library file with extension ".lib" on Windows and a library file with extension ".a" on UNIX. Yes
failonerror If true, stops the build process if the task exits with a return-code other than 0. Defaults to false. No
is64bit If true, links a 64-bit application. Defaults to true (i.e. 32-bit target). No
objectdir Specify the directory where the object file(s) specified using the objectfile attribute are to be picked up from. No
objectfile The name of the object file to link the application from. Must not be used if nested mffilelist elements have been specified. Defaults to "". No
mf.buildThreadCount The maximum number of parallel compilations to be used. Defaults to 1. 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

Parameters specified as nested elements

mfdirlist
Use nested <mfdirlist> elements to specify directives to be used to compile the program(s). See mfdirlist.
mffilelist
Use nested <mffilelist> elements to specifythe object file name(s) to be included in the linked application. See mffilelist.

Examples

Link a PL/I application from three object files - Program1.obj, Program2.obj and Program3.obj - for a nested mffilelist element using the directives in a referenced mfdirlist element:

<mfdirlist id="plilink_directive">
    <directive name="-debug"/>
</mfdirlist>

<plilink destdir="${basedir}/bin" failonerror="true" desttype="exe" destfile="LinkedProgram">
    <mfdirlist refid="plilink_directive"/>
    <mffilelist srcdir="${basedir}/bin" type="objfile">
        <file name="Program1.obj"/>
        <file name="Program2.obj"/>
        <file name="Program3.obj"/>
    </mffilelist>
</plilink>