::------------------------------------------------------------------------------------------------------- :: Copyright (C) Microsoft. All rights reserved. :: Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. ::------------------------------------------------------------------------------------------------------- @echo off setlocal if not "%JENKINS_BUILD%" == "True" ( echo This script should be run under a Jenkins Build environment exit /b 2 ) if "%_ENTRY_SCRIPT_NAME%"=="" ( set _ENTRY_SCRIPT_NAME=%0 ) set "_msbuildArgs=" :ContinueArgParse if not [%1]==[] ( :: _BuildArch if [%1]==[x86] ( set _BuildArch=x86 goto :ContinueArgParseEnd ) else if [%1]==[x64] ( set _BuildArch=x64 goto :ContinueArgParseEnd ) else if [%1]==[arm] ( set _BuildArch=arm goto :ContinueArgParseEnd ) :: _BuildArch (deprecated name) if [%1]==[amd64] ( set _BuildArch=x64 goto :ContinueArgParseEnd ) :: _BuildType (new names) if [%1]==[debug] ( set _BuildType=chk goto :ContinueArgParseEnd ) else if [%1]==[test] ( set _BuildType=test goto :ContinueArgParseEnd ) else if [%1]==[release] ( set _BuildType=fre goto :ContinueArgParseEnd ) :: _BuildType (old names) if [%1]==[chk] ( set _BuildType=chk goto :ContinueArgParseEnd ) else if [%1]==[fre] ( set _BuildType=fre goto :ContinueArgParseEnd ) :: _targets if /i [%1] EQU [/c] ( set _targets=/t:Clean,Build goto :ContinueArgParseEnd ) :: DEFAULT - add any other params to %_msBuildArgs% :: _msbuildArgs if [%1] NEQ [] ( set _msbuildArgs=%_msbuildArgs% %1 goto :ContinueArgParseEnd ) :ContinueArgParseEnd shift goto :ContinueArgParse ) if "%_BuildArch%"=="" ( goto :invalidBuildArch ) if "%_BuildType%"=="" ( goto :invalidBuildType ) if "%_LoggingParams%" EQU "" ( set _LoggingParams=/fl1 /flp1:logfile=build_%_BuildArch%%_BuildType%.log;verbosity=normal /fl2 /flp2:logfile=build_%_BuildArch%%_BuildType%.err;errorsonly /fl3 /flp3:logfile=build_%_BuildArch%%_BuildType%.wrn;warningsonly ) set _ChakraBuildConfig= if "%_BuildType%" EQU "chk" ( set _ChakraBuildConfig=Debug ) else if "%_BuildType%" EQU "fre" ( set _ChakraBuildConfig=Release ) else if "%_BuildType%" EQU "test" ( set _ChakraBuildConfig=Test ) else ( echo WARNING: Unknown build type '%_BuildType%' ) set "_msbuildProj=" set _ChakraSolution=%REPO_ROOT%\Build\Chakra.Core.sln set _ChakraConfiguration=all set _CoreBuild=1 if "%_CoreBuild%" EQU "0" ( set _ChakraBuildConfig=%_ChakraConfiguration%-%_ChakraBuildConfig% ) echo MSBuildArgs are %_msBuildArgs% echo msbuild %_msBuildArgs% /m /p:Configuration=%_ChakraBuildConfig% /p:Platform=%_BuildArch% %_ChakraSolution% %_msbuildProj% %_LoggingParams% %_targets% /verbosity:minimal /nr:false msbuild %_msBuildArgs% /m /p:Configuration=%_ChakraBuildConfig% /p:Platform=%_BuildArch% %_ChakraSolution% %_msbuildProj% %_LoggingParams% %_targets% /verbosity:minimal /nr:false goto :end :: ============================================================================ :: Invald Build Arch :: ============================================================================ :invalidBuildArch echo None of the parameters were a valid build architecture. Please specify both architecture and type. goto :examples :: ============================================================================ :: Invald Build Type :: ============================================================================ :invalidBuildType echo None of the parameters were a valid build type. Please specify both architecture and type. goto :examples :: ============================================================================ :: Examples :: ============================================================================ :examples echo Examples: echo. echo %_ENTRY_SCRIPT_NAME% x86 debug echo %_ENTRY_SCRIPT_NAME% x86 test echo %_ENTRY_SCRIPT_NAME% x86 release echo. echo %_ENTRY_SCRIPT_NAME% x64 debug echo %_ENTRY_SCRIPT_NAME% x64 test echo %_ENTRY_SCRIPT_NAME% x64 release goto :end :: ============================================================================ :: Epilogue of script (cleanup) :: ============================================================================ :end endlocal