Salome HOME
Help cmake to find ospray and embree cmake configuration files
[tools/sat_salome.git] / products / compil_scripts / ParaView-5.9.0.bat
1 @echo off
2
3 echo ##########################################################################
4 echo ParaView %VERSION% %PYTHON_VERSION% %PYTHON_VERSION:.=%
5 echo ##########################################################################
6
7 IF NOT DEFINED SAT_DEBUG (
8   SET SAT_DEBUG=0
9 )
10
11 if NOT exist "%PRODUCT_INSTALL%" mkdir %PRODUCT_INSTALL%
12 REM clean BUILD directory
13 if exist "%BUILD_DIR%" rmdir /Q /S %BUILD_DIR%
14 mkdir %BUILD_DIR%
15
16 SET PRODUCT_BUILD_TYPE=Release
17 if %SAT_DEBUG% == 1 (
18   set PRODUCT_BUILD_TYPE=Debug
19 )
20
21 set PVLIBVERSION=5.9
22
23 set python_name=python%PYTHON_VERSION%
24
25 set CMAKE_OPTIONS=
26 REM common compiler and install settings
27 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INSTALL_PREFIX:STRING=%PRODUCT_INSTALL:\=/%
28 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_VERBOSE_MAKEFILE=ON
29 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_BUILD_TYPE:STRING=%PRODUCT_BUILD_TYPE%
30
31 REM common ParaView settings
32 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_BUILD_SHARED_LIBS:BOOL=ON
33 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INSTALL_LIBDIR:STRING=lib
34 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBUILD_TESTING:BOOL=OFF
35 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON
36
37 REM OpenGL settings
38 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DOpenGL_GL_PREFERENCE:STRING=LEGACY
39
40 REM Ray-tracing settings
41 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_ENABLE_RAYTRACING:BOOL=ON 
42 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_ENABLE_OSPRAY:BOOL=ON
43 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -Dospray_DIR:PATH=%OSPRAY_ROOT_DIR:\=/%/ospray-2.4.0
44 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -Dembree_DIR:PATH=%EMBREE_ROOT_DIR:\=/%/embree-3.12.2
45
46 REM Paraview general settings
47 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_PYTHON_FULL_THREADSAFE:BOOL=ON
48 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_PYTHON_VERSION:STRING=3
49
50 REM VTK general settings
51
52 REM Use 64 bits IDS on request
53 if DEFINED SALOME_USE_64BIT_IDS (
54     set CMAKE_OPTIONS=%CMAKE_OPTIONS%  -DVTK_USE_64BIT_IDS:BOOL=ON
55 ) else (
56     set CMAKE_OPTIONS=%CMAKE_OPTIONS%  -DVTK_USE_64BIT_IDS:BOOL=OFF
57 )
58
59 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_INSTALL_LIBRARY_DIR=lib/paraview-%PVLIBVERSION%
60 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_INSTALL_ARCHIVE_DIR=lib/paraview-%PVLIBVERSION%
61 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_PYTHON_SITE_PACKAGES_SUFFIX=site-packages
62 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTKm_INSTALL_LIB_DIR=lib/paraview-%PVLIBVERSION%
63
64 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_REPORT_OPENGL_ERRORS:BOOL=OFF
65
66 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_ENABLE_VTK_RenderingLOD:INTERNAL=YES
67 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_ENABLE_VTK_FiltersCore:INTERNAL=YES
68 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_ENABLE_VTK_CommonCore:INTERNAL=YES
69 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_ENABLE_VTK_IOCore:INTERNAL=YES
70 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_ENABLE_VTK_IOEnSight:INTERNAL=YES
71 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_ENABLE_VTK_IOInfovis:INTERNAL=YES
72
73 REM TBB settings
74 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -Dtbb_DIR:PATH=%TBB_ROOT_DIR:\=/%
75
76 REM Qt settings
77 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_USE_QT:BOOL=ON
78 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_BUILD_QT_DESIGNER_PLUGIN:BOOL=OFF
79
80 REM Python settings
81 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_USE_PYTHON:BOOL=ON
82 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_WRAP_PYTHON:BOOL=ON
83 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPython3_INCLUDE_DIR:STRING=%PYTHON_ROOT_DIR:\=/%/include
84 if %SAT_DEBUG% == 0 (
85   set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPython3_LIBRARY:STRING=%PYTHON_ROOT_DIR:\=/%/libs/python%PYTHON_VERSION:.=%.lib
86 ) else (
87   set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPython3_LIBRARY:STRING=%PYTHON_ROOT_DIR:\=/%/libs/python%PYTHON_VERSION:.=%_d.lib
88 )
89 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_PYTHON_FULL_THREADSAFE:BOOL=ON
90 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_NO_PYTHON_THREADS:BOOL=OFF
91 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_PYTHON_VERSION:STRING=3
92 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_WINDOWS_PYTHON_DEBUGGABLE:BOOL=OFF
93
94 REM Java settings
95 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_WRAP_JAVA:BOOL=OFF
96
97 REM MPI settings
98 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_USE_MPI:BOOL=OFF
99
100 REM HDF5 settings
101 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_USE_EXTERNAL_VTK_hdf5:BOOL=ON
102 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DHDF5_DIR:PATH=%HDF5_ROOT_DIR:\=/%/cmake/hdf5
103 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DHDF5_INCLUDE_DIRS:PATH=%HDF5_ROOT_DIR:\=/%/include
104 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DHDF5_USE_STATIC_LIBRARIES:BOOL=OFF
105
106 REM CGNS
107 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_USE_EXTERNAL_ParaView_cgns:BOOL=ON
108 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCGNS_INCLUDE_DIR:PATH=%CGNS_ROOT_DIR:\=/%/include
109 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCGNS_LIBRARY:STRING=%CGNS_ROOT_DIR:\=/%/lib/cgnsdll.lib
110 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_ENABLE_ParaView_cgns:INTERNAL=YES
111 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_ENABLE_ParaView_VTKExtensionsCGNSReader:INTERNAL=YES
112 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_ENABLE_ParaView_VTKExtensionsCGNSWriter:INTERNAL=YES
113
114 REM VisIt Database bridge settings
115 set CMAKE_OPTIONS=%CMAKE_OPTIONS%  -DPARAVIEW_ENABLE_VISITBRIDGE:BOOL=ON
116
117 REM Boost settings
118 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBOOST_ROOT:PATH=%BOOST_ROOT_DIR:\=/%
119 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBoost_ADDITIONAL_VERSIONS="1.67.0 1.67"
120 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBOOST_INCLUDEDIR=%BOOST_ROOT_DIR:\=/%/include/boost-1_67
121 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBoost_INCLUDE_DIR=%BOOST_ROOT_DIR:\=/%/include/boost-1_67
122 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBoost_NO_BOOST_CMAKE:BOOL=ON
123 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBoost_NO_SYSTEM_PATHS:BOOL=ON
124
125 REM libxml2 settings
126 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_USE_EXTERNAL_VTK_libxml2:BOOL=ON
127 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLIBXML2_INCLUDE_DIR:STRING=%LIBXML2_ROOT_DIR:\=/%/include
128 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLIBXML2_LIBRARIES:STRING=%LIBXML2_ROOT_DIR:\=/%/lib/libxml2.lib
129 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLIBXML2_XMLLINT_EXECUTABLE=%LIBXML2_ROOT_DIR:\=/%/bin/xmllint.exe
130
131 REM gl2ps settings
132 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps:BOOL=OFF
133
134 REM freetype settings
135 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_USE_EXTERNAL_VTK_freetype:BOOL=ON
136 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DFREETYPE_INCLUDE_DIRS:PATH=%FREETYPE_ROOT_DIR:\=/%/include
137 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DFREETYPE_INCLUDE_DIR_freetype2:PATH=%FREETYPE_ROOT_DIR:\=/%/include/freetype2
138 if %SAT_DEBUG% == 0 (
139   set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DFREETYPE_LIBRARY:STRING=%FREETYPE_ROOT_DIR:\=/%/lib/freetype.lib
140 ) else (
141   set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DFREETYPE_LIBRARY:STRING=%FREETYPE_ROOT_DIR:\=/%/lib/freetyped.lib
142 )
143 REM ZLIB settings
144 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_USE_EXTERNAL_VTK_zlib:BOOL=ON 
145 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DZLIB_INCLUDE_DIR:STRING=%ZLIB_ROOT_DIR:\=/%/include
146 if %SAT_DEBUG% == 0 (
147   set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DZLIB_LIBRARY:STRING=%ZLIB_ROOT_DIR:\=/%/bin/zlib.lib 
148 ) else (
149   set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DZLIB_LIBRARY:STRING=%ZLIB_ROOT_DIR:\=/%/bin/zlibd.lib 
150 )
151
152 REM Extra options (switch off non-used Paraview plug-ins)
153 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_PLUGINS_DEFAULT:BOOL=ON
154 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_PLUGIN_ENABLE_Moments:BOOL=OFF
155 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_PLUGIN_ENABLE_SLACTools:BOOL=OFF
156 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_PLUGIN_ENABLE_SierraPlotTools:BOOL=OFF
157 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_PLUGIN_ENABLE_PacMan:BOOL=OFF
158 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_PLUGIN_ENABLE_pvblot:BOOL=OFF
159
160 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPARAVIEW_USE_CATALYST:BOOL=ON
161 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCATALYST_BUILD_STUB_IMPLEMENTATION:BOOL=ON
162
163 REM allow additional plugins
164 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_ALL_NEW_OBJECT_FACTORY:BOOL=ON
165
166 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_GENERATOR="Visual Studio 15 2017 Win64"
167
168 cd %BUILD_DIR%
169 echo.
170 echo INFO: running command: %CMAKE_ROOT%\bin\cmake %CMAKE_OPTIONS% %SOURCE_DIR%
171
172 %CMAKE_ROOT%\bin\cmake %CMAKE_OPTIONS% %SOURCE_DIR%
173 if NOT %ERRORLEVEL% == 0 (
174     echo "ERROR on cmake"
175     exit 1
176 )
177
178 echo.
179 echo --------------------------------------------------------------------------
180 echo *** msbuild %MAKE_OPTIONS% ALL_BUILD.vcxproj /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64
181 echo --------------------------------------------------------------------------
182
183 msbuild %MAKE_OPTIONS% ALL_BUILD.vcxproj /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64
184 if NOT %ERRORLEVEL% == 0 (
185     echo ERROR on msbuild ALL_BUILD.vcxproj
186     exit 2
187 )
188
189 echo.
190 echo --------------------------------------------------------------------------
191 echo *** msbuild %MAKE_OPTIONS% INSTALL.vcxproj /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64
192 echo --------------------------------------------------------------------------
193
194 msbuild %MAKE_OPTIONS% INSTALL.vcxproj /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64
195 if NOT %ERRORLEVEL% == 0 (
196     echo ERROR on msbuild INSTALL.vcxproj
197     exit 3
198 )
199
200 REM in order to fullfill some prerequistes by GUI!
201 cd %PRODUCT_INSTALL%\bin
202 mkdir Lib
203 MOVE /Y site-packages Lib\site-packages
204
205 REM move 
206 set MSBUILDDISABLENODEREUSE=1
207
208 REM In debug mode, we need to rename all .pyd to _d.pyd... don't ask why. Seems like a known bug in OmniORB.
209 if %SAT_DEBUG% == 1 (
210   cd %PRODUCT_INSTALL%\bin\Lib\site-packages
211   powershell -Command "Get-ChildItem -File -Recurse *.pyd| ForEach-Object {if ((!$_.Name.EndsWith('_d.pyd'))) {  $_ | Copy-Item -Destination {$_.Name  -replace '.pyd','_d.pyd'}}}"
212 )
213
214 echo.
215 echo --------------------------------------------------------------------------
216 echo *** Post processing
217 echo --------------------------------------------------------------------------
218 echo.
219
220 echo
221 echo "########## END"
222