diff -r c7c26511138f -r 7c4a911dc066 buildframework/helium/sf/java/imaker/imaker.rst --- a/buildframework/helium/sf/java/imaker/imaker.rst Wed Jun 16 16:51:40 2010 +0300 +++ b/buildframework/helium/sf/java/imaker/imaker.rst Fri Aug 13 14:59:05 2010 +0300 @@ -5,7 +5,8 @@ Configuring ROM creation ======================== -Called by ``build-roms`` target. +Called by :hlm-t:`build-roms` target. + .. index:: single: imakerconfigurationset type @@ -17,21 +18,21 @@ The imakerconfigurationset supports imakerconfiguration nested elements. -'''imakerconfiguration''' element: +**imakerconfiguration** element: -.. csv-table:: Ant properties to modify +.. csv-table:: Attributes to modify :header: "Attribute", "Description", "Values" - "``regionalVariation``", "Enable regional variation switching. - Deprecated (always false)", "false" + ":hlm-p:`regionalVariation`", "Enable regional variation switching. - Deprecated (always false)", "false" The imakerconfiguration supports three sub-types: -.. csv-table:: Ant properties to modify +.. csv-table:: Attributes to modify :header: "Sub-type", "Description" - "``makefileset``", "Defines the list of iMaker configuration to run image creation on." - "``targetset``", "List of regular expression used to match which target need to be executed." - "``variableset``", "List of variable to set when executing iMaker." + ":hlm-p:`makefileset`", "Defines the list of iMaker configuration to run image creation on." + ":hlm-p:`targetset`", "List of regular expression used to match which target need to be executed." + ":hlm-p:`variableset`", "List of variable to set when executing iMaker." Example of configuration: @@ -94,7 +95,7 @@ How to configure the target --------------------------- -The target can be configured by defining an hlm:imakerconfigurationset element with the '''imaker.rom.config''' reference. +The target can be configured by defining an hlm:imakerconfigurationset element with the **imaker.rom.config** reference. .. code-block:: xml @@ -102,10 +103,66 @@ ... -The other configurable element is the engine. The '''imaker.engine''' property defines the reference +The other configurable element is the engine. The :hlm-p:`imaker.engine` property defines the reference to the engine configuration to use for building the roms. Helium defines two engines by default: -* imaker.engine.default: multithreaded engine (hlm:defaultEngine type) -* imaker.engine.ec: ECA engine - cluster base execution (hlm:emakeEngine type) + + - imaker.engine.default: multithreaded engine (hlm:defaultEngine type) + - imaker.engine.ec: ECA engine - cluster base execution (hlm:emakeEngine type) -If the property is not defined Helium will guess the best engine to used based on the build.system property. - \ No newline at end of file +If the property is not defined Helium will guess the best engine to used based on the :hlm-p:`build.system` property. + + + +The imakerconfiguration +----------------------- + +The imakerconfiguration enables the build manager to configure his iMaker builds based on introspection. +The makefileset element will configure the filtering of the "imaker help-config" command. +Then for each of the configuration found the targetset elements will be used to filter the output from +the "imaker -f configuration.mk help-target-*-list" command. Finally a set of command will be generated. + +Each command will then be configure using the set of variables defined by the variableset elements. +Only the WORKDIR variable is under the task control to ensure call safety during the parallelization. +The usage of the variablegroup will allow you to duplicate the common set of commands and apply +additional variables. Example: + + + .. code-block:: xml + + + + + + + + + + + + + + + + + + + + + + + + + + +This configuration might produce the following calls : + + .. code-block:: xml + + imaker -f /epoc32/rom/config/platform/product/image_conf_product_ui.mk TYPE=rnd USE_FOTI=0 USE_FOTA=1 core + imaker -f /epoc32/rom/config/platform/product/image_conf_product_ui.mk TYPE=subcon USE_FOTI=0 USE_FOTA=1 core + imaker -f /epoc32/rom/config/platform/product/image_conf_product_ui.mk TYPE=rnd USE_FOTI=0 USE_FOTA=1 langpack_01 + imaker -f /epoc32/rom/config/platform/product/image_conf_product_ui.mk TYPE=subcon USE_FOTI=0 USE_FOTA=1 langpack_01 + + + + \ No newline at end of file