Symbian
Symbian OS Library

SYMBIAN OS V9.3

[Index] [Spacer] [Previous] [Next]



abld command syntax overview

The abld batch file is used to control all aspects of building a project. The batch file is created using bldmake from a component description file.

Invocation syntax

abld [ test ] command [ options ] [ platform [ build [ program ] ] ]

A summary of command, options, platform, build, program, and test are given below.

Note that, for certain abld commands, not all the parameters, such as platform, build and program, apply. For example, abld export does not take these parameters, as exports do not depend on any of build, platform or program.

command

Possible commands are as follows:

build

Combines commands export, makefile, library, resource, target, and final.

clean

Removes everything built with abld target

cleanexport

Removes files created by abld export

export

Copies the exported files to their destinations

final

Allows extension makefiles to execute final commands

freeze

Freezes exported functions in a .def file

help

Displays commands, options or help about a particular command

library

Creates import libraries from the frozen .def files

listing

Creates an assembler listing file for a particular source file

makefile

Creates makefiles or IDE workspaces

reallyclean

As clean, but also removes exported files and makefiles

resource

Creates resources files and bitmaps.

target

Creates the main executable and also the resources

tidy

Removes executables which need not be released

options

Possible options are as follows:

-check or -c

Check that the releasables are present

-debug

Generates symbolic debug information for release or debug builds.

-keepgoing or -k

build unrelated targets on error

-no_debug

Does not generate symbolic debug information for release or debug builds.

-savespace or -s

Delete intermediate files on success

-verbose or -v

Display tools calls as they happen

-what or -w

List the releasables

-i <platform>

Specifies the ARM target to build for, overriding other settings.

Note that you can either use -debug to generate or -no_debug to not generate the symbolic debug information, irrespective of UREL or UDEB build.

Note also that not all the options apply for all the commands. Where they do apply, they can be specified in either their long or abbreviated forms. For example,

-keepgoing (long form)

or

-k (abbreviated form)

platform

This specifies the target platform. Possible platforms are:

all

All platforms

armv5

ABI for ARM Architecture v1, ARMv5 architecture, using ARM RVCT compiler

armv5_abiv2

ABI for ARM Architecture v2, ARMv5 architecture, using ARM RVCT compiler

armv6

ABI for ARM Architecture v2, ARMv6 architecture, using ARM RVCT compiler

cw_ide

Metrowerks CodeWarrior project (importable .xml file).

gcce

ABI for ARM Architecture v2, ARMv5 architecture, using GNU GCC compiler

gccxml

XML description of the project and the program, using GCC XML

vs6

Creates project files suitable for opening in the Microsoft Visual Studio IDE, version Visual C++ v6

vs2003

Creates project files suitable for opening in the Microsoft Visual Studio IDE, version .NET2003

winscw

Symbian OS emulator on Microsoft Windows, using Metrowerks CodeWarrior compiler

If platform is not specified, or is specified as all, then abld will carry out the specified command for all the platforms specified in the component description file.

Basenames of .mmp files or extension makefiles must not be platform names.

build

This specifies the build type. Possible types are:

udeb

Debug build

urel

Release build

all

Debug and release builds

If build is unspecified, or specified as all, then abld will carry out the specified command for both builds: udeb and then urel.

Basenames of .mmp files or extension makefiles must not be build type names.

program

This specifies the basename of a particular .mmp file or extension makefile, in order to limit the command to a single project within a component.

If program is unspecified, the specified command will be carried out for all projects within the component.

test

Where test is specified before command, the command will operate on all the projects defined by .mmp files listed in the prj_testmmpfiles section of the component description file, rather than those projects defined by .mmp files listed in the prj_mmpfiles section.

Note that the test parameter is irrelevant for some commands and, in those cases, cannot be specified.