GBS Logo Generic Build Support (GBS) - User Manual HOME
The steps.gbs file

Purpose

The steps.gbs file is located in the GBS_SYS_PATH directory is used to define the order and conditions in which SubSystems are generated or audited.

General

Please refer to .gbs files: General information

Additional for this file:

Definitions

STEP ALIAS

STEP-definition

Purpose:

To define the order in which SubSystems must be generated

Syntax:

STEP step_name
EXEC = SELECT | SPECIFY | ALLWAYS | FORCE
TARGETS = [ ! ] [ targets-list | - ]
AUDITS = [ ! ] [ audits-list | - ]
COMMAND = command [command_arguments...]

Semantics:

The order in which the STEP definitions appear specifies the order in which the steps must be executed. Cyclic references are not possible.
step_name
SubSystem or Command
If the step_name is a SubSystem-name then it refers to that SubSystem.
Else, there must be a COMMAND line to specify the action to be taken

Each Non-GBS SubSystem must have a set of gbssub... 'generate' scripts in the top-directory of the SubSystem.
  These scripts are:
    gbssubgenbatch_type
    gbssubmake.batch_type
    gbssubaudit.batch_type
    gbssubcleaup_bld.batch_type
    gbssubcleanup_aud.batch_type
  These scripts do not take arguments from the command line, only EnvVars:
    GBS_IGNORE_ERRORS (bool)
    GBS_MAKE ('make' command)
    GBS_FLAGS_type
    GBS_BLD_type
    GBS_MODE, GBS_OPT, GBS_DEBUGGER and GBS_MAP
EXEC
Single, Optional
SELECT == Include this step if specified in command-line (default)
SPECIFY == Only include this step if explicitly specified in command-line
ALLWAYS == Include this step even if not specified in command-line
FORCE == Never skip, Same as ALLWAYS, even if job fails.
TARGETS
Single, Optional
targets-list
Specifies the Targets for which the step must be executed.
Default == all Targets.
If the list is preceded by the optional '!' all non-specified Targets are assumed
A value of '-' specifies a non-specific Target
AUDITS
Single, Optional
audits-list
Specifies the Audits for which the step must be executed.
Default == all Audits.
If the list is preceded by the optional '!' all non-specified Audits are assumed
A value of '-' specifies a non-specific Audit
COMMAND
Single
May not be specified for SubSystem STEP
Must be specified for Command STEP
command
If preceded by '@' or '>' or '.' and no .type: assume .bat on Win32 else .sh

If preceded by '@', find command_file relative to $GBS_SYS_PATH
If preceded by '>', find command_file relative to $GBS_SCRIPTS_PATH/plugins
If preceded by '.', find command_file relative to $GBS_SCRIPTS_PATH

ALIAS-definition

Purpose:

To group step_names and optionally associate a Target

Syntax:

ALIAS alias_name
TARGET = target-name
STEPS = steps-list

Semantics

ALIAS
Must be specified after the STEP-definitions
alias_name
It is good practice to specify the alias_name in uppercase
TARGET
Single, Optional
Specifies associated Target
STEPS
Single, Mandatory
steps-list
'-' (hyphen) may be used to specify 'from' - 'to' sequences

Notes:

None

Example of a steps.gbs:

#
#   STEPS.GBS
#

#
#   STEPS
#
STEP syscopylku
    COMMAND        = @copylku
    EXEC           = SPECIFY
    TARGETS        = st20s6
STEP syscopyhex
    COMMAND        = @copyhex
    EXEC           = SPECIFY
    TARGETS        = mips5m50
STEP syspurge
    COMMAND        = @syspurge
    EXEC           = SPECIFY
STEP sysinit
    COMMAND        = @init
STEP psos_lld_m
    TARGETS        = mips5m50
STEP global_m
    TARGETS        = mips5m50
STEP global_s
    TARGETS        = st20s6
STEP global_u
    TARGETS        = mips5m50 powers st20s6
STEP otv_ext_u
    TARGETS        = mips5m50 st20s6
STEP flextv_m
    TARGETS        = mips5m50
STEP cas_u
    TARGETS        = mips5m50 st20s6
STEP nat_tasks_m
    TARGETS        = mips5m50
STEP nat_tasks_s
    TARGETS        = st20s6
STEP bate_u
    TARGETS        = mips5m50 st20s6
STEP product_m
    TARGETS        = mips5m50
STEP product_s
    TARGETS        = st20s6
STEP 3pa
    TARGETS        = otvflow

STEP copy_export
    COMMAND        = >copy_export/bin/copy_export.pl superglo $GBS_TARGET D:/GBS_EXPORT/%GBS_TARGET%

STEP doxygen
    COMMAND        = >doxygen/bin/doxygen.pl full
    EXEC           = SPECIFY
    TARGETS        = -
    AUDITS         = -

STEP doxygen_api
    COMMAND        = >doxygen/bin/doxygen.pl api
    EXEC           = SPECIFY
    TARGETS        = -
    AUDITS         = -

STEP syscopycmp_m
    COMMAND        = @copycmp
    EXEC           = SPECIFY
    TARGETS        = mips5m50
STEP syscopycmp_s
    EXEC           = SPECIFY
    TARGETS        = st20s6
STEP syserrors
    COMMAND        = @copycmp
    EXEC           = FORCE
STEP syscleanup
    COMMAND        = @cleanup
    EXEC           = SPECIFY

#
#   ALIASES
#
ALIAS ALL_S
    TARGET = st20s6
    STEPS  = syspurge - product_s
ALIAS FLS_S
    TARGET = st20s6
    STEPS  = syscopylku product_s syscopycmp_s
ALIAS ALL_M
    TARGET = mips5m50
    STEPS  = syspurge - sysinit psos_lld_m - product_m
ALIAS FLS_M
    TARGET = mips5m50
    STEPS  = syscopyhex product_m syscopycmp_m

##EOF##