It is possible to integrate the execution of certain GBS commands in development tooling like
editors, IDEs and buildmanagers.
The command that makes this possible is gbsstart
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 Command
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 command (with its parameters)
- The GBS context (i.e.: GBS_ROOT_PATH and possibly SubSystem, Component and/or Target)
Most tools in this context 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
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
Location:
Only System-wide commands can be defined here
Window → Show View → Make Targets
Add Make Target
Command definitions:
In Add Make Target Window:
- Target Name → Command Name
- Make Target → gbsstart_parameters
- Build Command → %APPDATA%\.gbs\gbsstart.bat or ~/.gbs/gbsstart.sh
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
Location:
TBS
Command definitions:
TBS
Notes:
None
Crimson Editor
Location:
Tools → Conf.User Tools...
Command definitions:
On Windows GBS_BASE_PATH points to %APPDATA%\.gbs
Be sure to mark: Capture output and Save before execute
- gbsgen
- Command: %APPDATA%\.gbs\gbsstart.bat
- Argument: ! --exec=gbsgen%20$(FileName)
- Start in: $(FileDir)
- gbsmake
- Command: %APPDATA%\.gbs\gbsstart.bat
- Argument: ! --exec=gbsmake%20$(FileName)%20--r
- Start in: $(FileDir)
- gbsaudit
- Command: %APPDATA%\.gbs\gbsstart.bat
- Argument: ! --exec=gbsaudit%20$(FileName)
- Start in: $(FileDir)
- gbssysgen
- Command: %APPDATA%\.gbs\gbsstart.bat
- Argument: ! - - --exec=gbssysgen%20--i
- Start in: $(FileDir)
- gbssysmake
- Command: %APPDATA%\.gbs\gbsstart.bat
- Argument: ! - - --exec=gbssysmake%20--i
- Start in: $(FileDir)
- gbssysaudit
- Command: %APPDATA%\.gbs\gbsstart.bat
- Argument: ! - - --exec=gbssysaudit%20--i
- Start in: $(FileDir)
- swt target
- Command: %APPDATA%\.gbs\gbsstart.bat
- Argument: ! - - --exec=gbsswt%20target
- Start in: $(FileDir)
Notes
MS Visual Studio
Location:
TBS
Command definitions:
TBS
Notes:
None
Copyright © Randy Marques of Randy Marques Consultancy - All rights reserved