1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-03 17:56:21 +03:00
occt/genproj.bat
abv d6cda17a42 0028701: Configuration - add support of VS 2017
Added support of Visual Studio 2017 (15) in CMake build procedure.
CMake 3.7.2 or above is required to generate projects for VS 2017.

Since version of compiler and toolset remained at 14 (now they are 14.1), and they use the same run-time, the same third-party products as for VS 2015 (14) can be used.
Also the name of the folder for installation of OCCT binaries in OCCT-standard layout (default on Windows) remains "vc14".

Support of Visual Studio 2017 is added in genproj generator and relevant environment, with format specifier "vc141".

The syntax of the genproj command is revised:
- UWP is considered as separate platform ("uwp" alternative to "wnt"), not part of IDE specification
- Option "IDE" is renamed to "Format"
- Obsolete name of local variable "aWokStation" is replaced by equivalent "theFormat"

In environment scripts, additional variables are defined (derived from VCVER, see adm/vcver.bat):
- VCLIB defines name of the subdirectory specific to VS version; it is the same as VCVER except that for VCVER=vc141 VCLIB=vc14 and for VCVER=141-uwp VCLIB=vc14-uwp
- VCFMT is VCVER without optional suffix "-uwp"
- VCPROP is "NativeDesktop" for normal builds or "Universal" for UWP builds

Command genconf is amended to:
- Detect presence of VS 2017 (separately for desktop and UWP)
- Use only two first digits after "vc" in format specification for search of third-party libs
- Have more space in user interface for VS specification

All supported variants of VCVER variable are documented in dev guides / buiding / msvc
2017-07-13 17:29:45 +03:00

55 lines
1.2 KiB
Batchfile

@echo off
rem Helper script to run generation of VS projects on Windows.
rem Running it requires that Tcl should be in the PATH
rem Optional arguments: Format OS
rem Format can be vc10, vc11, vc12, vc14, vc141, cbp, or xcd
rem OS can be wnt, uwp, mac, or lin
SET "OLD_PATH=%PATH%"
rem run GUI configurator if custom.bat is missing
if not exist "%~dp0custom.bat" (
call %~dp0genconf.bat
)
if not exist "%~dp0custom.bat" (
echo Error: custom.bat is not present.
echo Run the script again to generate custom.bat, or create it manually
goto :eof
)
if exist "%~dp0env.bat" (
call "%~dp0env.bat" %1
)
rem find Tcl
set "TCL_EXEC=tclsh.exe"
for %%X in (%TCL_EXEC%) do (set TCL_FOUND=%%~$PATH:X)
set "TCL_EXEC2=tclsh86.exe"
if not defined TCL_FOUND (
for %%X in (%TCL_EXEC2%) do (
set TCL_FOUND=%%~$PATH:X
set TCL_EXEC=%TCL_EXEC2%
)
)
rem fail if Tcl is not found
if not defined TCL_FOUND (
echo Error: "%TCL_EXEC%" is not found. Please update PATH variable ^(use custom.bat^)
goto :eof
)
set aPlatform=%2
if "%aPlatform%" == "" (
set aPlatform=wnt
if "%VCPROP%" == "Universal" (
set aPlatform=uwp
)
)
cd %~dp0
%TCL_EXEC% %~dp0adm/start.tcl genproj %VCFMT% %aPlatform% %3 %4 %5
SET "PATH=%OLD_PATH%"