diff options
author | CoprDistGit <infra@openeuler.org> | 2025-08-06 12:10:25 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2025-08-06 12:10:25 +0000 |
commit | 2df3268b4d36c727f725353b5afd6cbedbc58175 (patch) | |
tree | d54da3780976751bdd0b7bc97ff4d7c4f950a960 | |
parent | f787b6a237c87a5217b537c63c6a8d3f1ac35eeb (diff) |
automatic import of vtk
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | 9000-fix-build-error-for-aarch64.patch | 74 | ||||
-rw-r--r-- | VTKData-9.3.1.tar.gz | 3 | ||||
-rw-r--r-- | sources | 1 | ||||
-rw-r--r-- | vtk.spec | 848 | ||||
-rw-r--r-- | xorg.conf | 135 |
6 files changed, 1062 insertions, 0 deletions
@@ -0,0 +1 @@ +/VTK-9.3.1.tar.gz diff --git a/9000-fix-build-error-for-aarch64.patch b/9000-fix-build-error-for-aarch64.patch new file mode 100644 index 0000000..84d3e9d --- /dev/null +++ b/9000-fix-build-error-for-aarch64.patch @@ -0,0 +1,74 @@ +From e88134e5a7fc83c82e4a38618dc6d0cb30ef9a18 Mon Sep 17 00:00:00 2001 +From: panchenbo <panchenbo@kylinsec.com.cn> +Date: Sat, 19 Apr 2025 16:56:02 +0800 +Subject: [PATCH] fix build error for aarch64 + +--- + Utilities/KWIML/vtkkwiml/include/kwiml/abi.h | 22 +++++++++++++++++--- + 1 file changed, 19 insertions(+), 3 deletions(-) + +diff --git a/Utilities/KWIML/vtkkwiml/include/kwiml/abi.h b/Utilities/KWIML/vtkkwiml/include/kwiml/abi.h +index 0437854d..f9aa495f 100644 +--- a/Utilities/KWIML/vtkkwiml/include/kwiml/abi.h ++++ b/Utilities/KWIML/vtkkwiml/include/kwiml/abi.h +@@ -153,38 +153,54 @@ suppression macro KWIML_ABI_NO_VERIFY was defined. + #endif + + #if !defined(KWIML_ABI_CHAR_IS_UNSIGNED) && !defined(KWIML_ABI_CHAR_IS_SIGNED) +-# if defined(__CHAR_UNSIGNED__) /* GNU, some IBM XL, others? */ ++# if defined(__GNUC__) /* GNU default */ ++# define KWIML_ABI_CHAR_IS_SIGNED 1 ++# pragma message("888") ++# elif defined(__CHAR_UNSIGNED__) /* GNU, some IBM XL, others? */ + # define KWIML_ABI_CHAR_IS_UNSIGNED 1 ++# pragma message("111") + # elif defined(_CHAR_UNSIGNED) /* Intel, IBM XL, MSVC, Borland, others? */ + # define KWIML_ABI_CHAR_IS_UNSIGNED 1 ++# pragma message("222") + # elif defined(_CHAR_SIGNED) /* IBM XL, others? */ + # define KWIML_ABI_CHAR_IS_SIGNED 1 ++# pragma message("333") + # elif defined(__CHAR_SIGNED__) /* IBM XL, Watcom, others? */ + # define KWIML_ABI_CHAR_IS_SIGNED 1 ++# pragma message("444") + # elif defined(__SIGNED_CHARS__) /* EDG, Intel, SGI MIPSpro */ + # define KWIML_ABI_CHAR_IS_SIGNED 1 ++# pragma message("555") + # elif defined(_CHAR_IS_SIGNED) /* Some SunPro, others? */ + # define KWIML_ABI_CHAR_IS_SIGNED 1 ++# pragma message("666") + # elif defined(_CHAR_IS_UNSIGNED) /* SunPro, others? */ + # define KWIML_ABI_CHAR_IS_UNSIGNED 1 +-# elif defined(__GNUC__) /* GNU default */ +-# define KWIML_ABI_CHAR_IS_SIGNED 1 ++# pragma message("777") + # elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) /* SunPro default */ + # define KWIML_ABI_CHAR_IS_SIGNED 1 ++# pragma message("999") + # elif defined(__HP_cc) || defined(__HP_aCC) /* HP default (unless +uc) */ + # define KWIML_ABI_CHAR_IS_SIGNED 1 ++# pragma message("1111") + # elif defined(_SGI_COMPILER_VERSION) /* SGI MIPSpro default */ + # define KWIML_ABI_CHAR_IS_UNSIGNED 1 ++# pragma message("2222") + # elif defined(__PGIC__) /* PGI default */ + # define KWIML_ABI_CHAR_IS_SIGNED 1 ++# pragma message("3333") + # elif defined(_MSC_VER) /* MSVC default */ + # define KWIML_ABI_CHAR_IS_SIGNED 1 ++# pragma message("4444") + # elif defined(__WATCOMC__) /* Watcom default */ + # define KWIML_ABI_CHAR_IS_UNSIGNED 1 ++# pragma message("5555") + # elif defined(__BORLANDC__) /* Borland default */ + # define KWIML_ABI_CHAR_IS_SIGNED 1 ++# pragma message("6666") + # elif defined(__hpux) /* Old HP: no __HP_cc/__HP_aCC/__GNUC__ above */ + # define KWIML_ABI_CHAR_IS_SIGNED 1 /* (unless +uc) */ ++# pragma message("7777") + # endif + #endif + #if !defined(KWIML_ABI_CHAR_IS_UNSIGNED) && !defined(KWIML_ABI_CHAR_IS_SIGNED) \ +-- +2.27.0 + diff --git a/VTKData-9.3.1.tar.gz b/VTKData-9.3.1.tar.gz new file mode 100644 index 0000000..472a328 --- /dev/null +++ b/VTKData-9.3.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:299569eba74413ee90cc5073511e82a957d7d685deb0a9f16362e2714e4e7f6f +size 612744946 @@ -0,0 +1 @@ +1b237485ca2eaaf676e2031a71e82d0d VTK-9.3.1.tar.gz diff --git a/vtk.spec b/vtk.spec new file mode 100644 index 0000000..3962d83 --- /dev/null +++ b/vtk.spec @@ -0,0 +1,848 @@ +%undefine __cmake_in_source_build + +%global _lto_cflags %{nil} + +%bcond_with OSMesa +%ifarch %{java_arches} +%bcond_without java +%else +%bcond_with java +%endif +%bcond_without mpich +%bcond_without openmpi +%bcond_with flexiblas +%bcond_with gl2ps +%bcond_with fmt + +Summary: The Visualization Toolkit - A high level 3D visualization library +Name: vtk +Version: 9.3.1 +Release: 1 +License: BSD +Source0: https://www.vtk.org/files/release/9.1/VTK-%{version}.tar.gz +Source1: https://www.vtk.org/files/release/9.1/VTKData-%{version}.tar.gz +Source2: xorg.conf + +Patch9000: 9000-fix-build-error-for-aarch64.patch + +URL: https://vtk.org/ + +BuildRequires: cmake +%global cmake_gen %{nil} +BuildRequires: gcc-c++ +%if %{with java} +BuildRequires: java-devel +%else +Obsoletes: %{name}-java < %{version}-%{release} +Obsoletes: %{name}-java-devel < %{version}-%{release} +%endif +%if %{with flexiblas} +BuildRequires: flexiblas-devel +%else +BuildRequires: blas-devel +BuildRequires: lapack-devel +%endif +BuildRequires: boost-devel +BuildRequires: cgnslib-devel +BuildRequires: cli11-devel +BuildRequires: double-conversion-devel +BuildRequires: eigen3-devel +BuildRequires: expat-devel +%if %{with fmt} +BuildRequires: fmt-devel >= 8.1.0 +%endif +BuildRequires: freetype-devel +BuildRequires: gdal-devel +%if %{with gl2ps} +BuildRequires: gl2ps-devel +%endif +BuildRequires: glew-devel +BuildRequires: hdf5-devel +BuildRequires: jsoncpp-devel +BuildRequires: libarchive-devel +BuildRequires: libGL-devel +BuildRequires: libharu-devel >= 2.3.0-9 +BuildRequires: libICE-devel +BuildRequires: libjpeg-devel +BuildRequires: libpng-devel +BuildRequires: libpq-devel +BuildRequires: libtheora-devel +BuildRequires: libtiff-devel +BuildRequires: libxml2-devel +BuildRequires: libX11-devel +BuildRequires: libXext-devel +BuildRequires: libXt-devel +BuildRequires: lz4-devel +BuildRequires: fastfloat-devel +BuildRequires: verdict-devel +BuildRequires: json-devel +BuildRequires: mariadb-connector-c-devel +%{?with_OSMesa:BuildRequires: mesa-libOSMesa-devel} +BuildRequires: motif-devel +BuildRequires: netcdf-cxx-devel +BuildRequires: openslide-devel +BuildRequires: PEGTL-devel +BuildRequires: proj-devel +BuildRequires: pugixml-devel +BuildRequires: python3-devel +BuildRequires: python%{python3_pkgversion}-qt5 +BuildRequires: qt5-qtbase-devel +BuildRequires: qt5-qttools-devel +BuildRequires: qt5-qtx11extras-devel +BuildRequires: qt5-qtwebkit-devel +BuildRequires: R-devel +BuildRequires: sqlite-devel +BuildRequires: tcl-devel +BuildRequires: tk-devel +BuildRequires: utf8cpp-devel +BuildRequires: zlib-devel +BuildRequires: chrpath +BuildRequires: doxygen +BuildRequires: graphviz +BuildRequires: gnuplot +BuildRequires: wget +%if %{with mpich} +BuildRequires: mpich-devel +BuildRequires: python%{?python3_pkgversion}-mpi4py-mpich +BuildRequires: netcdf-mpich-devel +%endif +%if %{with openmpi} +BuildRequires: openmpi-devel +BuildRequires: python%{?python3_pkgversion}-mpi4py-openmpi +BuildRequires: netcdf-openmpi-devel +%endif +Requires: hdf5 = %{_hdf5_version} + +Provides: bundled(kwsys-base64) +Provides: bundled(kwsys-commandlinearguments) +Provides: bundled(kwsys-directory) +Provides: bundled(kwsys-dynamicloader) +Provides: bundled(kwsys-encoding) +Provides: bundled(kwsys-fstream) +Provides: bundled(kwsys-fundamentaltype) +Provides: bundled(kwsys-glob) +Provides: bundled(kwsys-md5) +Provides: bundled(kwsys-process) +Provides: bundled(kwsys-regularexpression) +Provides: bundled(kwsys-status) +Provides: bundled(kwsys-system) +Provides: bundled(kwsys-systeminformation) +Provides: bundled(kwsys-systemtools) +Provides: bundled(diy2) +Provides: bundled(exodusII) = 2.0.0 +Provides: bundled(exprtk) = 2.71 +%if !%{with fmt} +Provides: bundled(fmt) = 8.1.0 +%endif +Provides: bundled(ftgl) = 1.32 +%if !%{with gl2ps} +Provides: bundled(gl2ps) = 1.4.0 +%endif +Provides: bundled(ioss) = 20210512 +Provides: bundled(kissfft) +Provides: bundled(metaio) +Provides: bundled(verdict) = 1.2.0 +Provides: bundled(vpic) +Provides: bundled(xdmf2) = 2.1 +Provides: bundled(xdmf3) + +Obsoletes: %{name}-tcl < 8.2.0-1 +Obsoletes: %{name}-qt-tcl < 8.2.0-1 + +%description +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modeling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +NOTE: The version in this package has NOT been compiled with MPI support. +%if %{with mpich} +Install the %{name}-mpich package to get a version compiled with mpich. +%endif +%if %{with openmpi} +Install the %{name}-openmpi package to get a version compiled with openmpi. +%endif + +%package devel +Summary: VTK header files for building C++ code +Requires: %{name}%{?_isa} = %{version}-%{release} +%if %{with java} +Requires: %{name}-java%{?_isa} = %{version}-%{release} +%endif +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 + +%description devel +This provides the VTK header files required to compile C++ programs that +use VTK to do 3D visualization. + +%package -n python%{python3_pkgversion}-%{name} +Summary: Python 3 bindings for VTK +Requires: vtk%{?_isa} = %{version}-%{release} +%{?python_provide:%python_provide python%{python3_pkgversion}-vtk} +Provides: %{py3_dist vtk} = %{version} +Provides: python%{python3_version}dist(vtk) = %{version} +Obsoletes: python3-vtk-qt < 8.2.0-27 +Provides: python%{python3_pkgversion}-vtk-qt = %{version}-%{release} + +%description -n python%{python3_pkgversion}-%{name} +Python 3 bindings for VTK. + +%if %{with java} +%package java +Summary: Java bindings for VTK +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description java +Java bindings for VTK. + +%package java-devel +Summary: Java development for VTK +Requires: %{name}-java%{?_isa} = %{version}-%{release} +Requires: java-devel + +%description java-devel +Java development for VTK. +%endif + +%package qt +Summary: Qt bindings for VTK +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description qt +Qt bindings for VTK. + +%if %{with mpich} +%package mpich +Summary: The Visualization Toolkit - mpich version + +Obsoletes: %{name}-mpich-tcl < 8.2.0-1 +Obsoletes: %{name}-mpich-qt-tcl < 8.2.0-1 +%if %{without java} +Obsoletes: %{name}-mpich-java < %{version}-%{release} +Obsoletes: %{name}-mpich-java-devel < %{version}-%{release} +%endif + +%description mpich +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modeling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +NOTE: The version in this package has been compiled with mpich support. + +%package mpich-devel +Summary: VTK header files for building C++ code with mpich +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 + +%description mpich-devel +This provides the VTK header files required to compile C++ programs that +use VTK to do 3D visualization. + +NOTE: The version in this package has been compiled with mpich support. + +%package -n python%{python3_pkgversion}-%{name}-mpich +Summary: Python 3 bindings for VTK with mpich +Requires: %{name}-mpich%{?_isa} = %{version}-%{release} +Obsoletes: python3-vtk-mpich-qt < 8.2.0-15 +Provides: python%{python3_pkgversion}-vtk-mpich-qt = %{version}-%{release} + +%description -n python%{python3_pkgversion}-%{name}-mpich +python 3 bindings for VTK with mpich. + +%if %{with java} +%package mpich-java +Summary: Java bindings for VTK with mpich +Requires: %{name}-mpich%{?_isa} = %{version}-%{release} + +%description mpich-java +Java bindings for VTK with mpich. + +%package mpich-java-devel +Summary: Java development for VTK with mpich +Requires: %{name}-mpich-java%{?_isa} = %{version}-%{release} +Requires: java-devel + +%description mpich-java-devel +Java development for VTK with mpich. +%endif + +%package mpich-qt +Summary: Qt bindings for VTK with mpich +Requires: %{name}-mpich%{?_isa} = %{version}-%{release} + +%description mpich-qt +Qt bindings for VTK with mpich. +%endif + +%if %{with openmpi} +%package openmpi +Summary: The Visualization Toolkit - openmpi version + +Obsoletes: %{name}-openmpi-tcl < 8.2.0-1 +Obsoletes: %{name}-openmpi-qt-tcl < 8.2.0-1 +%if %{without java} +Obsoletes: %{name}-mpich-java < %{version}-%{release} +Obsoletes: %{name}-mpich-java-devel < %{version}-%{release} +%endif + +%description openmpi +VTK is an open-source software system for image processing, 3D +graphics, volume rendering and visualization. VTK includes many +advanced algorithms (e.g., surface reconstruction, implicit modeling, +decimation) and rendering techniques (e.g., hardware-accelerated +volume rendering, LOD control). + +NOTE: The version in this package has been compiled with openmpi support. + +%package openmpi-devel +Summary: VTK header files for building C++ code with openmpi +Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} +Requires: python%{python3_pkgversion}-%{name}-openmpi%{?_isa} = %{version}-%{release} +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 + +%description openmpi-devel +This provides the VTK header files required to compile C++ programs that +use VTK to do 3D visualization. + +NOTE: The version in this package has been compiled with openmpi support. + +%package -n python%{python3_pkgversion}-%{name}-openmpi +Summary: Python 3 bindings for VTK with openmpi +Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} +Obsoletes: python3-vtk-openmpi-qt < 8.2.0-15 +Provides: python%{python3_pkgversion}-vtk-openmpi-qt = %{version}-%{release} + +%description -n python%{python3_pkgversion}-%{name}-openmpi +Python 3 bindings for VTK with openmpi. + +%if %{with java} +%package openmpi-java +Summary: Java bindings for VTK with openmpi +Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} + +%description openmpi-java +Java bindings for VTK with openmpi. + +%package openmpi-java-devel +Summary: Java development for VTK with openmpi +Requires: %{name}-openmpi-java%{?_isa} = %{version}-%{release} +Requires: java-devel + +%description openmpi-java-devel +Java development for VTK with openmpi. +%endif + +%package openmpi-qt +Summary: Qt bindings for VTK with openmpi +Requires: %{name}-openmpi%{?_isa} = %{version}-%{release} + +%description openmpi-qt +Qt bindings for VTK with openmpi. +%endif + +%package data +Summary: VTK data files for tests/examples +BuildArch: noarch +Obsoletes: vtkdata < 6.1.0-3 + +%description data +VTK data files for tests and examples. + +%package examples +Summary: Examples for VTK +Requires: %{name}%{?_isa} = %{version}-%{release}, %{name}-data = %{version} + +%description examples +This package contains many well-commented examples showing how to use +VTK. Examples are available in the C++, Tcl, Python and Java +programming languages. + + +%prep +%autosetup -p1 -b 1 -n VTK-%{version} +for x in vtk{cli11,doubleconversion,eigen,expat,%{?with_fmt:fmt,}freetype,%{?with_gl2ps:gl2ps,}glew,hdf5,jpeg,jsoncpp,libharu,libproj,libxml2,lz4,lzma,mpi4py,netcdf,ogg,pegtl,png,pugixml,sqlite,theora,tiff,utf8,zfp,zlib} +do + rm -r ThirdParty/*/${x} +done + +find Utilities/KWSys/vtksys/ -name \*.[ch]\* | grep -vE '^Utilities/KWSys/vtksys/([a-z].*|Configure|SharedForward|Status|String\.hxx|Base64|CommandLineArguments|Directory|DynamicLoader|Encoding|FStream|FundamentalType|Glob|MD5|Process|RegularExpression|System|SystemInformation|SystemTools)(C|CXX|UNIX)?\.' | xargs rm + +mkdir vtk-examples +cp -a Examples vtk-examples +find vtk-examples -type f | xargs chmod -R a-x + +%build +export CFLAGS="%{optflags} -D_UNICODE -DHAVE_UINTPTR_T" +export CXXFLAGS="%{optflags} -D_UNICODE -DHAVE_UINTPTR_T" +export CPPFLAGS=-DACCEPT_USE_OF_DEPRECATED_PROJ_API_H +%if %{with java} +export JAVA_HOME=/usr/lib/jvm/java +%endif + +%global vtk_cmake_options \\\ + -DCMAKE_INSTALL_DOCDIR=share/doc/%{name} \\\ + -DCMAKE_INSTALL_JARDIR=share/java \\\ + -DCMAKE_INSTALL_LIBDIR:PATH=%{_lib} \\\ + -DCMAKE_INSTALL_JNILIBDIR:PATH=%{_lib}/%{name} \\\ + -DCMAKE_INSTALL_LICENSEDIR:PATH=share/licenses/%{name} \\\ + -DCMAKE_INSTALL_QMLDIR:PATH=%{_lib}/qt5/qml \\\ + -DVTK_CUSTOM_LIBRARY_SUFFIX="" \\\ + -DVTK_VERSIONED_INSTALL:BOOL=OFF \\\ + -DVTK_GROUP_ENABLE_Imaging:STRING=YES \\\ + -DVTK_GROUP_ENABLE_Qt:STRING=YES \\\ + -DVTK_GROUP_ENABLE_Rendering:STRING=YES \\\ + -DVTK_GROUP_ENABLE_StandAlone:STRING=YES \\\ + -DVTK_GROUP_ENABLE_Views:STRING=YES \\\ + -DVTK_GROUP_ENABLE_Web:STRING=YES \\\ + -DVTK_MODULE_ENABLE_VTK_CommonArchive:STRING=YES \\\ + -DVTK_MODULE_ENABLE_VTK_DomainsMicroscopy:STRING=YES \\\ + -DVTK_MODULE_ENABLE_VTK_GeovisGDAL:STRING=YES \\\ + -DVTK_MODULE_ENABLE_VTK_ImagingOpenGL2:STRING=YES \\\ + -DVTK_MODULE_ENABLE_VTK_InfovisBoost:STRING=YES \\\ + -DVTK_MODULE_ENABLE_VTK_InfovisBoostGraphAlgorithms:STRING=YES \\\ + -DVTK_MODULE_ENABLE_VTK_IOMySQL:STRING=YES \\\ + -DVTK_PYTHON_OPTIONAL_LINK:BOOL=OFF \\\ + -DVTK_PYTHON_VERSION=3 \\\ +%if %{with OSMesa} \ + -DVTK_OPENGL_HAS_OSMESA:BOOL=ON \\\ +%endif \ +%if %{with java} \ + -DVTK_WRAP_JAVA:BOOL=ON \\\ + -DJAVA_INCLUDE_PATH:PATH=$JAVA_HOME/include \\\ + -DJAVA_INCLUDE_PATH2:PATH=$JAVA_HOME/include/linux \\\ + -DJAVA_AWT_INCLUDE_PATH:PATH=$JAVA_HOME/include \\\ +%else \ + -DVTK_WRAP_JAVA:BOOL=OFF \\\ +%endif \ + -DVTK_WRAP_PYTHON:BOOL=ON \\\ + -DVTK_USE_EXTERNAL=ON \\\ +%if !%{with fmt} \ + -DVTK_MODULE_USE_EXTERNAL_VTK_fmt:BOOL=OFF \\\ +%endif \ +%if !%{with gl2ps} \ + -DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps:BOOL=OFF \\\ +%endif \ + -DVTK_MODULE_USE_EXTERNAL_VTK_exprtk:BOOL=OFF \\\ + -DVTK_MODULE_USE_EXTERNAL_VTK_ioss:BOOL=OFF \\\ + -DVTK_USE_TK=ON \\\ + %{?with_flexiblas:-DBLA_VENDOR=FlexiBLAS} + +mkdir build +pushd 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 + +%if %{with mpich} +mkdir build-mpich +pushd build-mpich +%_mpich_load +export CC=mpicc +export CXX=mpic++ +%cmake .. %{cmake_gen} \ + %{vtk_cmake_options} \ + -DCMAKE_PREFIX_PATH:PATH=$MPI_HOME \ + -DCMAKE_INSTALL_PREFIX:PATH=$MPI_HOME \ + -DCMAKE_INSTALL_LIBDIR:PATH=lib \ + -DCMAKE_INSTALL_JNILIBDIR:PATH=lib/%{name} \ + -DCMAKE_INSTALL_QMLDIR:PATH=lib/qt5/qml \ + -DVTK_USE_MPI:BOOL=ON +%make_build +%_mpich_unload +%endif +popd + +%if %{with openmpi} +mkdir build-openmpi +pushd build-openmpi +%_openmpi_load +export CC=mpicc +export CXX=mpic++ +%cmake .. %{cmake_gen} \ + %{vtk_cmake_options} \ + -DCMAKE_PREFIX_PATH:PATH=$MPI_HOME \ + -DCMAKE_INSTALL_PREFIX:PATH=$MPI_HOME \ + -DCMAKE_INSTALL_LIBDIR:PATH=lib \ + -DCMAKE_INSTALL_JNILIBDIR:PATH=lib/%{name} \ + -DCMAKE_INSTALL_QMLDIR:PATH=lib/qt5/qml \ + -DVTK_USE_MPI:BOOL=ON +%make_build +%_openmpi_unload +%endif +popd + +find . -name \*.c -or -name \*.cxx -or -name \*.h -or -name \*.hxx -or \ + -name \*.gif | xargs chmod -x + +%install +pushd build +%make_install + +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 + +ls %{buildroot}%{_libdir}/mpich/lib/*.so.* \ + | grep -Ev '(Java|Python|Qt)' | sed -e's,^%{buildroot},,' > 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 + +ls %{buildroot}%{_libdir}/openmpi/lib/*.so.* \ + | grep -Ev '(Java|Python|Qt)' | sed -e's,^%{buildroot},,' > 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 \ + | xargs -r file | grep ASCII | awk -F: '{print $1}'`; do + head -1 $file | grep '^#!' > /dev/null && continue + chmod 0644 $file +done +find Utilities/Upgrading -type f -print0 | xargs -0 chmod -x + +mkdir -p _docs +cp -pr --parents Wrapping/*/README* _docs/ + +mkdir -p %{buildroot}%{_datadir}/vtkdata +cp -alL .ExternalData/* %{buildroot}%{_datadir}/vtkdata/ +rm -rf %{buildroot}%{_datadir}/vtkdata/Wrapping + +export QA_RPATHS=18 + +%files -f build/libs.list +%license %{_defaultlicensedir}/%{name}/ +%doc README.md _docs/Wrapping + +%files devel +%doc Utilities/Upgrading +%{_bindir}/vtkParseJava +%{_bindir}/vtkProbeOpenGLVersion +%{_bindir}/vtkWrapHierarchy +%{_bindir}/vtkWrapJava +%{_includedir}/%{name} +%{_libdir}/*.so +%{_libdir}/cmake/%{name}/ +%dir %{_libdir}/%{name} +%{_libdir}/%{name}/hierarchy/ +%{_docdir}/%{name}/ + +%files -n python%{python3_pkgversion}-vtk +%{python3_sitearch}/* +%{_libdir}/*Python*.so.* +%{_bindir}/vtkpython +%{_bindir}/vtkWrapPython +%{_bindir}/vtkWrapPythonInit + +%if %{with java} +%files java +%{_libdir}/*Java.so.* +%dir %{_libdir}/%{name} +%{_libdir}/%{name}/*Java.so +%{_javadir}/vtk.jar +%endif + +%files qt +%{_libdir}/lib*Qt*.so.* +%exclude %{_libdir}/*Python*.so.* +%{_libdir}/qt5/qml/* + +%if %{with mpich} +%files mpich -f build-mpich/libs.list +%license %{_defaultlicensedir}/%{name}-mpich/ +%doc README.md _docs/Wrapping + +%files mpich-devel +%{_libdir}/mpich/bin/vtkParseJava +%{_libdir}/mpich/bin/vtkProbeOpenGLVersion +%{_libdir}/mpich/bin/vtkWrapHierarchy +%{_libdir}/mpich/bin/vtkWrapJava +%{_libdir}/mpich/include/ +%{_libdir}/mpich/lib/*.so +%{_libdir}/mpich/lib/cmake/ +%dir %{_libdir}/mpich/lib/%{name} +%{_libdir}/mpich/lib/%{name}/hierarchy/ + +%files -n python%{python3_pkgversion}-vtk-mpich +%{_libdir}/mpich/lib/python%{python3_version}/ +%{_libdir}/mpich/lib/*Python*.so.* +%{_libdir}/mpich/bin/pvtkpython +%{_libdir}/mpich/bin/vtkpython +%{_libdir}/mpich/bin/vtkWrapPython +%{_libdir}/mpich/bin/vtkWrapPythonInit + +%if %{with java} +%files mpich-java +%{_libdir}/mpich/lib/*Java.so.* +%dir %{_libdir}/mpich/lib/%{name} +%{_libdir}/mpich/lib/%{name}/*Java.so +%{_libdir}/mpich/share/java/vtk.jar +%endif + +%files mpich-qt +%{_libdir}/mpich/lib/lib*Qt*.so.* +%exclude %{_libdir}/mpich/lib/*Python*.so.* +%{_libdir}/mpich/lib/qt5/ +%endif + +%if %{with openmpi} +%files openmpi -f build-openmpi/libs.list +%license %{_defaultlicensedir}/%{name}-openmpi/ +%doc README.md _docs/Wrapping + +%files openmpi-devel +%{_libdir}/openmpi/bin/vtkParseJava +%{_libdir}/openmpi/bin/vtkProbeOpenGLVersion +%{_libdir}/openmpi/bin/vtkWrapHierarchy +%{_libdir}/openmpi/bin/vtkWrapJava +%{_libdir}/openmpi/include/ +%{_libdir}/openmpi/lib/*.so +%{_libdir}/openmpi/lib/cmake/ +%dir %{_libdir}/openmpi/lib/%{name} +%{_libdir}/openmpi/lib/%{name}/hierarchy/ + +%files -n python%{python3_pkgversion}-vtk-openmpi +%{_libdir}/openmpi/lib/python%{python3_version}/ +%{_libdir}/openmpi/lib/*Python*.so.* +%{_libdir}/openmpi/bin/pvtkpython +%{_libdir}/openmpi/bin/vtkpython +%{_libdir}/openmpi/bin/vtkWrapPython +%{_libdir}/openmpi/bin/vtkWrapPythonInit + +%if %{with java} +%files openmpi-java +%{_libdir}/openmpi/lib/*Java.so.* +%dir %{_libdir}/openmpi/lib/%{name} +%{_libdir}/openmpi/lib/%{name}/*Java.so +%{_libdir}/openmpi/share/java/vtk.jar +%endif + +%files openmpi-qt +%{_libdir}/openmpi/lib/lib*Qt*.so.* +%exclude %{_libdir}/openmpi/lib/*Python*.so.* +%{_libdir}/openmpi/lib/qt5/ +%endif + +%files data +%{_datadir}/vtkdata + +%files examples +%doc vtk-examples/Examples + + +%changelog +* Tue Aug 5 2025 mimanchiok <mimanchiok@qq.com> - 9.3.1-1 +- project init diff --git a/xorg.conf b/xorg.conf new file mode 100644 index 0000000..39bc48a --- /dev/null +++ b/xorg.conf @@ -0,0 +1,135 @@ +# This xorg configuration file is meant to be used +# to start a dummy X11 server for graphical testing. + +Section "ServerFlags" + Option "DontVTSwitch" "true" + Option "AllowMouseOpenFail" "true" + Option "PciForceNone" "true" + Option "AutoEnableDevices" "false" + Option "AutoAddDevices" "false" +EndSection + +Section "InputDevice" + Identifier "dummy_mouse" + Option "CorePointer" "true" + Driver "void" +EndSection + +Section "InputDevice" + Identifier "dummy_keyboard" + Option "CoreKeyboard" "true" + Driver "void" +EndSection + +Section "Device" + Identifier "dummy_videocard" + Driver "dummy" + Option "ConstantDPI" "true" + #VideoRam 4096000 + #VideoRam 256000 + VideoRam 192000 +EndSection + +Section "Monitor" + Identifier "dummy_monitor" + HorizSync 5.0 - 1000.0 + VertRefresh 5.0 - 200.0 + #This can be used to get a specific DPI, but only for the default resolution: + #DisplaySize 508 317 + #NOTE: the highest modes will not work without increasing the VideoRam + # for the dummy video card. + Modeline "32768x32768" 15226.50 32768 35800 39488 46208 32768 32771 32781 32953 + Modeline "32768x16384" 7516.25 32768 35544 39192 45616 16384 16387 16397 16478 + Modeline "16384x8192" 2101.93 16384 16416 24400 24432 8192 8390 8403 8602 + Modeline "8192x4096" 424.46 8192 8224 9832 9864 4096 4195 4202 4301 + Modeline "5496x1200" 199.13 5496 5528 6280 6312 1200 1228 1233 1261 + Modeline "5280x1080" 169.96 5280 5312 5952 5984 1080 1105 1110 1135 + Modeline "5280x1200" 191.40 5280 5312 6032 6064 1200 1228 1233 1261 + Modeline "5120x3200" 199.75 5120 5152 5904 5936 3200 3277 3283 3361 + Modeline "4800x1200" 64.42 4800 4832 5072 5104 1200 1229 1231 1261 + Modeline "3840x2880" 133.43 3840 3872 4376 4408 2880 2950 2955 3025 + Modeline "3840x2560" 116.93 3840 3872 4312 4344 2560 2622 2627 2689 + Modeline "3840x2048" 91.45 3840 3872 4216 4248 2048 2097 2101 2151 + Modeline "3840x1080" 100.38 3840 3848 4216 4592 1080 1081 1084 1093 + Modeline "3600x1200" 106.06 3600 3632 3984 4368 1200 1201 1204 1214 + Modeline "3288x1080" 39.76 3288 3320 3464 3496 1080 1106 1108 1135 + Modeline "2048x2048" 49.47 2048 2080 2264 2296 2048 2097 2101 2151 + Modeline "2048x1536" 80.06 2048 2104 2312 2576 1536 1537 1540 1554 + Modeline "2560x1600" 47.12 2560 2592 2768 2800 1600 1639 1642 1681 + Modeline "2560x1440" 42.12 2560 2592 2752 2784 1440 1475 1478 1513 + Modeline "1920x1440" 69.47 1920 1960 2152 2384 1440 1441 1444 1457 + Modeline "1920x1200" 26.28 1920 1952 2048 2080 1200 1229 1231 1261 + Modeline "1920x1080" 23.53 1920 1952 2040 2072 1080 1106 1108 1135 + Modeline "1680x1050" 20.08 1680 1712 1784 1816 1050 1075 1077 1103 + Modeline "1600x1200" 22.04 1600 1632 1712 1744 1200 1229 1231 1261 + Modeline "1600x900" 33.92 1600 1632 1760 1792 900 921 924 946 + Modeline "1440x900" 30.66 1440 1472 1584 1616 900 921 924 946 + ModeLine "1366x768" 72.00 1366 1414 1446 1494 768 771 777 803 + Modeline "1280x1024" 31.50 1280 1312 1424 1456 1024 1048 1052 1076 + Modeline "1280x800" 24.15 1280 1312 1400 1432 800 819 822 841 + Modeline "1280x768" 23.11 1280 1312 1392 1424 768 786 789 807 + Modeline "1360x768" 24.49 1360 1392 1480 1512 768 786 789 807 + Modeline "1024x768" 18.71 1024 1056 1120 1152 768 786 789 807 + Modeline "768x1024" 19.50 768 800 872 904 1024 1048 1052 1076 + + + #common resolutions for android devices (both orientations): + Modeline "800x1280" 25.89 800 832 928 960 1280 1310 1315 1345 + Modeline "1280x800" 24.15 1280 1312 1400 1432 800 819 822 841 + Modeline "720x1280" 30.22 720 752 864 896 1280 1309 1315 1345 + Modeline "1280x720" 27.41 1280 1312 1416 1448 720 737 740 757 + Modeline "768x1024" 24.93 768 800 888 920 1024 1047 1052 1076 + Modeline "1024x768" 23.77 1024 1056 1144 1176 768 785 789 807 + Modeline "600x1024" 19.90 600 632 704 736 1024 1047 1052 1076 + Modeline "1024x600" 18.26 1024 1056 1120 1152 600 614 617 631 + Modeline "536x960" 16.74 536 568 624 656 960 982 986 1009 + Modeline "960x536" 15.23 960 992 1048 1080 536 548 551 563 + Modeline "600x800" 15.17 600 632 688 720 800 818 822 841 + Modeline "800x600" 14.50 800 832 880 912 600 614 617 631 + Modeline "480x854" 13.34 480 512 560 592 854 873 877 897 + Modeline "848x480" 12.09 848 880 920 952 480 491 493 505 + Modeline "480x800" 12.43 480 512 552 584 800 818 822 841 + Modeline "800x480" 11.46 800 832 872 904 480 491 493 505 + #resolutions for android devices (both orientations) + #minus the status bar + #38px status bar (and width rounded up) + Modeline "800x1242" 25.03 800 832 920 952 1242 1271 1275 1305 + Modeline "1280x762" 22.93 1280 1312 1392 1424 762 780 783 801 + Modeline "720x1242" 29.20 720 752 856 888 1242 1271 1276 1305 + Modeline "1280x682" 25.85 1280 1312 1408 1440 682 698 701 717 + Modeline "768x986" 23.90 768 800 888 920 986 1009 1013 1036 + Modeline "1024x730" 22.50 1024 1056 1136 1168 730 747 750 767 + Modeline "600x986" 19.07 600 632 704 736 986 1009 1013 1036 + Modeline "1024x562" 17.03 1024 1056 1120 1152 562 575 578 591 + Modeline "536x922" 16.01 536 568 624 656 922 943 947 969 + Modeline "960x498" 14.09 960 992 1040 1072 498 509 511 523 + Modeline "600x762" 14.39 600 632 680 712 762 779 783 801 + Modeline "800x562" 13.52 800 832 880 912 562 575 578 591 + Modeline "480x810" 12.59 480 512 552 584 810 828 832 851 + Modeline "848x442" 11.09 848 880 920 952 442 452 454 465 + Modeline "480x762" 11.79 480 512 552 584 762 779 783 801 +EndSection + +Section "Screen" + Identifier "dummy_screen" + Device "dummy_videocard" + Monitor "dummy_monitor" + DefaultDepth 24 + SubSection "Display" + Viewport 0 0 + Depth 24 + #Modes "32768x32768" "32768x16384" "16384x8192" "8192x4096" "5120x3200" "3840x2880" "3840x2560" "3840x2048" "2048x2048" "2560x1600" "1920x1440" "1920x1200" "1920x1080" "1600x1200" "1680x1050" "1600x900" "1400x1050" "1440x900" "1280x1024" "1366x768" "1280x800" "1024x768" "1024x600" "800x600" "320x200" + Modes "5120x3200" "3840x2880" "3840x2560" "3840x2048" "2048x2048" "2560x1600" "1920x1440" "1920x1200" "1920x1080" "1600x1200" "1680x1050" "1600x900" "1400x1050" "1440x900" "1280x1024" "1366x768" "1280x800" "1024x768" "1024x600" "800x600" "320x200" + #Virtual 32000 32000 + #Virtual 16384 8192 + Virtual 8192 4096 + #Virtual 5120 3200 + EndSubSection +EndSection + +Section "ServerLayout" + Identifier "dummy_layout" + Screen "dummy_screen" + InputDevice "dummy_mouse" + InputDevice "dummy_keyboard" +EndSection |