3 %bcond_with system_protobuf # build with system protobuf library
5 Summary: Parallel visualization application
10 Group: Applications/Engineering
11 URL: http://www.paraview.org/
12 Source0: http://www.paraview.org/files/v4.0/%{name}-v%{version}-source.tgz
13 # Source0-md5: 6a300744eaf32676a3a7e1b42eb642c7
14 Source1: %{name}_22x22.png
16 Patch0: %{name}-vtk-use-system-libs.patch
17 Patch1: %{name}-install.patch
18 Patch2: %{name}-system-Protobuf.patch
19 Patch3: %{name}-system-netcdf.patch
20 Patch4: disable-broken-tests.patch
21 Patch5: protobuf.patch
22 BuildRequires: Mesa-libOSMesa-devel
23 BuildRequires: QtDesigner-devel
24 BuildRequires: QtHelp-devel
25 BuildRequires: QtSql-devel
26 BuildRequires: QtSql-sqlite3
27 BuildRequires: QtUiTools-devel
28 BuildRequires: QtXmlPatterns-devel
29 BuildRequires: QtWebKit-devel
30 BuildRequires: boost-devel
32 BuildRequires: desktop-file-utils
33 BuildRequires: doxygen
34 BuildRequires: expat-devel
35 BuildRequires: freetype-devel
36 BuildRequires: gl2ps-devel
37 BuildRequires: gnuplot
38 BuildRequires: graphviz
39 BuildRequires: hdf5-devel
40 BuildRequires: libjpeg-devel
41 BuildRequires: libpng-devel
42 BuildRequires: libtheora-devel
43 BuildRequires: libtiff-devel
44 BuildRequires: netcdf-devel
45 BuildRequires: netcdf-cxx-devel
46 BuildRequires: openssl-devel
47 %{?with_system_protobuf:BuildRequires: protobuf-devel}
48 BuildRequires: python-devel
49 BuildRequires: qt4-build
50 BuildRequires: readline-devel
51 BuildRequires: tk-devel
53 BuildRequires: zlib-devel
54 Requires(post): desktop-file-utils
55 Requires(postun): desktop-file-utils
56 Requires: QtSql-sqlite3
57 %requires_eq_to hdf5 hdf5-devel
58 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
60 %define skip_post_check_so lib.*Python.*\.so.*
62 # avoid provide clash with vtk.spec
63 %define _noautoprov libvtk.*\.so.* vtk.*\.so.*
66 ParaView is an application designed with the need to visualize large
67 data sets in mind. The goals of the ParaView project include the
70 - Develop an open-source, multi-platform visualization application.
71 - Support distributed computation models to process large data sets.
72 - Create an open, flexible, and intuitive user interface.
73 - Develop an extensible architecture based on open standards.
75 ParaView runs on distributed and shared memory parallel as well as
76 single processor systems and has been successfully tested on Windows,
77 Linux and various Unix workstations and clusters. Under the hood,
78 ParaView uses the Visualization Toolkit as the data processing and
79 rendering engine and has a user interface written using a unique blend
82 NOTE: The version in this package has NOT been compiled with MPI
86 Summary: Development files for %{name}
87 Group: Development/Libraries
88 Requires: %{name} = %{version}-%{release}
91 The %{name}-devel package contains libraries and header files for
92 developing applications that use %{name}.
95 %setup -q -n %{name}-v%{version}-source
101 %if %{with system_protobuf}
104 #Remove included thirdparty sources just to be sure
105 for x in protobuf ; do
106 rm -r ThirdParty/$x/vtk$x
110 for x in expat freetype gl2ps hdf5 jpeg libxml2 netcdf oggtheora png sqlite tiff zlib ; do
111 rm -r VTK/ThirdParty/$x/vtk$x
114 %{__rm} -r ParaViewCore/ServerImplementation/Default/Testing
121 -DCMAKE_BUILD_TYPE=RelWithDebInfo \
122 -DCMAKE_CXX_COMPILER:FILEPATH=%{__cxx} \
123 -DCMAKE_C_COMPILER:FILEPATH=%{__cc} \
124 -DPV_INSTALL_INCLUDE_DIR:PATH=include/paraview \
125 -DPV_INSTALL_LIBRARY_DIR:PATH=%{_lib}/paraview \
126 -DTCL_LIBRARY:PATH=tcl \
127 -DTK_LIBRARY:PATH=tk \
128 -DPARAVIEW_BUILD_PLUGIN_AdiosReader:BOOL=ON \
129 -DPARAVIEW_BUILD_PLUGIN_CoProcessingScriptGenerator:BOOL=ON \
130 -DPARAVIEW_BUILD_PLUGIN_EyeDomeLighting:BOOL=ON \
131 -DPARAVIEW_BUILD_PLUGIN_ForceTime:BOOL=ON \
132 -DPARAVIEW_ENABLE_PYTHON:BOOL=ON \
133 -DPARAVIEW_INSTALL_THIRD_PARTY_LIBRARIES:BOOL=OFF \
134 -DPARAVIEW_INSTALL_DEVELOPMENT_FILES:BOOL=ON \
135 -DVTK_INSTALL_ARCHIVE_DIR:PATH=%{_lib}/paraview \
136 -DVTK_INSTALL_INCLUDE_DIR:PATH=include/paraview \
137 -DVTK_INSTALL_LIBRARY_DIR:PATH=%{_lib}/paraview \
138 -DVTK_INSTALL_PACKAGE_DIR=share/cmake/paraview \
139 -DVTK_USE_BOOST:BOOL=ON \
140 -DVTK_USE_INFOVIS:BOOL=OFF \
141 -DVTK_USE_N_WAY_ARRAYS:BOOL=ON \
142 -DVTK_USE_OGGTHEORA_ENCODER:BOOL=ON \
143 -DVTK_USE_SYSTEM_EXPAT:BOOL=ON \
144 -DVTK_USE_SYSTEM_FREETYPE:BOOL=ON \
145 -DFREETYPE_INCLUDE_DIRS=%{_includedir}/freetype2 \
146 -DVTK_USE_SYSTEM_HDF5:BOOL=ON \
147 -DVTK_USE_SYSTEM_HDF5=ON \
148 -DHDF5_HL_LIBRARY:FILEPATH=%{_libdir}/libhdf5_hl.so \
149 -DVTK_USE_SYSTEM_JPEG:BOOL=ON \
150 -DVTK_USE_SYSTEM_LIBPROJ4=OFF \
151 -DVTK_USE_SYSTEM_LIBRARIES:BOOL=ON \
152 -DVTK_USE_SYSTEM_LIBRARIES=ON \
153 -DVTK_USE_SYSTEM_PNG:BOOL=ON \
154 -DVTK_USE_SYSTEM_PROTOBUF:BOOL=%{?with_system_protobuf:ON}%{!?with_system_protobuf:OFF} \
155 -DVTK_USE_SYSTEM_TIFF:BOOL=ON \
156 -DVTK_USE_SYSTEM_ZLIB:BOOL=ON \
157 -DVTK_CUSTOM_LIBRARY_SUFFIX="" \
158 -DVTK_USE_INFOVIS:BOOL=OFF \
159 -DVTK_USE_SYSTEM_ICET=OFF \
160 -DVTK_USE_SYSTEM_NETCDF=ON \
161 -DVTK_USE_SYSTEM_QTTESTING=OFF \
162 -DVTK_USE_SYSTEM_XDMF2=OFF \
163 -DXDMF_WRAP_PYTHON:BOOL=ON \
164 -DBUILD_DOCUMENTATION:BOOL=ON \
165 -DBUILD_EXAMPLES:BOOL=ON
167 # -DVTK_PYTHON_SETUP_ARGS="--prefix=/usr --root=$RPM_BUILD_ROOT" \
172 rm -rf $RPM_BUILD_ROOT
173 install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir},%{_datadir}/mime/packages}
175 install %{SOURCE1} $RPM_BUILD_ROOT%{_pixmapsdir}
176 install %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/mime/packages
180 DESTDIR=$RPM_BUILD_ROOT
183 cat > $RPM_BUILD_ROOT%{_desktopdir}/%{name}.desktop <<EOF
187 GenericName=Data Viewer
188 Comment=ParaView allows viewing of large data sets
192 MimeType=application/x-paraview;
193 Categories=Application;Graphics;
197 # Move python files by hand for now
198 %{__mv} $RPM_BUILD_ROOT%{_bindir}/Python/vtk $RPM_BUILD_ROOT%{_libdir}/paraview/site-packages/
199 %{__rm} -r $RPM_BUILD_ROOT%{_bindir}/Python
201 # Install vtk*Python.so by hand for now
202 %{__mv} $RPM_BUILD_ROOT%{_libdir}/paraview/vtk*Python.so $RPM_BUILD_ROOT%{_libdir}/paraview/site-packages/paraview/vtk/
203 %{__mv} $RPM_BUILD_ROOT%{_libdir}/paraview/site-packages/paraview/vtk/vtkPV*Python.so $RPM_BUILD_ROOT%{_libdir}/paraview/site-packages/paraview/
205 # Cleanup vtk conflicting binaries
206 %{__rm} $RPM_BUILD_ROOT%{_bindir}/vtk{EncodeString,HashSource,Parse{Java,OGLExt},ProcessShader,Wrap{Hierarchy,Java,Python,Tcl,TclInit,PythonInit}}
208 %{__rm} $RPM_BUILD_ROOT%{_libdir}/paraview/lib*.a
211 rm -rf $RPM_BUILD_ROOT
215 %update_desktop_database
216 %update_mime_database
220 %update_desktop_database
221 %update_mime_database
224 %defattr(644,root,root,755)
225 %doc License_v1.2.txt
226 %attr(755,root,root) %{_bindir}/paraview
227 %attr(755,root,root) %{_bindir}/pvbatch
228 %attr(755,root,root) %{_bindir}/pvdataserver
229 %attr(755,root,root) %{_bindir}/pvpython
230 %attr(755,root,root) %{_bindir}/pvrenderserver
231 %attr(755,root,root) %{_bindir}/pvserver
232 %attr(755,root,root) %{_bindir}/smTestDriver
233 %dir %{_libdir}/paraview/
234 %attr(755,root,root) %{_libdir}/paraview/paraview
235 %attr(755,root,root) %{_libdir}/paraview/pvbatch
236 %attr(755,root,root) %{_libdir}/paraview/pvdataserver
237 %attr(755,root,root) %{_libdir}/paraview/pvpython
238 %attr(755,root,root) %{_libdir}/paraview/pvrenderserver
239 %attr(755,root,root) %{_libdir}/paraview/pvserver
240 %attr(755,root,root) %{_libdir}/paraview/smTestDriver
241 %attr(755,root,root) %{_libdir}/paraview/lib*.so*
242 %{_libdir}/paraview/.plugins
243 %dir %{_libdir}/paraview/site-packages
244 %{_libdir}/paraview/site-packages/autobahn
245 %dir %{_libdir}/paraview/site-packages/paraview
246 %{_libdir}/paraview/site-packages/paraview/pv_compile_complete
247 %{_libdir}/paraview/site-packages/paraview/*.py*
248 %attr(755,root,root) %{_libdir}/paraview/site-packages/paraview/*.so
249 %{_libdir}/paraview/site-packages/paraview/demos
250 %{_libdir}/paraview/site-packages/paraview/vtk
251 %{_libdir}/paraview/site-packages/twisted
252 %dir %{_libdir}/paraview/site-packages/vtk
253 %{_libdir}/paraview/site-packages/vtk/*.py*
254 %dir %{_libdir}/paraview/site-packages/vtk/gtk
255 %{_libdir}/paraview/site-packages/vtk/gtk/*.py*
256 %dir %{_libdir}/paraview/site-packages/vtk/qt4
257 %{_libdir}/paraview/site-packages/vtk/qt4/*.py*
258 %dir %{_libdir}/paraview/site-packages/vtk/test
259 %{_libdir}/paraview/site-packages/vtk/test/*.py*
260 %dir %{_libdir}/paraview/site-packages/vtk/tk
261 %{_libdir}/paraview/site-packages/vtk/tk/*.py*
262 %dir %{_libdir}/paraview/site-packages/vtk/util
263 %{_libdir}/paraview/site-packages/vtk/util/*.py*
264 %dir %{_libdir}/paraview/site-packages/vtk/wx
265 %{_libdir}/paraview/site-packages/vtk/wx/*.py*
266 %{_libdir}/paraview/site-packages/zope
267 %{_libdir}/paraview/www
268 %{_desktopdir}/ParaView.desktop
269 %{_pixmapsdir}/ParaView_22x22.png
270 %{_datadir}/mime/packages/ParaView.xml
271 %dir %{_datadir}/doc/paraview-4.0
272 %{_datadir}/doc/paraview-4.0/paraview.qch
275 %defattr(644,root,root,755)
276 %attr(755,root,root) %{_bindir}/vtkkwProcessXML
277 %attr(755,root,root) %{_bindir}/vtkWrapClientServer
278 %{_includedir}/paraview
279 %{_datadir}/cmake/paraview