GBS Logo Generic Build Support (GBS) - User Manual HOME
Quick Start
Environment| Install| Setup| Startup| Getting Started| Commands

Environment

OS / Shell

GBS runs on:

Perl

GBS is based on Perl-scripts.
Perl must be installed and the perl command must be either in the PATH or specified via an Environment-Variable (GBS_PERL_PATH).
You need at least Perl version 5.16.3.
More information on installing Perl for GBS can be found in Install Notes→Environment

Install

If GBS is pre-installed (local or on a network drive) your GBS Administrator will be able to tell you where GBS is installed.
You will then only need to do the Setup as explained below.

If you need to install GBS yourself: More info on Install: Install Notes→Install

Setup

To setup GBS:
If setup was not started by Install: When in gbssetup: What happens on Windows: What happens on Unix/Linux: Note that a beta version will install red shortcuts. The regular versions will install yellow shortcuts.
More info on Setup: Install Notes→Setup

Startup

Startup GBS

Enter:
gbs

The first time you startup GBS you must give it some information:
The Root (System) you are going to use: e.g.: ~/Development/GBSProjects/hello (may take a single root as default)
The SubSystem you are going to use: e.g. main

GBS Manual Page

To obtain current information on all implemented GBS commands enter:
gbsman

GBS Help

To obtain extensive Help in HTML format (including this page) enter:
gbshelp

Getting Started

Organising your GBS-WAs / Systems

You can place a GBS-WA/System anywhere you want. You can also have them all on totally different locations. They do not need to be grouped in one directory, although that is a good idea.
It is recommended to relate the name of the GBS Root directory to the SystemName.
You may also give the GBS LogDir directory a place:

    ... Development -+- Projects -+- systemname1
                     |            +- systemname2
                     |            +- systemname2_3.2
                     |
                     +- GBSLogs
Remember that GBS does not like spaces in directory and filenames and that they are case sensitive!

Connect to an existing GBS System

Create a new GBS-WA/System

You enter swr --new.
Creating a new GBS-WA is serious business.
You can find out how to do it in Create a GBS-WA/System
A good understanding of the concept and principles of GBS is needed.
Once done however, things get extremely simple, convenient and fast.

Commands

Use GBS to navigate through your directories

After you have once set them GBS 'remembers' the following 'currencies'

Displaying Currencies

To display your currencies just enter:
gbs

Currency commands

swr Switch Root: set/change the current Root (and SubSystem (and Component))
sws Switch SubSystem: set/change the current SubSystem (and Component)
swc Switch Component: To set/change the current Component. This command ends with an explicit cdsrc
swt Switch Target: set/change the current Target

Basic commands

gbsedit Create/Edit a file (you can define your own editor with gbssetup )
gbsgen Compile, Link, etc. one or more files
gbssysgen Compile, Link, etc. the whole System (Runs in batch - with logfile)

Navigation commands

cdlogcd to the log directory as specified by GBS_LOG_PATH (or $HOME)
 
cdrootcd to current Root
cddoccd to the doc of the current Root
cddevcd to the dev of the current Root
cdextcd to the ext of the current Root
cdrescd to the res of the current Root
cdsyscd to the sys of the current Root
cdsysgencd to the sysgen of the current Root
cdsysauditcd to the sysaudit of the current Root
cdsystoolscd to the systools of the current Root
cdsilocd to the silo of the current Root
cdtmpcd to the tmp of the current Root
 
cdsubcd to the current SubSystem directory
cdgencd to the gen of the current SubSystem
cdauditcd to the audit of the current SubSystem
cdcompcd to the comp of the current SubSystem
cdimportcd to the import of the current SubSystem
cdexportcd to the export of the current SubSystem
 
cdappcd to the app directory of the current Non GBS SubSystem
 
cdsrccd to the src directory of the current Component
cdinccd to the inc directory of the current Component
cdloccd to the loc directory of the current Component
cdbldcd to the bld directory of the current Component
cdtargetcd to the bld/Target directory of the current Component / Target
cdaudcd to the aud directory of the current Component
cdoptcd to the opt directory of the current Component
cddatcd to the dat directory of the current Component
cdsavcd to the sav directory of the current Component

Other GBS commands

Note that all gbs-commands accept --h for short help and --help for long help

gbsgen, gbssysgen

Commands to compile, link, etc directly

gbsmake, gbssysmake

Commands to compile, link, etc using 'make'

gbsaudit, gbssysaudit

Commands to run Audit programs like QAC and QAC++

gbsmaint

This command enables you to select and execute a number of GBS maintenance functions.
Like:

gbssetup

This command enables you to define your customizations. (Beeps on/off, Define Editor, etc.)

gbsscm

This command enables you to select and execute SCM-related functions in GBS.

There are a lot more command in GBS. They can be found at All Commands.

General notes on the GBS command-line environment

In a prompt, possible values are embedded in parenthesis
e.g.:
GBS: Are you sure? (y/n):

In a prompt, the default value is embedded in square brackets
e.g.:
GBS: Are you sure? (y/n)[y]:

Entering a single '!' will quit the script.
Entering a single '?' will give you some additional help (if available)

In general, options for GBS-commands start with -- (double hyphens).
This is to be able to discern options for GBS and options for applications (like QAC)
All GBS-commands accept --h for short help and --help for long help
More in The Command-line Interface