-
-
Notifications
You must be signed in to change notification settings - Fork 306
/
build.bat
47 lines (39 loc) · 1.71 KB
/
build.bat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
@echo off
rem See 'readme.md' file
if "%PROCESSOR_ARCHITECTURE%"=="x86" (
set "PROGRAMFILES32=%ProgramFiles%"
set "PROGRAMFILES64=%ProgramW6432%"
) else if "%PROCESSOR_ARCHITECTURE%"=="AMD64" (
set "PROGRAMFILES32=%ProgramFiles(x86)%"
set "PROGRAMFILES64=%ProgramFiles%"
) else (
echo Unrecognized architecture %PROCESSOR_ARCHITECTURE%
exit
)
set BDS=%PROGRAMFILES32%\Embarcadero\Studio\14.0
set VS_PATH_REL=Microsoft Visual Studio\2022
set MSBUILD_REL=MSBuild\Current\Bin\MSBuild.exe
rem Visual Studio Community 2022 (development machine)
set MSBUILD_COMMUNITY=%PROGRAMFILES64%\%VS_PATH_REL%\Community\%MSBUILD_REL%
set MSBUILD=%MSBUILD_COMMUNITY%
rem Visual Studio 2022 Build Tools (build server)
if not exist "%MSBUILD%" set MSBUILD=%PROGRAMFILES32%\%VS_PATH_REL%\BuildTools\%MSBUILD_REL%
if not exist "%MSBUILD%" set echo Cannot find MSBUILD (%MSBUILD%, %MSBUILD_COMMUNITY%), install Build Tools for Visual Studio 2022 & exit
set WITH_DOTNET=1
if "%BUILD_TARGET%"=="" set BUILD_TARGET=Build
if "%BUILD_CONFIG%"=="" set BUILD_CONFIG=Release
set BUILDTOOLS=%~dp0\buildtools
cd libs
set INTERM_PATH=%~dp0\source
call buildlibs.bat
set INTERM_PATH=
cd ..\source
set BDS_BUILD_PROPERTIES=RELEASE_TYPE=%RELEASE_TYPE%;CONFIG=%BUILD_CONFIG%;INTERM_PATH=.;FINAL_PATH=.
"%MSBUILD%" WinSCP.groupproj /t:%BUILD_TARGET% /p:%BDS_BUILD_PROPERTIES%
"%MSBUILD%" DragExt.cbproj /t:%BUILD_TARGET% /p:%BDS_BUILD_PROPERTIES%;Platform=Win64
if "%WITH_DOTNET%"=="0" goto SKIP_DOTNET
cd ..\dotnet
set DOTNET_BUILD_PROPERTIES=INTERM_PATH=.;FINAL_PATH=.
dotnet restore WinSCPnet.csproj -p:%DOTNET_BUILD_PROPERTIES%
dotnet build WinSCPnet.csproj -c %BUILD_CONFIG% -p:%DOTNET_BUILD_PROPERTIES%
:SKIP_DOTNET