]> git.lyx.org Git - lyx.git/blob - development/cmake/build5-2017.bat
Move Lexer to support/ directory (and lyx::support namespace)
[lyx.git] / development / cmake / build5-2017.bat
1 echo off
2
3 echo -------------------------------------------------------------------------------------
4 echo -
5 echo Usage build.bat devel/install
6 echo     devel   - Builds Visual Studio project files for development on LyX
7 echo     install - Builds Visual Studio project files with all enabled for installation
8 echo
9 echo -------------------------------------------------------------------------------------
10 echo -
11 echo Call this script from a build directory or set variables (or edit this file)
12 echo     LYX_SOURCE
13 echo     LXY_BUILD
14 echo
15 echo Be sure you've set qmake in PATH.
16 echo -
17 echo GNUWin32 will be downloaded if you don't set the variable GNUWIN32_DIR
18 echo -------------------------------------------------------------------------------------
19 echo -
20 echo -
21
22 if [%1]==[] (
23         echo ERROR: no options.
24     echo Exiting now.
25         goto :eof
26 )
27
28 REM Uncomment the following line if you want to compile in parallel.
29 REM This uses N cl.exe processes, where N is the number of cores.
30 set CL=/MP
31
32 REM Save path
33 set CALLED_FROM=%CD%
34
35 REM Edit pathes here or set the environment variables on your system.
36 set CMAKE_PATH="C:\Program Files\CMake\bin"
37 set QT_PATH="C:\Qt\Qt5.12.5\5.12.5\msvc2017"
38 set GNUWIN32_DIR="D:\LyXGit\Master\lyx-windows-deps-msvc2017"
39 set LYX_SOURCE="D:\LyXGit\Master"
40 set LYX_BUILD="D:\LyXGit\Master\compile-2017"
41
42 if [%LYX_SOURCE%]==[] (
43         set LYX_SOURCE=%~DP0\..\..
44 )
45 echo LyX source: %LYX_SOURCE%
46
47 if [%LYX_BUILD%]==[] (
48         set LYX_BUILD=%CD%
49 )
50 echo LyX build : %LYX_BUILD%
51
52 if [%GNUWIN32_DIR%]==[] (
53         echo GNUWIN32_DIR not set.
54         echo Downloading win32 deps.
55         set DEPENDENCIES_DOWNLOAD="-DLYX_DEPENDENCIES_DOWNLOAD=1"
56 ) else set PATH=%GNUWIN32_DIR%\bin;%PATH%
57 echo GNUWIN32_DIR : %GNUWIN32_DIR%
58
59 if [%QT_PATH%]==[] (
60         echo QT_PATH not set.
61 ) else set PATH=%QT_PATH%;%PATH%
62 echo QT_PATH : %QT_PATH%
63
64 if [%CMAKE_PATH%]==[] (
65         echo CMAKE_PATH not set.
66 ) else set PATH=%CMAKE_PATH%;%PATH%
67 echo CMAKE_PATH : %CMAKE_PATH%
68
69 if not exist %LYX_BUILD% (
70         echo creating "%LYX_BUILD%"
71         mkdir "%LYX_BUILD%"
72         if not exist %LYX_BUILD% (
73                 echo Exiting script.
74                 goto :eof
75         )
76 )
77
78 cd "%LYX_BUILD%"
79
80 REM start with a new cmake run
81 ::del %LYX_BUILD%\CMakeCache.txt
82
83 if "%1%" == "devel" (
84         REM Build solution to develop LyX
85         REM you can add the option "-GNinja" for a faster compilation
86         cmake %LYX_SOURCE% -G"Visual Studio 15 2017" -DCMAKE_PREFIX_PATH=%QT_PATH% -DLYX_USE_QT=QT5 -DLYX_ENABLE_EXPORT_TESTS=0 -DLYX_MERGE_FILES=0 -DLYX_NLS=1 -DLYX_INSTALL=0 -DLYX_RELEASE=0 -DLYX_CONSOLE=ON -DLYX_3RDPARTY_BUILD=1 %DEPENDENCIES_DOWNLOAD%
87         msbuild src\LyX.vcxproj /p:Configuration=Debug
88         msbuild src\tex2lyx\tex2lyx.vcxproj /p:Configuration=Debug
89 )
90
91 if "%1%" == "install" (
92         REM Build solution to develop LyX
93         REM set -DLYX_MERGE_REBUILD and -DLYX_MERGE_FILES to 1 for a version released with an installer
94         cmake %LYX_SOURCE% -GNinja -G"Visual Studio 15 2017" -DCMAKE_PREFIX_PATH=%QT_PATH% -DLYX_USE_QT=QT5 -DLYX_MERGE_REBUILD=0 -DLYX_MERGE_FILES=0 -DLYX_NLS=1 -DLYX_INSTALL=1 -DLYX_RELEASE=1 -DLYX_CONSOLE=OFF %DEPENDENCIES_DOWNLOAD%
95         msbuild INSTALL.vcxproj /p:Configuration=Release
96 )
97
98 REM go back to the dir where the script was called from
99 cd /D %CALLED_FROM%
100
101 :eof