summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vtk.spec302
1 files changed, 88 insertions, 214 deletions
diff --git a/vtk.spec b/vtk.spec
index b88c35e..5af2dde 100644
--- a/vtk.spec
+++ b/vtk.spec
@@ -87,7 +87,7 @@ BuildRequires: openslide-devel
BuildRequires: PEGTL-devel
BuildRequires: proj-devel
BuildRequires: pugixml-devel
-BuildRequires: python3-devel
+BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: python%{python3_pkgversion}-qt5
BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-qttools-devel
@@ -116,6 +116,67 @@ BuildRequires: netcdf-openmpi-devel
%endif
Requires: hdf5 = %{_hdf5_version}
+%global vtk_devel_requires \
+Requires: cmake \
+%if %{with flexiblas} \
+Requires: flexiblas-devel \
+%else \
+Requires: blas-devel \
+Requires: lapack-devel \
+%endif \
+Requires: blas-devel \
+Requires: boost-devel \
+Requires: cgnslib-devel \
+Requires: cli11-static \
+Requires: double-conversion-devel \
+Requires: eigen3-static \
+Requires: expat-devel \
+%if %{with fmt} \
+Requires: fmt-devel \
+%endif \
+Requires: freetype-devel \
+Requires: gdal-devel \
+%if %{with gl2ps} \
+Requires: gl2ps-devel \
+%endif \
+Requires: glew-devel \
+Requires: jsoncpp-devel \
+Requires: lapack-devel \
+Requires: libarchive-devel \
+Requires: libGL-devel \
+Requires: libharu-devel >= 2.3.0-9 \
+Requires: libjpeg-devel \
+Requires: libogg-devel \
+Requires: libpng-devel \
+Requires: libpq-devel \
+Requires: libtheora-devel \
+Requires: libtiff-devel \
+Requires: libxml2-devel \
+Requires: libX11-devel \
+Requires: libXext-devel \
+Requires: lz4-devel \
+Requires: mariadb-connector-c-devel \
+%if %{with OSMesa} \
+Requires: mesa-libOSMesa-devel \
+%endif \
+Requires: netcdf-cxx-devel \
+Requires: openslide-devel \
+Requires: PEGTL-devel \
+Requires: proj-devel \
+Requires: pugixml-devel \
+Requires: python3-devel \
+Requires: sqlite-devel \
+Requires: qt5-qtbase-devel \
+Requires: qt5-qttools-devel \
+Requires: qt5-qtx11extras-devel \
+Requires: qt5-qtwebkit-devel \
+Requires: utf8cpp-devel \
+Requires: zlib-devel \
+Requires: fastfloat-devel \
+Requires: verdict-devel \
+Requires: json-devel \
+Requires: sqlite-devel \
+
Provides: bundled(kwsys-base64)
Provides: bundled(kwsys-commandlinearguments)
Provides: bundled(kwsys-directory)
@@ -176,67 +237,7 @@ Requires: %{name}-java%{?_isa} = %{version}-%{release}
Requires: python%{python3_pkgversion}-%{name}%{?_isa} = %{version}-%{release}
Requires: hdf5-devel%{?_isa}
Requires: netcdf-mpich-devel%{?_isa}
-Requires: cmake
-%if %{with flexiblas}
-Requires: flexiblas-devel
-%else
-Requires: blas-devel
-Requires: lapack-devel
-%endif
-Requires: blas-devel
-Requires: boost-devel
-Requires: cgnslib-devel
-Requires: cli11-static
-Requires: double-conversion-devel
-# eigen3 is noarch and header-only
-Requires: eigen3-static
-Requires: expat-devel
-%if %{with fmt}
-Requires: fmt-devel
-%endif
-Requires: freetype-devel
-Requires: gdal-devel
-%if %{with gl2ps}
-Requires: gl2ps-devel
-%endif
-Requires: glew-devel
-Requires: jsoncpp-devel
-Requires: lapack-devel
-Requires: libarchive-devel
-Requires: libGL-devel
-Requires: libharu-devel >= 2.3.0-9
-Requires: libjpeg-devel
-Requires: libogg-devel
-Requires: libpng-devel
-Requires: libpq-devel
-Requires: libtheora-devel
-Requires: libtiff-devel
-Requires: libxml2-devel
-Requires: libX11-devel
-Requires: libXext-devel
-Requires: libXt-devel
-Requires: lz4-devel
-Requires: mariadb-connector-c-devel
-%if %{with OSMesa}
-Requires: mesa-libOSMesa-devel
-%endif
-Requires: netcdf-cxx-devel
-Requires: openslide-devel
-Requires: PEGTL-devel
-Requires: proj-devel
-Requires: pugixml-devel
-Requires: python3-devel
-Requires: sqlite-devel
-Requires: qt5-qtbase-devel
-Requires: qt5-qttools-devel
-Requires: qt5-qtx11extras-devel
-Requires: qt5-qtwebkit-devel
-Requires: utf8cpp-devel
-Requires: zlib-devel
-Requires: fastfloat-devel
-Requires: verdict-devel
-Requires: json-devel
-Requires: sqlite-devel
+%{vtk_devel_requires}
%description devel
This provides the VTK header files required to compile C++ programs that
@@ -304,67 +305,7 @@ Requires: %{name}-mpich%{?_isa} = %{version}-%{release}
Requires: python%{python3_pkgversion}-%{name}-mpich%{?_isa} = %{version}-%{release}
Requires: mpich-devel
Requires: hdf5-mpich-devel%{?_isa}
-Requires: cmake
-%if %{with flexiblas}
-Requires: flexiblas-devel
-%else
-Requires: blas-devel
-Requires: lapack-devel
-%endif
-Requires: blas-devel
-Requires: boost-devel
-Requires: cgnslib-devel
-Requires: cli11-static
-Requires: double-conversion-devel
-# eigen3 is noarch and header-only
-Requires: eigen3-static
-Requires: expat-devel
-%if %{with fmt}
-Requires: fmt-devel
-%endif
-Requires: freetype-devel
-Requires: gdal-devel
-%if %{with gl2ps}
-Requires: gl2ps-devel
-%endif
-Requires: glew-devel
-Requires: jsoncpp-devel
-Requires: lapack-devel
-Requires: libarchive-devel
-Requires: libGL-devel
-Requires: libharu-devel >= 2.3.0-9
-Requires: libjpeg-devel
-Requires: libogg-devel
-Requires: libpng-devel
-Requires: libpq-devel
-Requires: libtheora-devel
-Requires: libtiff-devel
-Requires: libxml2-devel
-Requires: libX11-devel
-Requires: libXext-devel
-Requires: libXt-devel
-Requires: lz4-devel
-Requires: mariadb-connector-c-devel
-%if %{with OSMesa}
-Requires: mesa-libOSMesa-devel
-%endif
-Requires: netcdf-cxx-devel
-Requires: openslide-devel
-Requires: PEGTL-devel
-Requires: proj-devel
-Requires: pugixml-devel
-Requires: python3-devel
-Requires: sqlite-devel
-Requires: qt5-qtbase-devel
-Requires: qt5-qttools-devel
-Requires: qt5-qtx11extras-devel
-Requires: qt5-qtwebkit-devel
-Requires: utf8cpp-devel
-Requires: zlib-devel
-Requires: fastfloat-devel
-Requires: verdict-devel
-Requires: json-devel
-Requires: sqlite-devel
+%{vtk_devel_requires}
%description mpich-devel
This provides the VTK header files required to compile C++ programs that
@@ -433,67 +374,7 @@ Requires: python%{python3_pkgversion}-%{name}-openmpi%{?_isa} = %{version}-%{rel
Requires: openmpi-devel
Requires: hdf5-openmpi-devel%{?_isa}
Requires: netcdf-openmpi-devel%{?_isa}
-Requires: cmake
-%if %{with flexiblas}
-Requires: flexiblas-devel
-%else
-Requires: blas-devel
-Requires: lapack-devel
-%endif
-Requires: blas-devel
-Requires: boost-devel
-Requires: cgnslib-devel
-Requires: cli11-static
-Requires: double-conversion-devel
-# eigen3 is noarch and header-only
-Requires: eigen3-static
-Requires: expat-devel
-%if %{with fmt}
-Requires: fmt-devel
-%endif
-Requires: freetype-devel
-Requires: gdal-devel
-%if %{with gl2ps}
-Requires: gl2ps-devel
-%endif
-Requires: glew-devel
-Requires: jsoncpp-devel
-Requires: lapack-devel
-Requires: libarchive-devel
-Requires: libGL-devel
-Requires: libharu-devel >= 2.3.0-9
-Requires: libjpeg-devel
-Requires: libogg-devel
-Requires: libpng-devel
-Requires: libpq-devel
-Requires: libtheora-devel
-Requires: libtiff-devel
-Requires: libxml2-devel
-Requires: libX11-devel
-Requires: libXext-devel
-Requires: libXt-devel
-Requires: lz4-devel
-Requires: mariadb-connector-c-devel
-%if %{with OSMesa}
-Requires: mesa-libOSMesa-devel
-%endif
-Requires: netcdf-cxx-devel
-Requires: openslide-devel
-Requires: PEGTL-devel
-Requires: proj-devel
-Requires: pugixml-devel
-Requires: python3-devel
-Requires: sqlite-devel
-Requires: qt5-qtbase-devel
-Requires: qt5-qttools-devel
-Requires: qt5-qtx11extras-devel
-Requires: qt5-qtwebkit-devel
-Requires: utf8cpp-devel
-Requires: zlib-devel
-Requires: fastfloat-devel
-Requires: verdict-devel
-Requires: json-devel
-Requires: sqlite-devel
+%{vtk_devel_requires}
%description openmpi-devel
This provides the VTK header files required to compile C++ programs that
@@ -622,25 +503,23 @@ export JAVA_HOME=/usr/lib/jvm/java
-DVTK_MODULE_USE_EXTERNAL_VTK_ioss:BOOL=OFF \\\
-DVTK_USE_TK=ON \\\
%{?with_flexiblas:-DBLA_VENDOR=FlexiBLAS}
+# https://gitlab.kitware.com/cmake/cmake/issues/17223
+#-DVTK_MODULE_ENABLE_VTK_IOPostgreSQL:STRING=YES \\\
-mkdir build
-pushd build
-%cmake .. %{cmake_gen} \
+%global _vpath_builddir build
+%cmake %{cmake_gen} \
%{vtk_cmake_options} \
-DVTK_BUILD_DOCUMENTATION:BOOL=OFF \
-DVTK_BUILD_EXAMPLES:BOOL=OFF \
-DVTK_BUILD_TESTING:BOOL=OFF
-%make_build
-#%make_build DoxygenDoc
-popd
+%cmake_build
%if %{with mpich}
-mkdir build-mpich
-pushd build-mpich
+%global _vpath_builddir build-mpich
%_mpich_load
export CC=mpicc
export CXX=mpic++
-%cmake .. %{cmake_gen} \
+%cmake %{cmake_gen} \
%{vtk_cmake_options} \
-DCMAKE_PREFIX_PATH:PATH=$MPI_HOME \
-DCMAKE_INSTALL_PREFIX:PATH=$MPI_HOME \
@@ -648,18 +527,16 @@ export CXX=mpic++
-DCMAKE_INSTALL_JNILIBDIR:PATH=lib/%{name} \
-DCMAKE_INSTALL_QMLDIR:PATH=lib/qt5/qml \
-DVTK_USE_MPI:BOOL=ON
-%make_build
+%cmake_build
%_mpich_unload
%endif
-popd
%if %{with openmpi}
-mkdir build-openmpi
-pushd build-openmpi
+%global _vpath_builddir build-openmpi
%_openmpi_load
export CC=mpicc
export CXX=mpic++
-%cmake .. %{cmake_gen} \
+%cmake %{cmake_gen} \
%{vtk_cmake_options} \
-DCMAKE_PREFIX_PATH:PATH=$MPI_HOME \
-DCMAKE_INSTALL_PREFIX:PATH=$MPI_HOME \
@@ -667,48 +544,46 @@ export CXX=mpic++
-DCMAKE_INSTALL_JNILIBDIR:PATH=lib/%{name} \
-DCMAKE_INSTALL_QMLDIR:PATH=lib/qt5/qml \
-DVTK_USE_MPI:BOOL=ON
-%make_build
+%cmake_build
%_openmpi_unload
%endif
-popd
+# Remove executable bits from sources (some of which are generated)
find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or \
-name \*.gif | xargs chmod -x
+
%install
-pushd build
-%make_install
+%global _vpath_builddir build
+%cmake_install
+pushd build
ls %{buildroot}%{_libdir}/*.so.* \
| grep -Ev '(Java|Qt|Python)' | sed -e's,^%{buildroot},,' > libs.list
-
popd
%if %{with mpich}
%_mpich_load
-pushd build-mpich
-%make_install
+%global _vpath_builddir build-mpich
+%cmake_install
ls %{buildroot}%{_libdir}/mpich/lib/*.so.* \
- | grep -Ev '(Java|Python|Qt)' | sed -e's,^%{buildroot},,' > libs.list
+ | grep -Ev '(Java|Python|Qt)' | sed -e's,^%{buildroot},,' > build-mpich/libs.list
mv %{buildroot}%{_libdir}/mpich/share/licenses/vtk %{buildroot}%{_defaultlicensedir}/%{name}-mpich
%_mpich_unload
-popd
%endif
-
%if %{with openmpi}
%_openmpi_load
-pushd build-openmpi
-%make_install
+%global _vpath_builddir build-openmpi
+%cmake_install
ls %{buildroot}%{_libdir}/openmpi/lib/*.so.* \
- | grep -Ev '(Java|Python|Qt)' | sed -e's,^%{buildroot},,' > libs.list
+ | grep -Ev '(Java|Python|Qt)' | sed -e's,^%{buildroot},,' > build-openmpi/libs.list
mv %{buildroot}%{_libdir}/openmpi/share/licenses/vtk %{buildroot}%{_defaultlicensedir}/%{name}-openmpi
%_openmpi_unload
-popd
%endif
for file in `find %{buildroot} -type f -perm 0755 \
@@ -722,9 +597,8 @@ mkdir -p _docs
cp -pr --parents Wrapping/*/README* _docs/
mkdir -p %{buildroot}%{_datadir}/vtkdata
-cp -alL .ExternalData/* %{buildroot}%{_datadir}/vtkdata/
+cp -alL build/ExternalData/* %{buildroot}%{_datadir}/vtkdata/
rm -rf %{buildroot}%{_datadir}/vtkdata/Wrapping
-
export QA_RPATHS=18
%files -f build/libs.list