The switch.gbs script file is located in the GBS_SYSTEM_PATH directory and
is used to define the environment in which the System has to function.
Here all external items must be defined. e.g.:
To edit the file: gbsedit switch.gbs
In GBS the switch.gbs script file and the site.gbs script file are the only files allowed to contain absolute disk-addresses
As this part remains consistent for the various Systems on your computer (SITE) you can also define the GBSEXT_..._ROOT EnvVars in a separate file site.gbs(.bat/.sh) instead. (described below)
In some cases (e.g. svn or git) you can set the GBSEXT_..._PATH to PATH. No GBSEXT_..._REL is needed in this case.
@ECHO OFF
::================================================
:: File: %FILE%
:: Path: %PATH%
:: System Name: %SYSTEM_NAME%
::================================================
if NOT [%1] == [entry] goto :do_exit
::
:: ENTRY: set items
::
::-------------------------------------------
:: ROOT Section
:: This part can be deleted if <GBS_BASE_PATH>/site.gbs.bat is used
::-------------------------------------------
if NOT [%GBS_SITE%] == [%SITE%] goto :NOT_%SITE%
::
:: %SITE%
::
::
:: Version Control
::
::set GBSEXT_GIT_ROOT=C:\Program Files\Git
::set GBSEXT_SVN_ROOT=C:\Program Files\Subversion
::
:: Builds
::
::set GBSEXT_MSVS2012_ROOT=C:\Program Files (x86)\Microsoft Visual Studio 11.0
::set GBSEXT_MSVS2012_KIT_ROOT=C:\Program Files (x86)\Windows Kits
::set GBSEXT_MSBUILD_ROOT=C:\Windows\Microsoft.NET\Framework
::set GBSEXT_MINGW_ROOT=C:\MinGW
::
:: Audits
::
::set GBSEXT_QAC_ROOT=C:\MyPrograms\PRQA\QAC
::set GBSEXT_QACPP_ROOT=C:\MyPrograms\PRQA\QACPP
::set GBSEXT_PCLINT_ROOT=C:\MyPrograms\PC-Lint
::set GBSEXT_CPPTEST_ROOT=C:\MyPrograms\Parasoft\C++test
::
:: Tools
::
::set GBSEXT_DOXYGEN_ROOT=C:\MyPrograms\doxygen
::
:: GBS Settings
::
goto :end_site
:NOT_%SITE%
if NOT [%GBS_SITE%] == [OTHER] goto :NOT_OTHER
::
:: OTHER
::
goto :end_site
:NOT_OTHER
echo *******
echo ** Unknown site '%GBS_SITE%'
echo ** Must be one of [ %SITE% OTHER ]
echo *******
::false
goto :error_exit
:end_site
::--------------------------------------------
:: REL and PATH Section
::-------------------------------------------
::
:: Version Control
::
::set GBSEXT_GIT_PATH=PATH
::set GBSEXT_SVN_PATH=PATH
::
:: Builds
::
::set GBSEXT_MSVS2012_CONS_REL=2012
::set GBSEXT_MSVS2012_CONS_PATH=%GBSEXT_MSVS2012_ROOT%
::set GBSEXT_MSVS2012_KIT_REL=8.0
::set GBSEXT_MSVS2012_KIT_PATH=%GBSEXT_MSVS2012_KIT_ROOT%\%GBSEXT_MSVS2012_KIT_REL%
::set GBSEXT_MSBUILD_REL=v4.0.30319
::set GBSEXT_MSBUILD_PATH=%GBSEXT_MSBUILD_ROOT%\%GBSEXT_MSBUILD_REL%
::set GBSEXT_MINGW_BASE_REL=2013072200
::set GBSEXT_MINGW_CPP_PATH=%GBSEXT_MINGW_ROOT%\%GBSEXT_MINGW_BASE_REL%
::set GBSEXT_MINGW_CPP_REL=6.3.0
::set GBSEXT_MINGW_BASE_REL=2013072200
::set GBSEXT_MINGW_GCC_PATH=%GBSEXT_MINGW_ROOT%\%GBSEXT_MINGW_BASE_REL%
::set GBSEXT_MINGW_GCC_REL=6.3.0
::
:: Audits
::
::set GBSEXT_QAC_REL=8.1-R
::set GBSEXT_QAC_PATH=%GBSEXT_QAC_ROOT%\%GBSEXT_QAC_REL%
::set GBSEXT_QACPP_REL=3.0-R
::set GBSEXT_QACPP_PATH=%GBSEXT_QACPP_ROOT%\%GBSEXT_QACPP_REL%
::set GBSEXT_PCLINT_REL=8.00x
::set GBSEXT_PCLINT_PATH=%GBSEXT_PCLINT_ROOT%\%GBSEXT_PCLINT_REL%
::SET GBSEXT_CPPTEST_REL=9.6
::SET GBSEXT_CPPTEST_PATH=%GBSEXT_CPPTEST_ROOT%\%GBSEXT_CPPTEST_REL%
::SET GBSEXT_CPPTEST_BUILD=9.6.0.99
::
:: Tools
::
::set GBSEXT_DOXYGEN_REL=3.5
::set GBSEXT_DOXYGEN_PATH=%GBSEXT_DOXYGEN_ROOT%
::
:: Audit Tools
::
::set QAC_REL=%GBSEXT_QAC_REL%
::set QACROOT=%GBSEXT_QAC_PATH%
::set QACPP_REL=%GBSEXT_QACPP_REL%
::set QACPPROOT=%GBSEXT_QACPP_PATH%
goto end_entry_exit
:do_exit
if NOT [%1] == [exit] goto :no_entry_exit
::
:: unset items
::
goto :end_entry_exit
:no_entry_exit
echo *****
echo ** SYSTEM/switch.gbs: Usage = call switch.gbs.bat [ entry ^| exit ]
echo *****
goto :error_exit
:end_entry_exit
:: true
goto :EOF
:error_exit
::
:: Error-exit
::
set GBS_RC=1
goto :EOF
:::EOF:::
#!must_be_sourced
#=================================================
# File: %FILE%
# Path: %PATH%
# System Name: %SYSTEM_NAME%
#=================================================
GBS_SWITCH_RC=0
if [[ $1 = "entry" ]]
then
#
# ENTRY: set items
#
#--------------------------------------------
# ROOT Section
# This part can be deleted if <GBS_BASE_PATH>/site.gbs.sh is used
#--------------------------------------------
if [[ $GBS_SITE = "%SITE%" ]]
then
#
# %SITE%
#
#
# Version Control
#
#export GBSEXT_GIT_ROOT=PATH
#export GBSEXT_SVN_ROOT=PATH
#
# Builds
#
#export GBSEXT_LGNU_CPP_ROOT=/usr/lib/gcc/x86_64-linux-gnu
#export GBSEXT_LGNU_GCC_ROOT=/usr/lib/gcc/x86_64-linux-gnu
#
# Audits
#
#export GBSEXT_QAC_ROOT=/apl/cadappl_linux_ia32/qac
#export GBSEXT_QACPP_ROOT=/apl/cadappl_linux_ia32/qac++
#
# Tools
#
#
# GBS Settings
#
true
elif [[ $GBS_SITE = "OTHER" ]]
then
#
# OTHER
#
true
else
echo "SWITCH.GBS: *****"
echo "SWITCH.GBS: ** Unknown Site $GBS_SITE"
echo "SWITCH.GBS: ** Must be one of '%SITE% OTHER'"
echo "SWITCH.GBS: *****"
GBS_SWITCH_RC=1
fi
#--------------------------------------------
# REL and PATH Section
#--------------------------------------------
if [[ $GBS_SWITCH_RC = 0 ]]
then
#
# Version Control
#
#export GBSEXT_GIT_PATH=PATH
#export GBSEXT_SVN_PATH=PATH
#
# Builds
#
#export GBSEXT_LGNU_CPP_REL=7
#export GBSEXT_LGNU_CPP_PATH=$GBSEXT_LGNU_CPP_ROOT/$GBSEXT_LGNU_CPP_REL
#export GBSEXT_LGNU_GCC_REL=7
#export GBSEXT_LGNU_GCC_PATH=$GBSEXT_LGNU_GCC_ROOT/$GBSEXT_LGNU_GCC_REL
#
# Audits
#
#set GBSEXT_QAC_REL=8.1-R
#set GBSEXT_QAC_PATH=$GBSEXT_QAC_ROOT-$GBSEXT_QAC_REL
#set GBSEXT_QACPP_REL=3.0-R
#set GBSEXT_QACPP_PATH=$GBSEXT_QACPP_ROOT-$GBSEXT_QACPP_REL
#
# Tools
#
true
fi
elif [[ $1 = "exit" ]]
then
#
# EXIT: unset items
#
true
else
echo "SWITCH.GBS: *****"
echo "SWITCH.GBS: ** switch.gbs.sh: Usage = . switch.gbs.sh [ entry | exit ]"
echo "SWITCH.GBS: *****"
GBS_SWITCH_RC=1
fi
[[ $GBS_SWITCH_RC = 1 ]] && export GBS_RC=1
unset GBS_SWITCH_RC
##EOF##