1 setlocal 2 3 IF %language%==cpp GOTO build_cpp 4 IF %language%==csharp GOTO build_csharp 5 6 echo Unsupported language %language%. Exiting. 7 goto :error 8 9 :build_cpp 10 echo Building C++ 11 mkdir build_msvc 12 cd build_msvc 13 cmake -G "%generator%" -Dprotobuf_BUILD_SHARED_LIBS=%BUILD_DLL% ../cmake 14 msbuild protobuf.sln /p:Platform=%vcplatform% /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" || goto error 15 cd %configuration% 16 tests.exe || goto error 17 goto :EOF 18 19 :build_csharp 20 echo Building C# 21 cd csharp\src 22 dotnet restore 23 dotnet build -c %configuration% Google.Protobuf Google.Protobuf.Test Google.Protobuf.Conformance || goto error 24 25 echo Testing C# 26 dotnet test -c %configuration% Google.Protobuf.Test || goto error 27 28 goto :EOF 29 30 :error 31 echo Failed! 32 EXIT /b %ERRORLEVEL% 33