tools/build_vcpkg.bat
author Wuzzy <Wuzzy2@mail.ru>
Sat, 02 Nov 2019 13:01:28 +0100
changeset 15501 5a30396f8fb2
parent 15350 81037b6052f4
child 15948 4ec24af5909a
permissions -rw-r--r--
ClimbHome: Change misleading Seed assignment to nil value This was "Seed = ClimbHome", but ClimbHome was a nil value. This code still worked as the engine interpreted the nil value as empty string. But it can be very misleading. This changeset makes the Seed assignment more explicit by assigning the empty string directly. The compability has been tested.

@echo off
setlocal
::CONFIG START
::edit these variables if necessary

::change between Debug and Release
set BUILD_TYPE=Release
::path where Hedgewars will be installed to
::default is %ProgramFiles%\hedgewars and requires running this script as administrator  
set INSTALL_LOCATION=
::set if vcpkg is not on path
set VCPKG_PATH=%VCPKG_ROOT%
::set if CMake is not on path
set CMAKE_PATH=
::set if FPC is not on path
set PASCAL_PATH=
::set to 1 if x86 to x64 cross-compiler is not enabled automatically
set FORCE_X64_CROSS_COMPILE=
::set to 1 to build the game server
set BUILD_SERVER=

::CONFIG END
            
:setup
set CURRDIR="%CD%"
cd %CURRDIR%\..\

set PATH=%PASCAL_PATH%;%VCPKG_PATH%;%CMAKE_PATH%;%PATH%

if "%VSCMD_ARG_TGT_ARCH%" == "x64" (
    set FORCE_X64_CROSS_COMPILE=1
)

if "%FORCE_X64_CROSS_COMPILE%" NEQ "" (
    set CROSS_COMPILE_FLAG=-DWIN32_WIN64_CROSS_COMPILE=1
    if "%INSTALL_LOCATION%" == "" (
        set INSTALL_LOCATION=%ProgramFiles%/hedgewars
    )
) else (
    set CROSS_COMPILE_FLAG=
)

if "%INSTALL_LOCATION%" NEQ "" (
    set PREFIX_FLAG=-DCMAKE_INSTALL_PREFIX=%INSTALL_LOCATION%
) else (
    set PREFIX_FLAG=
)

if "%BUILD_SERVER%" == "" (
    set BUILD_SERVER_FLAG=-DNOSERVER=1
) else (
    set BUILD_SERVER_FLAG=
)             

echo Running cmake...
set ERRORLEVEL=

cmake . -DCMAKE_TOOLCHAIN_FILE="%VCPKG_PATH%\scripts\buildsystems\vcpkg.cmake" -G"NMake Makefiles" %CROSS_COMPILE_FLAG% %BUILD_SERVER_FLAG% "%PREFIX_FLAG%" -DCMAKE_BUILD_TYPE="%BUILD_TYPE%" -DSDL2_BUILDING_LIBRARY=1

if %ERRORLEVEL% NEQ 0 goto exitpoint

echo Configuration completed successfully

echo Building...
set ERRORLEVEL=

nmake

if %ERRORLEVEL% NEQ 0 goto exitpoint

echo Build completed successfully

nmake install

:exitpoint
cd %CURRDIR%

endlocal
pause