Files
UnrealEngineUWP/Engine/Source/ThirdParty/Imath/BuildForWindows.bat
matt johnson b7423cc1da Imath: build and link the library statically on Windows
This changes the third-party Imath library from being built and linked dynamically on Windows
to being built and linked statically instead. Linux and Mac are already statically linking Imath.

Rebuilds of the third-party Alembic and OpenEXR libraries as well as the LiveCodingConsole.exe
binary were included to pick up the newly static linkage to Imath.

#jira UE-131373
#rb benoit.deschenes, david.harvey, tim.smith
#preflight 61e774f5843acf1b24128abf

#ROBOMERGE-AUTHOR: matt.johnson
#ROBOMERGE-SOURCE: CL 18663625 in //UE5/Release-5.0/... via CL 18663689 via CL 18663731
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v900-18638592)

[CL 18663774 by matt johnson in ue5-main branch]
2022-01-19 15:13:35 -05:00

68 lines
2.0 KiB
Batchfile
Executable File

@echo off
setlocal
set IMATH_VERSION=3.1.3
rem Set as VS2015 for backwards compatibility even though VS2019 is used
rem when building.
set COMPILER_VERSION_NAME=VS2015
set ARCH_NAME=x64
set UE_MODULE_LOCATION=%cd%
set SOURCE_LOCATION=%UE_MODULE_LOCATION%\Imath-%IMATH_VERSION%
set BUILD_LOCATION=%UE_MODULE_LOCATION%\Intermediate
rem Specify all of the include/bin/lib directory variables so that CMake can
rem compute relative paths correctly for the imported targets.
set INSTALL_INCLUDEDIR=include
set INSTALL_BIN_DIR=%COMPILER_VERSION_NAME%\%ARCH_NAME%\bin
set INSTALL_LIB_DIR=%COMPILER_VERSION_NAME%\%ARCH_NAME%\lib
set INSTALL_LOCATION=%UE_MODULE_LOCATION%\Deploy\Imath-%IMATH_VERSION%
set INSTALL_INCLUDE_LOCATION=%INSTALL_LOCATION%\%INSTALL_INCLUDEDIR%
set INSTALL_WIN_LOCATION=%INSTALL_LOCATION%\%COMPILER_VERSION_NAME%
if exist %BUILD_LOCATION% (
rmdir %BUILD_LOCATION% /S /Q)
if exist %INSTALL_INCLUDE_LOCATION% (
rmdir %INSTALL_INCLUDE_LOCATION% /S /Q)
if exist %INSTALL_WIN_LOCATION% (
rmdir %INSTALL_WIN_LOCATION% /S /Q)
mkdir %BUILD_LOCATION%
pushd %BUILD_LOCATION%
echo Configuring build for Imath version %IMATH_VERSION%...
cmake -G "Visual Studio 16 2019" %SOURCE_LOCATION%^
-DCMAKE_INSTALL_PREFIX="%INSTALL_LOCATION%"^
-DCMAKE_INSTALL_INCLUDEDIR="%INSTALL_INCLUDEDIR%"^
-DCMAKE_INSTALL_BINDIR="%INSTALL_BIN_DIR%"^
-DCMAKE_INSTALL_LIBDIR="%INSTALL_LIB_DIR%"^
-DBUILD_SHARED_LIBS=FALSE^
-DBUILD_TESTING=OFF
if %errorlevel% neq 0 exit /B %errorlevel%
echo Building Imath for Debug...
cmake --build . --config Debug -j8
if %errorlevel% neq 0 exit /B %errorlevel%
echo Installing Imath for Debug...
cmake --install . --config Debug
if %errorlevel% neq 0 exit /B %errorlevel%
echo Building Imath for Release...
cmake --build . --config Release -j8
if %errorlevel% neq 0 exit /B %errorlevel%
echo Installing Imath for Release...
cmake --install . --config Release
if %errorlevel% neq 0 exit /B %errorlevel%
popd
echo Done.
endlocal