@REM this script builds freeswitch using VS2017 @REM only one platform/configuration will be built @REM runs (probably only) from the commandline @REM usage: Freeswitch.2017.sln [[[.*]ebug] [[.*]elease] [[.*]64] [[.*]32]] @REM e.g. Freeswitch.2017.sln Debug x64 @REM Freeswitch.2017.sln x64 @REM Freeswitch.2017.sln Debug @REM Freeswitch.2017.sln @setlocal @echo on @REM default build @REM change these variables if you want to build differently by default @set configuration=Release @set platform=x64 @REM if commandline parameters contain "ebug" and/or "64 and/or 32" @REM set the configuration/platform to Debug and/or x64 and/or 32 @if "%1"=="" ( @goto :paramsset ) @set params=%* @set xparams=x%params: =% @if not y%xparams:ebug=%==y%xparams% ( set configuration=Debug ) @if not x%xparams:64=%==x%xparams% ( set platform=x64 ) @if not x%xparams:32=%==x%xparams% ( set platform=Win32 ) @if not y%xparams:elease=%==y%xparams% ( set configuration=Debug ) :paramsset @REM use all processors minus 1 when building @REM hmm, this doesn't seem to work as I expected as all my procs are used during the build @set procs=%NUMBER_OF_PROCESSORS% @set /a procs -= 1 @REM check and set VS2017 environment CALL msbuild.cmd if exist %msbuild% ( %msbuild% Freeswitch.2017.sln /m:%procs% /verbosity:normal /property:Configuration=%configuration% /property:Platform=%platform% /fl /flp:logfile=vs2017%platform%%configuration%.log;verbosity=normal ) ELSE ( echo "echo ERROR: Cannot find msbuild. You need Visual Studio 2017 to compile this solution." ) @pause @REM ------ terminate :end with LF otherwise the label is not recognized by the command processor -----