GBS Logo HOME Generic Build Support (GBS) - User Manual
Integration with other Tools Bottom Doc. Button

Contents Bottom Doc. Button Top Document Button Down Section Button Blank

Description
The gbsstart_here Command| The gbsstart Command| Eclipse| Gedit| Crimson Editor| MS Visual Studio

Description Bottom Doc. Button Top Document Button Down Section Button Up Section Button

It is possible to integrate the execution of GBS commands in development tooling like editors, IDEs and buildmanagers.
The command that makes this possible is gbsstart_here.
It is a simplified version of the gbsstart command.
Typical commands are We suggest you keep this order.

The following chapters describe the integrations for:
Eclipse, Crimson Editor, Gedit, MS Visual Studio,

The gbsstart_here Command Bottom Doc. Button Top Document Button Down Section Button Up Section Button Down Chapter Button Blank

The purpose of the gbsstart_here command is to be able to execute a GBS command outside of a GBS context.
For this 2 things are needed: Most Development Environments and/or Editors allow you to specify multiple, named commands that will execute a command-file in which currencies can be set via special codes and/or entries: Because GBS is now invoked from outside a GBS context the gbsstart_here command must be invoked from the generic GBS startup directory GBS_BASE_PATH.
Unix:
~/.gbs/gbsstart_here.sh
Windows:
%APPDATA%\.gbs\gbsstart_here.bat

The gbsstart Command Bottom Doc. Button Top Document Button Down Section Button Up Section Button Down Chapter Button Up Chapter Button

When gbsstart_here cannot be used (because you do not have a CWD), the more complex gbsstart command can be used.

The purpose of the gbsstart command is to be able to execute a GBS command outside of a GBS context.
For this 2 things are needed: The positional parameters of gbsstart allow you to specify the GBS context (Root, SubSys, Component and Target).
Specify '.' to take current (default)
Specify '-' to take none
The first parameter also allows for the special '!' and '!!' GBS_ROOT_PATH settings, giving the following possibilities:
abs_dir_spec
Means: Take abs_dir_spec as GBS_ROOT_PATH (standard behaviour)
!
Means: Search for the GBS_ROOT_PATH from the Current Working Directory upwards.
!abs_file/dir_spec
Means: Search for the GBS_ROOT_PATH from abs_file/dir_spec upwards.
!!
Means: The Current Working Directory IS the GBS_ROOT_PATH (No need to search)
The --exec parameter specifies the command that is to be executed.
No spaces are allowed here so you must use the special space notation ($_, %_ or %20).

Because GBS is now invoked from outside a GBS context the gbsstart command must be invoked from the generic GBS startup directory GBS_BASE_PATH.
Unix:
~/.gbs/gbsstart.sh
Windows:
%APPDATA%\.gbs\gbsstart.bat

Eclipse Bottom Doc. Button Top Document Button Down Section Button Up Section Button Down Chapter Button Up Chapter Button

Location:

Only System-wide commands can be defined here
WindowShow ViewMake Targets
Add Make Target

Command definitions:

In Add Make Target Window: gbsstart_parameters:
gbssysgen
${workspace_loc:/projectname}\root_dirs - - --exec=gbssysgen%20--i
gbssysmake
${workspace_loc:/projectname}\root_dirs - - --exec=gbssysmake%20--i
gbssysaudit
${workspace_loc:/projectname}\root_dirs - - --exec=gbssysaudit%20--i
swt target
${workspace_loc:/projectname}\root_dirs - - --exec=gbsswt%20target
doxygen
${workspace_loc:/projectname}\root_dirs - - --exec=gbssysgen%20doxygen
gbssilo
${workspace_loc:/projectname}\root_dirs - - --exec=gbssysgen%20gbssilo
gbshelp
- --exec=gbssysgen%20gbshelp

Notes:

None

Gedit Bottom Doc. Button Top Document Button Down Section Button Up Section Button Down Chapter Button Up Chapter Button

Enable:

EditPreferencesPlugins
Enable 'External Tools'

Location:

ToolsExternal Tools

Command definitions:

ToolsManage External Tools
The 'External Tools Manager' is started For a new command click on the 'New' icon, in the lower left corner, just above the 'Help'
gbsgen
Command: ~/.gbs/gbsstart_here.sh gbsgen $GEDIT_CURRENT_DOCUMENT_NAME
gbsmake
Command: ~/.gbs/gbsstart_here.sh gbsmake $GEDIT_CURRENT_DOCUMENT_NAME --r
gbsaudit
Command: ~/.gbs/gbsstart_here.sh gbsaudit $GEDIT_CURRENT_DOCUMENT_NAME
gbssysgen
Command: ~/.gbs/gbsstart_here.sh gbssysgen --i
gbssysmake
Command: ~/.gbs/gbsstart_here.sh gbssysmake --i
gbssysaudit
Command: ~/.gbs/gbsstart_here.sh gbssysaudit --i
swt target
Command: ~/.gbs/gbsstart_here.sh gbsswt target
gbssilo
Command: ~/.gbs/gbsstart_here.sh gbssilo
gbshelp
Command: ~/.gbs/gbsstart_here.sh - --exec=gbsshelp

Notes:

None

Crimson Editor Bottom Doc. Button Top Document Button Down Section Button Up Section Button Down Chapter Button Up Chapter Button

Location:

ToolsConf.User Tools...

Command definitions:

Tools On Windows GBS_BASE_PATH points to %APPDATA%\.gbs
Be sure to mark: Capture output and Save before execute
gbsgen
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbsgen $(FileName)
Start in: $(FileDir)
gbsmake
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbsmake $(FileName) --r
Start in: $(FileDir)
gbsaudit
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbsaudit $(FileName)
Start in: $(FileDir)
gbssysgen
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbssysgen --i
Start in: $(FileDir)
gbssysmake
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbssysmake --i
Start in: $(FileDir)
gbssysaudit
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbssysaudit --i
Start in: $(FileDir)
swt target
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbsswt target
Start in: $(FileDir)
gbssilo
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbssilo
Start in: $(FileDir)
gbshelp
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbshelp
Start in: $(FileDir)

Notes

None

MS Visual Studio Bottom Doc. Button Top Document Button Down Section Button Up Section Button Down Chapter Button Up Chapter Button

As a Visual Studio project will be in a non-compliant GBS SubSystem, we cannot use the gbsgen, gbsaudit and gbsmake commands.
If you are using Visual Studio only as an editor in a Full GBS SubSystem, you can use these commands.

Location:

Tools

Command definitions:

ToolsExternal Tools...
On Windows GBS_BASE_PATH points to %APPDATA%\.gbs
Be sure to mark: Use Output window
gbsgen
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments: gbsgen $(ItemFileName)$(ItemExt)
Initial directory: $(ItemDir)
gbsmake
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments: gbsmake $(ItemFileName)$(ItemExt) --r
Initial directory: $(ItemDir)
gbssysgen
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments: gbssysgen --i
Initial directory: $(ItemDir)
gbssysmake
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments: gbssysmake --i
Initial directory: $(ItemDir)
swt target
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments: gbsswt target
Initial directory: $(ItemDir)
gbssilo
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments: gbssilo
Initial directory: $(ItemDir)
gbshelp
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments:- --exec=gbshelp
Initial directory:

Notes:

None