3 echo "##########################################################################"
4 echo "ParaView" $VERSION
5 echo "##########################################################################"
7 rm -Rf $PRODUCT_INSTALL
9 PVLIBVERSION=`echo ${VERSION} | awk -F. '{printf("%d.%d",$1,$2)}'`
10 export python_name=python$PYTHON_VERSION
15 CMAKE_OPTIONS+=" -DCMAKE_VERBOSE_MAKEFILE=ON"
18 CMAKE_OPTIONS+=" -DCMAKE_INSTALL_PREFIX:STRING=${PRODUCT_INSTALL}"
19 if [ -n "$SAT_DEBUG" ]
21 CMAKE_OPTIONS+=" -DCMAKE_BUILD_TYPE:STRING=Debug"
23 CMAKE_OPTIONS+=" -DCMAKE_BUILD_TYPE:STRING=Release"
25 CMAKE_OPTIONS+=" -DBUILD_SHARED_LIBS:BOOL=ON"
26 CMAKE_OPTIONS+=" -DBUILD_TESTING:BOOL=OFF"
31 #if [[ $BITS == "64" ]]
33 # CMAKE_OPTIONS+=" -DCMAKE_CXX_FLAGS:STRING=-m64"
34 # CMAKE_OPTIONS+=" -DCMAKE_C_FLAGS:STRING=-m64"
36 # OP 29/05/2018 Add 2 options used by BO
37 CMAKE_OPTIONS+=" -DCMAKE_CXX_FLAGS:STRING=-m64"
38 CMAKE_OPTIONS+=" -DCMAKE_C_FLAGS:STRING=-m64"
40 ### Paraview general settings
41 CMAKE_OPTIONS+=" -DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON"
45 CMAKE_OPTIONS+=" -DPARAVIEW_USE_MPI:BOOL=ON"
46 if [ -n "$MPI_ROOT_DIR" ]; then
47 CMAKE_OPTIONS+=" -DCMAKE_CXX_COMPILER:STRING=${MPI_CXX_COMPILER}"
48 CMAKE_OPTIONS+=" -DCMAKE_C_COMPILER:STRING=${MPI_C_COMPILER}"
50 CMAKE_OPTIONS+=" -DPARAVIEW_ENABLE_CATALYST:BOOL=ON"
51 # OP 11/04/2018 Option not used
52 # CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_CoProcessingScriptGenerator:BOOL=ON"
53 # OP 29/05/2018 Option not used
54 #CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_CatalystScriptGenerator:BOOL=ON"
55 # OP 29/05/2018 Add option used by BO
56 CMAKE_OPTIONS+=" -DPARAVIEW_ENABLE_COPROCESSING:BOOL=ON"
58 CMAKE_OPTIONS+=" -DPARAVIEW_USE_MPI:BOOL=OFF"
59 CMAKE_OPTIONS+=" -DCMAKE_CXX_COMPILER:STRING=`which g++`"
60 CMAKE_OPTIONS+=" -DCMAKE_C_COMPILER:STRING=`which gcc`"
61 CMAKE_OPTIONS+=" -DPARAVIEW_ENABLE_CATALYST:BOOL=OFF"
62 # OP 11/04/2018 Option not used
63 # CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_CoProcessingScriptGenerator:BOOL=OFF"
64 # OP 29/05/2018 Option not used
65 #CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_CatalystScriptGenerator:BOOL=OFF"
66 # OP 29/05/2018 Add option used by BO
67 CMAKE_OPTIONS+=" -DPARAVIEW_ENABLE_COPROCESSING:BOOL=OFF"
70 ### VTK general settings
71 CMAKE_OPTIONS+=" -DVTK_USE_64BIT_IDS:BOOL=OFF" # issue 1779
72 CMAKE_OPTIONS+=" -DVTK_PYTHON_FULL_THREADSAFE=ON"
73 CMAKE_OPTIONS+=" -DVTK_NO_PYTHON_THREADS:BOOL=OFF" # Make sure Python is thread-safe in ParaView
75 # OP inhibit embedded Pygments and use the system (or SALOME) one
76 CMAKE_OPTIONS+=" -DVTK_USE_SYSTEM_PYGMENTS:BOOL=ON"
78 # TA - OP 17/01/2018 Add options for ParaView libraries installation
79 # due to latest version of ParaView-b5c4c893
80 CMAKE_OPTIONS+=" -DVTK_INSTALL_LIBRARY_DIR=lib/paraview-${PVLIBVERSION}"
81 CMAKE_OPTIONS+=" -DVTK_INSTALL_ARCHIVE_DIR=lib/paraview-${PVLIBVERSION}"
82 CMAKE_OPTIONS+=" -DVTK_PYTHON_SITE_PACKAGES_SUFFIX=site-packages"
83 CMAKE_OPTIONS+=" -DPARAVIEW_INSTALL_PLUGINS_DIR=lib/paraview-${PVLIBVERSION}/plugins"
84 CMAKE_OPTIONS+=" -DVTKm_INSTALL_LIB_DIR=lib/paraview-${PVLIBVERSION}"
86 CMAKE_OPTIONS+=" -DVTK_REPORT_OPENGL_ERRORS:BOOL=OFF"
88 ### OpenGL2 backend for performance improvment
89 # https://blog.kitware.com/new-opengl-rendering-in-vtk/
90 # OpenGl2 mandatory in this version of paraview
91 CMAKE_OPTIONS+=" -DVTK_RENDERING_BACKEND:STRING=OpenGL2"
92 ### OpenMP to speed computation of some filters
93 # https://blog.kitware.com/simple-parallel-computing-with-vtksmptools-2/
94 # https://blog.kitware.com/accelerated-filters-in-paraview-5/
95 #CMAKE_OPTIONS+=" -DVTK_SMP_IMPLEMENTATION_TYPE=OpenMP"
98 CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_QT_GUI:BOOL=ON"
99 if [ -n "$QT5_ROOT_DIR" ]
101 CMAKE_OPTIONS+=" -DPARAVIEW_QT_VERSION=5"
102 # OP 29/05/2018 Add option used by BO
103 CMAKE_OPTIONS="${CMAKE_OPTIONS} -DQT_HELP_GENERATOR:STRING=${QT5_ROOT_DIR}/bin/qhelpgenerator"
105 # OP 29/05/2018 Add option used by BO
106 CMAKE_OPTIONS="${CMAKE_OPTIONS} -DVTK_BUILD_QT_DESIGNER_PLUGIN:BOOL=OFF"
109 CMAKE_OPTIONS+=" -DPARAVIEW_ENABLE_PYTHON:BOOL=ON"
111 # OP 29/05/2018 Add option used by BO
112 CMAKE_OPTIONS="${CMAKE_OPTIONS} -DVTK_WRAP_PYTHON:BOOL=ON"
114 if [ -n "$PYTHONHOME" ]
116 # with a native python, do not use these options
117 CMAKE_OPTIONS+=" -DPYTHON_EXECUTABLE:STRING=${PYTHON_ROOT_DIR}/bin/${python_name}"
118 CMAKE_OPTIONS+=" -DPYTHON_INCLUDE_DIR:STRING=${PYTHON_ROOT_DIR}/include/${python_name}"
119 if [ ${PYTHON_VERSION%%.*} == 3 ]
122 #CMAKE_OPTIONS+=" -DPYTHON_LIBRARY:STRING=${PYTHON_ROOT_DIR}/lib/${python_name}/config-${PYTHON_VERSION}/lib${python_name}.so"
123 CMAKE_OPTIONS+=" -DPYTHON_LIBRARY:STRING=${PYTHON_ROOT_DIR}/lib/lib${python_name}.so"
125 CMAKE_OPTIONS+=" -DPYTHON_LIBRARY:STRING=${PYTHON_ROOT_DIR}/lib/${python_name}/config/lib${python_name}.so"
130 # OP 29/05/2018 Option not used
131 #CMAKE_OPTIONS+=" -DVTK_WRAP_TCL:BOOL=OFF"
132 CMAKE_OPTIONS+=" -DVTK_WRAP_JAVA:BOOL=OFF"
135 CMAKE_OPTIONS+=" -DVTK_USE_SYSTEM_HDF5:BOOL=ON"
136 # OP 11/04/2018 Option not used
137 #CMAKE_OPTIONS+=" -DHDF5_DIR:PATH=${HDF5_ROOT_DIR}/share/cmake/hdf5"
138 # OP 29/05/2018 Option not used
139 #CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_H5PartReader:BOOL=ON"
141 ### VisIt Database bridge settings
142 CMAKE_OPTIONS+=" -DPARAVIEW_USE_VISITBRIDGE=ON"
144 ### Boost settings (needed when activating VisIt bridge)
145 CMAKE_OPTIONS+=" -DBOOST_ROOT=${BOOST_ROOT_DIR}"
148 # VTK and system gl2ps conflict resolution
149 CMAKE_OPTIONS+=" -DVTK_USE_SYSTEM_GL2PS:BOOL=ON"
150 if [ -n "$GL2PS_ROOT_DIR" ]
152 # with a native gl2ps, do not use these options
153 CMAKE_OPTIONS+=" -DGL2PS_INCLUDE_DIR:STRING=${GL2PS_ROOT_DIR}/include"
154 CMAKE_OPTIONS+=" -DGL2PS_LIBRARY:STRING=${GL2PS_ROOT_DIR}/lib/libgl2ps.so"
158 CMAKE_OPTIONS+=" -DVTK_USE_SYSTEM_LIBXML2:BOOL=ON"
159 if [ -n "$LIBXML2_ROOT_DIR" ]
161 # with a native libxml2, do not use these options
162 CMAKE_OPTIONS+=" -DLIBXML2_INCLUDE_DIR:STRING=${LIBXML2_ROOT_DIR}/include/libxml2"
163 CMAKE_OPTIONS+=" -DLIBXML2_LIBRARIES:STRING=${LIBXML2_ROOT_DIR}/lib/libxml2.so"
164 CMAKE_OPTIONS+=" -DLIBXML2_XMLLINT_EXECUTABLE=${LIBXML2_ROOT_DIR}/bin/xmllint"
167 ### freetype settings
168 CMAKE_OPTIONS+=" -DVTK_USE_SYSTEM_FREETYPE:BOOL=ON"
170 if [ -n "$FREETYPE_ROOT_DIR" ]
172 # with a native freetype, do not use these options
173 CMAKE_OPTIONS+=" -DFREETYPE_INCLUDE_DIRS:STRING=${FREETYPE_ROOT_DIR}/include/freetype2"
174 CMAKE_OPTIONS+=" -DFREETYPE_LIBRARY:STRING=${FREETYPE_ROOT_DIR}/lib/libfreetype.so"
177 ### Extra options (switch off non-used Paraview plug-ins)
178 CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_Moments:BOOL=OFF"
180 # OP 29/05/2018 Option not used
181 #CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_PrismPlugin:BOOL=OFF"
182 CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_SLACTools:BOOL=OFF"
183 CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_SierraPlotTools:BOOL=OFF"
184 CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_PacMan:BOOL=OFF"
186 CMAKE_OPTIONS+=" -DPARAVIEW_ENABLE_WEB=OFF"
188 ### Extra options (switch on required Paraview plug-ins)
189 CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_EyeDomeLighting:BOOL=ON"
191 # OP 29/05/2018 Option not used
192 #CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_ForceTime:BOOL=ON"
194 CMAKE_OPTIONS+=" -DPARAVIEW_BUILD_PLUGIN_SurfaceLIC:BOOL=ON"
195 CMAKE_OPTIONS+=" -DPARAVIEW_ENABLE_MATPLOTLIB:BOOL=ON"
197 # OP 10/04/2018 Add cgns prerequisite for import/export in CGNS format
198 # OP 10/04/2018 Option not used
199 #CMAKE_OPTIONS+=" -DPARAVIEW_ENABLE_CGNS=ON"
200 CMAKE_OPTIONS+=" -DCGNS_FIND_REQUIRED:BOOL=ON"
201 CMAKE_OPTIONS+=" -DCGNS_INCLUDE_DIR:STRING=${CGNS_ROOT_DIR}/include"
202 CMAKE_OPTIONS+=" -DCGNS_LIBRARY:STRING=${CGNS_ROOT_DIR}/lib/libcgns.so"
204 CMAKE_OPTIONS+=" -DVTK_USE_SYSTEM_CGNS:BOOL=ON"
206 echo "*** cmake" ${CMAKE_OPTIONS}
207 cmake ${CMAKE_OPTIONS} $SOURCE_DIR
210 echo "ERROR on cmake"
214 MAKE_OPTIONS="VERBOSE=1 "$MAKE_OPTIONS
216 echo "*** make" $MAKE_OPTIONS
223 if [ ${PYTHON_VERSION%%.*} == 3 ]
226 cp ${BUILD_DIR}/lib/site-packages/__pycache__/six.cpython-35.opt-1.pyc ${BUILD_DIR}/lib/site-packages/six.pyo
227 cp ${BUILD_DIR}/lib/site-packages/__pycache__/six.cpython-35.pyc ${BUILD_DIR}/lib/site-packages/six.pyc
230 echo "*** make install"
234 echo "ERROR on make install"
238 cp -f ./VTK/VTKTargets.cmake $PRODUCT_INSTALL/lib/cmake/paraview-${PVLIBVERSION}/ && \
239 sed -i "s%\(IMPORTED_LOCATION_RELEASE.*\"\).*/lib/\([^/]\+\"\)%\1${PRODUCT_INSTALL}/lib/paraview-${PVLIBVERSION}/\2%g" ${PRODUCT_INSTALL}/lib/cmake/paraview-${PVLIBVERSION}/VTKTargets.cmake && \
240 sed -i "s%\(IMPORTED_LOCATION_RELEASE.*\"\).*/bin/\([^/]\+\"\)%\1${PRODUCT_INSTALL}/bin/\2%g" ${PRODUCT_INSTALL}/lib/cmake/paraview-${PVLIBVERSION}/VTKTargets.cmake && \
241 sed -i "s%[^;\"]\+/qt-[0-9\.]\+/lib/\([^;]\+\)%${QTDIR}/lib/\1%g" ${PRODUCT_INSTALL}/lib/cmake/paraview-${PVLIBVERSION}/VTKTargets.cmake && \
242 sed -i "s%[^;\"]\+/Python-[0-9\.]\+/lib/\([^;]\+\)%${PYTHON_ROOT_DIR}/lib/\1%g" ${PRODUCT_INSTALL}/lib/cmake/paraview-${PVLIBVERSION}/VTKTargets.cmake && \
243 sed -i "s%[^;\"]\+/hdf5-[0-9\.]\+/lib/\([^;]\+\)%${HDF5_ROOT_DIR}/lib/\1%g" ${PRODUCT_INSTALL}/lib/cmake/paraview-${PVLIBVERSION}/VTKTargets.cmake && \
244 sed -i "s%[^;\"]\+/gl2ps-[0-9\.]\+/lib/\([^;]\+\)%${GL2PS_ROOT_DIR}/lib/\1%g" ${PRODUCT_INSTALL}/lib/cmake/paraview-${PVLIBVERSION}/VTKTargets.cmake
246 # && sed -i "s%\${OUTPUT_DIR}/\${module_name}Hierarchy.txt%%" ${PRODUCT_INSTALL}/lib/cmake/paraview-${PVLIBVERSION}/vtkWrapHierarchy.cmake
248 # OP 17/07/2018 post-install suppressed for SALOME master test
249 # OP 26/03/2018 Add post-install suggested by Anthony (EDF) above
260 echo "########## END"