GBS Logo HELP HOME Generic Build Support (GBS) - User Manual
Integration with other Tools Bottom Doc. Button
Release RMC-06.02
(2024-04-29)


- Home
Getting Started
- Quick Start
- Release Notes
- Install Notes
- Create a GBS-WA/System
- FAQ
- Terms and Conditions (The Fine Print)
Basics
- Definitions & Acronyms
- Introduction
- Top Level Directory Structure
- Full Directory Structure
- Handling SubSystems & Steps
- Procedures
- Software Configuration Management Support

Manual Pages
- The Command-Line Interface
- All Commands
- The gbssys... Commands
- Generating Code (Building)
- Libraries & Executables and Testing
- Exporting Deliverables
- Auditing
- Customisations (Session)
- Customisations (User)
- Customisations (Admin)
- Integration with other Tools
- Plugins (Admin)
- Environment Variables (EnvVars)
User Files
- The GLKBT (glk/glb/glt) Files
Internal (.gbs) Files
- GBS Files - General
- audit.gbs
- broadcast.gbs
- build.gbs
- export.gbs
- flags_*.gbs
- subsys.gbs (.bat/.sh)
- incs_*.gbs
- owners.gbs
- sca_*.gbs
- scope.gbs
- site.gbs (.bat/.sh)
- steps.gbs
- switch.gbs (.bat/.sh)
- system.gbs
- tool.gbs
Various
- Development
- About
- Metrics Help

Full Documentation
- All Docs - Printable


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

Description

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, Notepad++, 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:
  • The GBS context (The CWD)
  • The GBS command (with its parameters)
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:
  • Current directory
  • Current selected file or even: list of selected files
  • Directory where to execute the command
Because GBS is now invoked from outside a GBS context the gbsstart_here command must be invoked from the generic GBS startup directory GBS_BOOT_PATH.
Linux
~/.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 GBS context (i.e.: GBS_SYSTEM_PATH and possibly SubSystem, Component and/or Build)
  • The GBS command (with its parameters)
The positional parameters of gbsstart allow you to specify the GBS context (System-spec, SubSys, Component and Build).
Specify '.' to take current (default)
Specify '-' to take none
The first parameter also allows for the special '!' and '!!' GBS_SYSTEM_PATH settings, giving the following possibilities:
  • abs_or_rel_path
    Means: Take abs_or_rel_path as GBS_SYSTEM_PATH (standard behaviour)
  • !
    Means: GBS_SYSTEM_PATH is in Current Working Directory. (search the tree)
  • !abs_or_rel_path
    Means: GBS_SYSTEM_PATH is in abs_or_rel_path. (search the tree)
  • !!
    Means: GBS_SYSTEM_PATH is Current Working Directory. (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_BOOT_PATH.
Linux
~/.gbs/gbsstart.sh
Windows
%APPDATA%\.gbs\gbsstart.bat

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_BOOT_PATH points to %APPDATA%\.gbs
Be sure to mark: Capture output and Save before execute
gbsbuild
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbsbuild $(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)
gbssysbuild
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbssysbuild --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)
swb build
Command: $APPDATA\.gbs\gbsstart_here.bat
Argument: gbsswb build
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

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 Builds
Add Make Build

Command definitions:

In Add Make Build Window:
  • Build NameCommand Name
  • Make Buildgbsstart_parameters
  • Build Command → %APPDATA%\.gbs\gbsstart.bat or ~/.gbs/gbsstart.sh
gbsstart_parameters:
gbssysbuild
${workspace_loc:/projectname}\root_dirs - - --exec=gbssysbuild%20--i
gbssysmake
${workspace_loc:/projectname}\root_dirs - - --exec=gbssysmake%20--i
gbssysaudit
${workspace_loc:/projectname}\root_dirs - - --exec=gbssysaudit%20--i
swb build
${workspace_loc:/projectname}\root_dirs - - --exec=gbsswb%20build
doxygen
${workspace_loc:/projectname}\root_dirs - - --exec=gbssysbuild%20doxygen
gbssilo
${workspace_loc:/projectname}\root_dirs - - --exec=gbssysbuild%20gbssilo
gbshelp
- --exec=gbssysbuild%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'
gbsbuild
Command: ~/.gbs/gbsstart_here.sh gbsbuild $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
gbssysbuild
Command: ~/.gbs/gbsstart_here.sh gbssysbuild --i
gbssysmake
Command: ~/.gbs/gbsstart_here.sh gbssysmake --i
gbssysaudit
Command: ~/.gbs/gbsstart_here.sh gbssysaudit --i
swb build
Command: ~/.gbs/gbsstart_here.sh gbsswb build
gbssilo
Command: ~/.gbs/gbsstart_here.sh gbssilo
gbshelp
Command: ~/.gbs/gbsstart_here.sh - --exec=gbsshelp

Notepad++ Bottom Doc. Button Top Document Button Down Section Button Up Section Button Down Chapter Button Up Chapter Button

Install

First you have to install the NppExec plugin
PluginsPlugin Admin...
Install NppExec

Command definitions:

PluginsNppExecExecute... or press F6
In the 'Command(s)' window add and Save... the following commands:
gbsbuild
cd $(CURRENT_DIRECTORY)
"$(SYS.APPDATA)\.gbs\gbsstart_here.bat" gbsbuild $(FILE_NAME)
gbsmake
cd $(CURRENT_DIRECTORY)
"$(SYS.APPDATA)\.gbs\gbsstart_here.bat" gbsmake $(FILE_NAME) --r
gbsaudit
cd $(CURRENT_DIRECTORY)
"$(SYS.APPDATA)\.gbs\gbsstart_here.bat" gbsmake $(FILE_NAME)
gbssysbuild
cd $(CURRENT_DIRECTORY)
"$(SYS.APPDATA)\.gbs\gbsstart_here.bat" gbssysbuild --i
gbssysmake
cd $(CURRENT_DIRECTORY)
~"$(SYS.APPDATA)\.gbs\gbsstart_here.bat" gbssysbuild --i
gbssysaudit
cd $(CURRENT_DIRECTORY)
"$(SYS.APPDATA)\.gbs\gbsstart_here.bat" gbssysaudit --i
gbssystool
cd $(CURRENT_DIRECTORY)
"$(SYS.APPDATA)\.gbs\gbsstart_here.bat" gbssysaudit --i
swb build
cd $(CURRENT_DIRECTORY)
"$(SYS.APPDATA)\.gbs\gbsstart_here.bat" gbsswb build
gbssilo
cd $(CURRENT_DIRECTORY)
"$(SYS.APPDATA)\.gbs\gbsstart_here.bat" gbssilo
gbshelp
cd $(CURRENT_DIRECTORY)
"$(SYS.APPDATA)\.gbs\gbsstart_here.bat" - --exec=gbsshelp
Press F6 to call-up and execute the commands.
Press Ctrl+F6 to immediately execute the last selected command.

You can also place the commands in the Macro list with PluginsNppExecExecute...

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 gbsbuild, 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_BOOT_PATH points to %APPDATA%\.gbs
Be sure to mark: Use Output window
gbsbuild
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments: gbsbuild $(ItemFileName)$(ItemExt)
Initial directory: $(ItemDir)
gbsmake
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments: gbsmake $(ItemFileName)$(ItemExt) --r
Initial directory: $(ItemDir)
gbssysbuild
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments: gbssysbuild --i
Initial directory: $(ItemDir)
gbssysmake
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments: gbssysmake --i
Initial directory: $(ItemDir)
swb build
Command: %APPDATA%\.gbs\gbsstart_here.bat
Arguments: gbsswb build
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

integration.html