diff -r 000000000000 -r 89d6a7a84779 Symbian3/SDK/Source/GUID-5A3A3EA0-6C03-56F2-B277-B61A27ABFF9E.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/SDK/Source/GUID-5A3A3EA0-6C03-56F2-B277-B61A27ABFF9E.dita Thu Jan 21 18:18:20 2010 +0000 @@ -0,0 +1,274 @@ + + + + + +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 ] +] ]

The usage for test, command, options, platform, build, +and program are detailed in the following sections.

Note: For +certain abld commands, parameters such as platform, build, +and program, do not apply. For example, abld export does +not require these parameters, as exports do not depend on build, platform, +or program.

command

You can use the +following commands with abld:

+ + + +Command +Purpose + + + + +

build

+

To build the binaries for the specified target. It is a combination +of the commands, export, makefile, library, resource, target, +and final.

+
+ +

clean

+

To remove everything built for the abld target.

+
+ +

cleanexport

+

To remove files created by the abld export command.

+
+ +

export

+

To copy the exported files to their destination.

+
+ +

final

+

To allow extension makefiles to run final commands.

+
+ +

freeze

+

To freeze the exported functions in a .def file.

+
+ +

help

+

To display commands, options, or help about a particular command.

+
+ +

library

+

To create import libraries from the frozen .def files.

+
+ +

listing

+

To create an assembler listing file for a particular source file.

+
+ +

makefile

+

To create makefiles or IDE workspaces.

+
+ +

reallyclean

+

To remove all the files. It is similar to the clean command, +and additionally removes exported files and makefiles.

+
+ +

resource

+

To create resource files and bitmaps.

+
+ +

target

+

To create the main executable file and also the resources.

+
+ +

tidy

+

To remove executable files which need not be released.

+
+ + +

options

You can use the following options with abld:

+ + + +Option +Purpose + + + + +

-check or -c

+

To check whether the filenames of the executable and resource files +are compatible for Linux builds.

+
+ +

-debug

+

To generate symbolic debug information for release or debug builds.

+
+ +

-keepgoing or -k

+

To build unrelated targets on error.

+
+ +

-no_debug

+

To not generate symbolic debug information for release or debug +builds.

+
+ +

-savespace or -s

+

To delete intermediate files on success.

+
+ +

-verbose or -v

+

To display the progress of the abld command.

+
+ +

-what or -w

+

To list all releaseables, which include executable/map files, resource +files and so on.

+
+ +

-I <platform>

+

To specify the ARM target to build for, overriding other settings.

+
+ +

-wrap[=<value>]

+

A static analysis tool can be invoked if [=<value>] is +not specified. For example, -wrap. Alternatively, a run-time +analysis tool can be invoked if <value> is specified as proxy. +For example, -wrap=proxy.

+
+ + +

Notes:

    +
  • You can use -debug or -no_debug options +irrespective of the output build type, that is, UREL or UDEB.

  • +
  • All options are not +applicable to all the commands. Wherever applicable, they can be specified +in their long or short forms. For example,

    -keepgoing (long +form)

    or

    -k (short form)

  • +

platform

This specifies the target platform. Possible +platforms are:

+ + + +Target platform +Purpose + + + + +

all

+

To build for all platforms.

+
+ +

armv5

+

To build for ABI v1 of ARMV5 architecture using the RealView Compilation +Tools (RVCT).

+
+ +

armv5_abiv2

+

To build for ABI v2 of ARMV5 architecture using RVCT.

+
+ +

armv6

+

To build for ABI v2 of ARMV6 architecture using RVCT.

+
+ +

armv6t2

+

To build for ABI v2 of ARMV6 architecture that supports Thumb-2 +instruction set, using RVCT.

+
+ +

armv7

+

To build for ABI v2 of ARMV7 architecture that supports Thumb-2 +instruction set, using RVCT.

+
+ + cw_ide

+

To build the Metrowerks CodeWarrior project file (importable .xml file).

+
+ +

gcce

+

To build for ABI v2 of ARMV5 architecture using the GNU GCC compiler.

+
+ +

gccev6

+

To build for ABI v2 of ARMV6 architecture using the GNU GCC compiler.

+
+ +

gccev6t2

+

To build for ABI v2 of ARMV6 architecture that supports Thumb-2 +instruction set, using the GNU GCC compiler.

+
+ +

gccev7

+

To build for ABI v2 of ARMV7 architecture that supports Thumb-2 +instruction set, using the GNU GCC compiler.

+
+ +

gccxml

+

To generate the XML description of the project and the program using +GCC XML.

+
+ +

vs6

+

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

+
+ +

vs2003

+

To create the project files suitable for opening the project in +Microsoft Visual Studio IDE, version .NET2003.

+
+ +

winscw

+

To build for the Symbian emulator on Microsoft Windows, using the +Metrowerks CodeWarrior compiler.

+
+ + +

Note: The target platforms, armv5 and armv5_abiv2 are +compatible with Symbian OS v9.4 or earlier versions. From Symbian OS v9.4 +onwards, these build platforms are renamed as armv5 and armv5_abiv1 to +generate binaries and libraries conforming to ABI v2 and ABI v1 respectively.

If platform is +not specified, or is specified as all, then abld will +build 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 not specified, or specified as all, +then abld will build for both udeb and 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 +not specified, then all the projects within the component are built.

test

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

Note: The test parameter +is not relevant for some commands, and in those cases, it cannot be specified.

+
\ No newline at end of file