Windows.bat 4.46 KB
Newer Older
Jan Möbius's avatar
Jan Möbius committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
mkdir build-release

cd build-release

IF "%ARCHITECTURE%" == "x64" (
  set ARCH_VS= Win64
  set STRING_ARCH=64-Bit
) else (
  set ARCH_VS=
  set STRING_ARCH=32-Bit
)

IF "%SHARED%" == "TRUE" (
  set STRING_DLL=-DLL
) ELSE (
  set STRING_DLL=
)


IF "%BUILD_PLATFORM%" == "VS2015" (
Jan Möbius's avatar
Jan Möbius committed
21
    set LIBPATH=E:\libs\VS2015
Jan Möbius's avatar
Jan Möbius committed
22 23 24 25 26
    set GTESTVERSION=gtest-1.7.0
    set GENERATOR=Visual Studio 14%ARCH_VS%
    set VS_PATH="C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.com"

    IF "%ARCHITECTURE%" == "x64" (
Jan Möbius's avatar
Jan Möbius committed
27 28
      set QT_INSTALL_PATH=E:\Qt\Qt5.6.0-vs2015-%STRING_ARCH%\5.6\msvc2015_64
      set QT_BASE_CONFIG=-DQT5_INSTALL_PATH=E:\Qt\Qt5.6.0-vs2015-%STRING_ARCH%\5.6\msvc2015_64
Jan Möbius's avatar
Jan Möbius committed
29 30 31
    )

    IF "%ARCHITECTURE%" == "x32" (
Jan Möbius's avatar
Jan Möbius committed
32 33
      set QT_INSTALL_PATH=E:\Qt\Qt5.6.0-vs2015-%STRING_ARCH%\5.6\msvc2015
      set QT_BASE_CONFIG=-DQT5_INSTALL_PATH=E:\Qt\Qt5.6.0-vs2015-%STRING_ARCH%\5.6\msvc2015
Jan Möbius's avatar
Jan Möbius committed
34 35 36 37
    )

) 

Jan Möbius's avatar
Jan Möbius committed
38 39 40 41
IF "%BUILD_PLATFORM%" == "VS2017" (
    set LIBPATH=E:\libs\VS2017
    set GTESTVERSION=gtest-1.7.0
    set GENERATOR=Visual Studio 15%ARCH_VS%
Jan Möbius's avatar
Jan Möbius committed
42
    set VS_PATH="C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\devenv.com"
Jan Möbius's avatar
Jan Möbius committed
43 44 45 46 47 48 49 50

    IF "%ARCHITECTURE%" == "x64" (
      set QT_INSTALL_PATH=E:\Qt\Qt5.10.1\5.10.1\msvc2017_64
      set QT_BASE_CONFIG=-DQT5_INSTALL_PATH=E:\Qt\Qt5.10.1\5.10.1\msvc2017_64
    )

) 

Jan Möbius's avatar
Jan Möbius committed
51 52 53 54

IF "%APPS%" == "ON" (
  set STRING_APPS=

Kersten Schuster's avatar
Kersten Schuster committed
55 56
  ECHO "Copying Platform plugins from %QT_INSTALL_PATH%\plugins\platforms to Build\plugins\platforms"
  
Kersten Schuster's avatar
Kersten Schuster committed
57

Kersten Schuster's avatar
Kersten Schuster committed
58
  
Jan Möbius's avatar
Jan Möbius committed
59
  REM Create the platform plugins subdirectory for the qt plugins required to run the gui apps
Kersten Schuster's avatar
Kersten Schuster committed
60
  mkdir Build
Jan Möbius's avatar
Jan Möbius committed
61 62
  mkdir Build\plugins
  mkdir Build\plugins\platforms
Kersten Schuster's avatar
Kersten Schuster committed
63
  
Jan Möbius's avatar
Jan Möbius committed
64 65
  REM Copy the platform plugins subdirectory for the qt plugins required to run the gui apps
  xcopy /Y %QT_INSTALL_PATH%\plugins\platforms Build\plugins\platforms 
schultz's avatar
schultz committed
66
  set CMAKE_CONFIGURATION=%QT_BASE_CONFIG%
Jan Möbius's avatar
Jan Möbius committed
67 68 69 70 71
) ELSE (
  set STRING_APPS=-no-apps
  set CMAKE_CONFIGURATION=
)

Jan Möbius's avatar
Jan Möbius committed
72 73 74



Jan Möbius's avatar
Jan Möbius committed
75 76
ECHO "============================================================="
ECHO "============================================================="
Jan Möbius's avatar
Jan Möbius committed
77
ECHO "Building with :"
Jan Möbius's avatar
Jan Möbius committed
78
whoami
Jan Möbius's avatar
Jan Möbius committed
79 80 81 82 83 84 85 86 87 88
ECHO "ARCHITECTURE        : %ARCHITECTURE%"
ECHO "BUILD_PLATFORM      : %BUILD_PLATFORM%"
ECHO "GTESTVERSION        : %GTESTVERSION%"
ECHO "GENERATOR           : %GENERATOR%"
ECHO "VS_PATH             : %VS_PATH%"
ECHO "LIBPATH             : %LIBPATH%"
ECHO "APPS                : %APPS%"
ECHO "SHARED              : %SHARED%"
ECHO "QT_INSTALL_PATH     : %QT_INSTALL_PATH%"
ECHO "CMAKE_CONFIGURATION : %CMAKE_CONFIGURATION%"
Jan Möbius's avatar
Jan Möbius committed
89 90
ECHO "============================================================="
ECHO "============================================================="
Jan Möbius's avatar
Jan Möbius committed
91 92 93 94 95 96 97 98 99 100
ECHO ""
ECHO "Running Build environment checks"

IF EXIST %LIBPATH%\ (
  ECHO "LIBPATH ... Ok"
) ELSE (
  ECHO "LIBPATH not found!"
  exit 10;
)

Jan Möbius's avatar
Jan Möbius committed
101

Jan Möbius's avatar
Jan Möbius committed
102 103 104
IF EXIST %QT_INSTALL_PATH%\ (
  ECHO "QT_INSTALL_PATH ... Ok"
) ELSE (
Kersten Schuster's avatar
Kersten Schuster committed
105
  ECHO "QT_INSTALL_PATH: %QT_INSTALL_PATH%\ not found!"
Jan Möbius's avatar
Jan Möbius committed
106 107
  exit 10;
)
Jan Möbius's avatar
Jan Möbius committed
108

Jan Möbius's avatar
Jan Möbius committed
109

110
"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%" -G "%GENERATOR%"  -DCMAKE_BUILD_TYPE=Release -DBUILD_APPS=%APPS% -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DCMAKE_WINDOWS_LIBS_DIR="e:\libs" -DOPENMESH_BUILD_SHARED=%SHARED% %CMAKE_CONFIGURATION% ..
Jan Möbius's avatar
Jan Möbius committed
111 112 113 114 115 116 117 118 119

%VS_PATH% /Build "Release" OpenMesh.sln /Project "ALL_BUILD"

IF %errorlevel% NEQ 0 exit /b %errorlevel%

cd unittests

unittests.exe --gtest_output=xml

120 121
unittests_customvec.exe --gtest_output=xml

Jan Möbius's avatar
Jan Möbius committed
122 123 124 125 126 127 128 129
cd ..

cd ..

mkdir build-debug

cd build-debug

130
"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%" -G "%GENERATOR%" -DOPENMESH_BUILD_UNIT_TESTS=TRUE  -DCMAKE_BUILD_TYPE=Debug -DOPENMESH_BUILD_SHARED=%SHARED% -DBUILD_APPS=%APPS% %CMAKE_CONFIGURATION% ..
Jan Möbius's avatar
Jan Möbius committed
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147

%VS_PATH% /Build "Debug" OpenMesh.sln /Project "ALL_BUILD"

IF %errorlevel% NEQ 0 exit /b %errorlevel%


copy Build\lib\*d.lib ..\build-release\Build\lib

IF "%SHARED%" == "TRUE" (
  copy Build\*.dll ..\build-release\Build
) 


cd unittests

unittests.exe --gtest_output=xml

148 149
unittests_customvec.exe --gtest_output=xml

Jan Möbius's avatar
Jan Möbius committed
150 151 152 153 154 155 156 157 158 159
IF %errorlevel% NEQ 0 exit /b %errorlevel%

cd ..

cd ..

cd build-release

del *.exe

160
"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%"  -G "%GENERATOR%" -DBUILD_APPS=%APPS% -DCMAKE_BUILD_TYPE=Release %CMAKE_CONFIGURATION% ..
Jan Möbius's avatar
Jan Möbius committed
161 162 163 164 165

%VS_PATH% /Build "Release" OpenMesh.sln /Project "PACKAGE"

IF %errorlevel% NEQ 0 exit /b %errorlevel%

166
move OpenMesh-*.exe "OpenMesh-8.0-Git-Master-%CI_BUILD_REF%-%BUILD_PLATFORM%-%STRING_ARCH%%STRING_DLL%%STRING_APPS%.exe"
Jan Möbius's avatar
Jan Möbius committed
167 168 169