::@echo off

:: keep changes to environment variables local to this script and do not
:: pollute caller's environment
setlocal

:: set the relativ Bauhaus path
SET TOOLSGENERIC_PATH=%TOOLSGENERIC_PATH%
if "%TOOLSGENERIC_PATH%X"=="X" set TOOLSGENERIC_PATH=%CD%\..\..\..\..\..\..\..\ToolsGeneric
set AXIVIONBIN=%TOOLSGENERIC_PATH%\StaticCodeAnalysis\AXIVION\bauhaus-suite-7_4_3-x86_64-windows\bauhaus-suite\bin
echo AXIVIONBIN: %AXIVIONBIN%
set PATH=%AXIVIONBIN%;%PATH%
echo PATH: %PATH%

:: set the environment variable BAUHAUS_PYTHON
set BAUHAUS_PYTHON=%TOOLSGENERIC_PATH%\Utilities\CommonDomain\python\Python310_64bit\python.exe
echo BAUHAUS_PYTHON: %BAUHAUS_PYTHON%

:: update these variables according to your local setup
set AXIVION_DATABASES_DIR=C:\Axivion\dashboard\databases
set AXIVION_DASHBOARD_URL=http://139.128.32.47:9090

:: Invoke the build and analysis for the project
SET AXIVION_PROJECTNAME=%AXIVION_PROJECTNAME%
if "%AXIVION_PROJECTNAME%X"=="X" set AXIVION_PROJECTNAME=CLN1-master
echo AXIVION_PROJECTNAME: %AXIVION_PROJECTNAME%
set BAUHAUS_CONFIG=%~dp0.

:: for on the fly configuration of compiler profile
:: gccsetup --gcc gcc --g++ g++ --toolchain_name MyToolchain --config "%BAUHAUS_CONFIG%\compiler_config.json"


axivion_ci -j %*  || goto finished


:finished
:: exit handler, use "goto finished" to report failure to caller
set _errorlevel=%ERRORLEVEL%
if errorlevel 1 (
    echo %0: error %_errorlevel% >&2
    REM pause
) else (
    echo %0: success >&2
)
exit /b %_errorlevel%
