From 50c303e503d522200b493d9684b53b0c156fae42 Mon Sep 17 00:00:00 2001 From: Christoph Willing Date: Wed, 19 May 2021 11:44:31 +1000 Subject: libraries/VTK: Updated for version 9.0.1 Signed-off-by: Christoph Willing Signed-off-by: Willy Sudiarto Raharjo --- libraries/VTK/VTK.SlackBuild | 48 ++++++------- libraries/VTK/VTK.info | 6 +- libraries/VTK/patch-gcc10.diff | 40 ----------- libraries/VTK/patch-gdal2.diff | 31 --------- libraries/VTK/patch-proj6.diff | 110 ------------------------------ libraries/VTK/vtk-AllValues.patch | 137 ++++++++++++++++++++++++++++++++++++++ libraries/VTK/vtk-includes.patch | 71 ++++++++++++++++++++ 7 files changed, 233 insertions(+), 210 deletions(-) delete mode 100644 libraries/VTK/patch-gcc10.diff delete mode 100644 libraries/VTK/patch-gdal2.diff delete mode 100644 libraries/VTK/patch-proj6.diff create mode 100644 libraries/VTK/vtk-AllValues.patch create mode 100644 libraries/VTK/vtk-includes.patch (limited to 'libraries/VTK') diff --git a/libraries/VTK/VTK.SlackBuild b/libraries/VTK/VTK.SlackBuild index 8767c4a0c4..51e9334845 100644 --- a/libraries/VTK/VTK.SlackBuild +++ b/libraries/VTK/VTK.SlackBuild @@ -4,7 +4,7 @@ # Copyright 2013,2014 Youjie Zhou # All rights reserved. -# Copyright 2016-2020 Christoph Willing, Brisbane Australia +# Copyright 2016-2021 Christoph Willing, Brisbane Australia # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -26,9 +26,8 @@ # PRGNAM=VTK -VERSION=${VERSION:-8.2.0} -SHORT_VERSION=${SHORT_VERSION:-$(echo $VERSION | sed -e 's/\.[0-9]*//2g')} -BUILD=${BUILD:-2} +VERSION=${VERSION:-9.0.1} +BUILD=${BUILD:-1} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -60,14 +59,14 @@ fi # configure VTK features # (defaults suitable for OpenCASCADE, it's the only SBo package that depends on VTK) -group_imaging="" ; [ "${IMAGING:-yes}" != "no" ] && group_imaging="-DVTK_Group_Imaging=true" -group_mpi="" ; [ "${MPI:-no}" != "no" ] && group_mpi="-DVTK_Group_MPI=true" -group_qt="" ; [ "${QT:-yes}" != "no" ] && group_qt="-DVTK_Group_Qt=true" -group_tk="" ; [ "${TK:-yes}" != "no" ] && group_tk="-DVTK_Group_Tk=true" -group_views="" ; [ "${VIEWS:-no}" != "no" ] && group_views="-DVTK_Group_Views=true" -group_web="" ; [ "${WEB:-no}" != "no" ] && group_web="-DVTK_Group_Web=true" -wrap_python="" ; [ "${PYTHON:-yes}" != "no" ] && wrap_python="-DVTK_WRAP_PYTHON=true" +group_imaging="" ; [ "${IMAGING:-yes}" != "no" ] && group_imaging="-DVTK_GROUP_ENABLE_Imaging=YES" +group_mpi="" ; [ "${MPI:-no}" != "no" ] && group_mpi="-DVTK_GROUP_ENABLE_MPI=YES" +group_qt="" ; [ "${QT:-yes}" != "no" ] && group_qt="-DVTK_GROUP_ENABLE_Qt=YES" +group_views="" ; [ "${VIEWS:-no}" != "no" ] && group_views="-DVTK_GROUP_ENABLE_Views=YES" +group_web="" ; [ "${WEB:-no}" != "no" ] && group_web="-DVTK_GROUP_ENABLE_Web=YES" wrap_java="" ; [ "${JAVA:-no}" != "no" ] && wrap_java="-DVTK_WRAP_JAVA=true" +wrap_python="" ; [ "${PYTHON:-yes}" != "no" ] && wrap_python="-DVTK_WRAP_PYTHON=true" +python_version="-DVTK_PYTHON_VERSION=3"; [ "${PYTHONVERSION:-3}" == "2" ] && python_version="-DVTK_PYTHON_VERSION=2" if pkg-config --exists jsoncpp ; then jsoncpp="-DVTK_USE_SYSTEM_JSONCPP:BOOL=ON" ; else jsoncpp="" ; fi @@ -89,6 +88,8 @@ cd $TMP rm -rf $PRGNAM-$VERSION tar xvf $CWD/$PRGNAM-$VERSION.tar.gz cd $PRGNAM-$VERSION +patch -p1 < $CWD/vtk-includes.patch +patch -p1 < $CWD/vtk-AllValues.patch chown -R root:root . find -L . \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ @@ -102,18 +103,10 @@ sed -i '/include /a #include ' \ if pkg-config --exists proj ; then proj="-DVTK_USE_SYSTEM_LIBPROJ:BOOL=ON" - # proj6 patch courtesy of - # https://git.archlinux.org/svntogit/community.git/plain/trunk/proj6.patch?h=packages/vtk - patch -p1 < $CWD/patch-proj6.diff else proj="" fi -# https://github.com/archlinux/svntogit-community/blob/packages/vtk/trunk/PKGBUILD -( cd ThirdParty/exodusII/vtkexodusII - patch -p1 < $CWD/patch-gcc10.diff ) -sed -i 's|REGEX MATCH \"\[3-9\]|REGEX MATCH \"[1-9][0-9]|' CMake/VTKGenerateExportHeader.cmake - mkdir -p build cd build cmake \ @@ -124,14 +117,17 @@ cd build -DBUILD_SHARED_LIBS=ON \ -DVTK_CUSTOM_LIBRARY_SUFFIX="" \ -DVTK_INSTALL_INCLUDE_DIR:PATH=include/VTK \ + -DVTK_USE_TK=ON \ + -DVTK_BUILD_EXAMPLES=ON \ + -DINSTALL_DOCS=ON \ $group_imaging \ $group_mpi \ $group_qt \ - $group_tk \ $group_views \ $group_web \ - $wrap_python \ $wrap_java \ + $wrap_python \ + $python_version \ -DVTK_USE_SYSTEM_EXPAT:BOOL=ON \ -DVTK_USE_SYSTEM_FREETYPE:BOOL=ON \ -DVTK_USE_SYSTEM_GLEW:BOOL=ON \ @@ -163,14 +159,14 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr $PKG/usr/lib${LIBDIRSUFFIX}/qt } -mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/licenses cp -a \ CONTRIBUTING.md Copyright.txt README.md \ $PKG/usr/doc/$PRGNAM-$VERSION -mv \ - $PKG/usr/share/doc/vtk-$SHORT_VERSION/verdict/ \ - $PKG/usr/doc/$PRGNAM-$VERSION -rm -rf $PKG/usr/share/doc +cp -a \ + $PKG/usr/share/licenses/VTK/* \ + $PKG/usr/doc/$PRGNAM-$VERSION/licenses/ +rm -rf $PKG/usr/share cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild mkdir -p $PKG/install diff --git a/libraries/VTK/VTK.info b/libraries/VTK/VTK.info index fcc0ce5447..c454ff0e9f 100644 --- a/libraries/VTK/VTK.info +++ b/libraries/VTK/VTK.info @@ -1,8 +1,8 @@ PRGNAM="VTK" -VERSION="8.2.0" +VERSION="9.0.1" HOMEPAGE="https://www.vtk.org" -DOWNLOAD="https://www.vtk.org/files/release/8.2/VTK-8.2.0.tar.gz" -MD5SUM="8af3307da0fc2ef8cafe4a312b821111" +DOWNLOAD="https://www.vtk.org/files/release/9.0/VTK-9.0.1.tar.gz" +MD5SUM="b3ba14d616c3b23583c42cffb585deac" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="" diff --git a/libraries/VTK/patch-gcc10.diff b/libraries/VTK/patch-gcc10.diff deleted file mode 100644 index 507c8a7a64..0000000000 --- a/libraries/VTK/patch-gcc10.diff +++ /dev/null @@ -1,40 +0,0 @@ -From a9079bdccbb2165583d6773a5ed848427e2a38a8 Mon Sep 17 00:00:00 2001 -From: Seacas Upstream -Date: Tue, 28 Jan 2020 09:13:38 -0500 -Subject: [PATCH] exodusII 2020-01-28 (d97eb08d) - -Code extracted from: - - https://gitlab.kitware.com/third-party/seacas.git - -at commit d97eb08d79e87c82facfae39bc75deb60c0a2d83 (for/vtk-20200128-7.24f-v2019-12-18). ---- - src/ex_create_par.c | 2 +- - src/ex_open_par.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/ex_create_par.c b/src/ex_create_par.c -index 8d5d6734f0..ef439618da 100644 ---- a/src/ex_create_par.c -+++ b/src/ex_create_par.c -@@ -216,5 +216,5 @@ int ex_create_par_int(const char *path, int cmode, int *comp_ws, int *io_ws, MPI - * Prevent warning in some versions of ranlib(1) because the object - * file has no symbols. - */ --const char exodus_unused_symbol_dummy_1; -+const char exodus_unused_symbol_dummy_ex_create_par; - #endif -diff --git a/src/ex_open_par.c b/src/ex_open_par.c -index b2faa22c29..9df4818767 100644 ---- a/src/ex_open_par.c -+++ b/src/ex_open_par.c -@@ -459,5 +459,5 @@ int ex_open_par_int(const char *path, int mode, int *comp_ws, int *io_ws, float - * Prevent warning in some versions of ranlib(1) because the object - * file has no symbols. - */ --const char exodus_unused_symbol_dummy_1; -+const char exodus_unused_symbol_dummy_ex_open_par; - #endif --- -GitLab - diff --git a/libraries/VTK/patch-gdal2.diff b/libraries/VTK/patch-gdal2.diff deleted file mode 100644 index 36c33ee14c..0000000000 --- a/libraries/VTK/patch-gdal2.diff +++ /dev/null @@ -1,31 +0,0 @@ -diff --git a/IO/GDAL/vtkGDALVectorReader.cxx b/IO/GDAL/vtkGDALVectorReader.cxx -index 86854a0..a0e234a 100644 ---- a/IO/GDAL/vtkGDALVectorReader.cxx -+++ b/IO/GDAL/vtkGDALVectorReader.cxx -@@ -44,7 +44,7 @@ class vtkGDALVectorReader::Internal - public: - Internal( const char* srcName, int srcMode, int appendFeatures, int addFeatIds ) - { -- this->Source = OGRSFDriverRegistrar::Open( srcName, srcMode, &this->Driver ); -+ this->Source = (GDALDataset*) OGROpen( srcName, srcMode, NULL ); - if ( ! this->Source ) - { - this->LastError = CPLGetLastErrorMsg(); -@@ -61,7 +61,7 @@ public: - { - if ( this->Source ) - { -- OGRDataSource::DestroyDataSource( this->Source ); -+ GDALClose( (GDALDatasetH) this->Source ); - } - } - -@@ -304,7 +304,7 @@ public: - return nCells; - } - -- OGRDataSource* Source; -+ GDALDataset* Source; - OGRSFDriver* Driver; - const char* LastError; - int LayerIdx; diff --git a/libraries/VTK/patch-proj6.diff b/libraries/VTK/patch-proj6.diff deleted file mode 100644 index 3ae71acef7..0000000000 --- a/libraries/VTK/patch-proj6.diff +++ /dev/null @@ -1,110 +0,0 @@ -diff --git a/Geovis/Core/vtkGeoProjection.cxx b/Geovis/Core/vtkGeoProjection.cxx -index f3a8852d94..824060348a 100644 ---- a/Geovis/Core/vtkGeoProjection.cxx -+++ b/Geovis/Core/vtkGeoProjection.cxx -@@ -72,6 +72,7 @@ public: - } - - std::map< std::string, std::string > OptionalParameters; -+ PJ_PROJ_INFO ProjInfo; - }; - - //----------------------------------------------------------------------------- -@@ -80,7 +83,7 @@ int vtkGeoProjection::GetNumberOfProjections() - if ( vtkGeoProjectionNumProj < 0 ) - { - vtkGeoProjectionNumProj = 0; -- for ( const PJ_LIST* pj = pj_get_list_ref(); pj && pj->id; ++ pj ) -+ for ( const PJ_LIST* pj = proj_list_operations(); pj && pj->id; ++ pj ) - ++ vtkGeoProjectionNumProj; - } - return vtkGeoProjectionNumProj; -@@ -91,7 +94,7 @@ const char* vtkGeoProjection::GetProjectionName( int projection ) - if ( projection < 0 || projection >= vtkGeoProjection::GetNumberOfProjections() ) - return nullptr; - -- return pj_get_list_ref()[projection].id; -+ return proj_list_operations()[projection].id; - } - //----------------------------------------------------------------------------- - const char* vtkGeoProjection::GetProjectionDescription( int projection ) -@@ -99,7 +102,7 @@ const char* vtkGeoProjection::GetProjectionDescription( int projection ) - if ( projection < 0 || projection >= vtkGeoProjection::GetNumberOfProjections() ) - return nullptr; - -- return pj_get_list_ref()[projection].descr[0]; -+ return proj_list_operations()[projection].descr[0]; - } - //----------------------------------------------------------------------------- - vtkGeoProjection::vtkGeoProjection() -@@ -144,7 +147,7 @@ void vtkGeoProjection::PrintSelf( ostream& os, vtkIndent indent ) - int vtkGeoProjection::GetIndex() - { - int i = 0; -- for ( const PJ_LIST* proj = pj_get_list_ref(); proj && proj->id; ++ proj, ++ i ) -+ for ( const PJ_LIST* proj = proj_list_operations(); proj && proj->id; ++ proj, ++ i ) - { - if ( ! strcmp( proj->id, this->Name ) ) - { -@@ -161,7 +164,7 @@ const char* vtkGeoProjection::GetDescription() - { - return nullptr; - } -- return this->Projection->descr; -+ return this->Internals->ProjInfo.description; - } - //----------------------------------------------------------------------------- - projPJ vtkGeoProjection::GetProjection() -@@ -232,6 +239,7 @@ int vtkGeoProjection::UpdateProjection() - this->ProjectionMTime = this->GetMTime(); - if ( this->Projection ) - { -+ this->Internals->ProjInfo = proj_pj_info(this->Projection); - return 0; - } - return 1; -diff --git a/Geovis/Core/vtkGeoTransform.cxx b/Geovis/Core/vtkGeoTransform.cxx -index aeeabc1075..b80a8c010c 100644 ---- a/Geovis/Core/vtkGeoTransform.cxx -+++ b/Geovis/Core/vtkGeoTransform.cxx -@@ -167,9 +167,9 @@ void vtkGeoTransform::InternalTransformPoints( double* x, vtkIdType numPts, int - double* coord = x; - for ( vtkIdType i = 0; i < numPts; ++ i ) - { -- xy.u = coord[0]; xy.v = coord[1]; -+ xy.x = coord[0]; xy.y = coord[1]; - lp = pj_inv( xy, src ); -- coord[0] = lp.u; coord[1] = lp.v; -+ coord[0] = lp.lam; coord[1] = lp.phi; - coord += stride; - } - } -@@ -191,9 +199,9 @@ void vtkGeoTransform::InternalTransformPoints( double* x, vtkIdType numPts, int - double* coord = x; - for ( vtkIdType i = 0; i < numPts; ++ i ) - { -- lp.u = coord[0]; lp.v = coord[1]; -+ lp.lam = coord[0]; lp.phi = coord[1]; - xy = pj_fwd( lp, dst ); -- coord[0] = xy.u; coord[1] = xy.v; -+ coord[0] = xy.x; coord[1] = xy.y; - coord += stride; - } - } -diff --git a/ThirdParty/libproj/vtk_libproj.h.in b/ThirdParty/libproj/vtk_libproj.h.in -index d52db07a95..4d8ffc3c5d 100644 ---- a/ThirdParty/libproj/vtk_libproj.h.in -+++ b/ThirdParty/libproj/vtk_libproj.h.in -@@ -18,7 +18,8 @@ - /* Use the libproj library configured for VTK. */ - #cmakedefine VTK_USE_SYSTEM_LIBPROJ - #ifdef VTK_USE_SYSTEM_LIBPROJ --# include -+# include -+# define ACCEPT_USE_OF_DEPRECATED_PROJ_API_H 1 - # include - # include - #else --- -2.21.0 - diff --git a/libraries/VTK/vtk-AllValues.patch b/libraries/VTK/vtk-AllValues.patch new file mode 100644 index 0000000000..d032d92485 --- /dev/null +++ b/libraries/VTK/vtk-AllValues.patch @@ -0,0 +1,137 @@ +Index: VTK-9.0.1/Common/Core/vtkDataArray.cxx +=================================================================== +--- VTK-9.0.1.orig/Common/Core/vtkDataArray.cxx ++++ VTK-9.0.1/Common/Core/vtkDataArray.cxx +@@ -1627,7 +1627,7 @@ struct ScalarRangeDispatchWrapper + void operator()(ArrayT* array) + { + this->Success = vtkDataArrayPrivate::DoComputeScalarRange( +- array, this->Range, vtkDataArrayPrivate::AllValues()); ++ array, this->Range, vtkDataArrayPrivate::vtkAllValues()); + } + }; + +@@ -1646,7 +1646,7 @@ struct VectorRangeDispatchWrapper + void operator()(ArrayT* array) + { + this->Success = vtkDataArrayPrivate::DoComputeVectorRange( +- array, this->Range, vtkDataArrayPrivate::AllValues()); ++ array, this->Range, vtkDataArrayPrivate::vtkAllValues()); + } + }; + +Index: VTK-9.0.1/Common/Core/vtkDataArray.h +=================================================================== +--- VTK-9.0.1.orig/Common/Core/vtkDataArray.h ++++ VTK-9.0.1/Common/Core/vtkDataArray.h +@@ -599,7 +599,7 @@ vtkArrayDownCast_FastCastMacro(vtkDataAr + // vtkGenericDataArray.h as well. + namespace vtkDataArrayPrivate + { +-struct AllValues ++struct vtkAllValues + { + }; + struct FiniteValues +Index: VTK-9.0.1/Common/Core/vtkGenericDataArray.txx +=================================================================== +--- VTK-9.0.1.orig/Common/Core/vtkGenericDataArray.txx ++++ VTK-9.0.1/Common/Core/vtkGenericDataArray.txx +@@ -1192,7 +1192,7 @@ bool vtkGenericDataArray; + return ComputeScalarValueRangeImpl( +- static_cast(this), ranges, vtkDataArrayPrivate::AllValues{}, Supported{}); ++ static_cast(this), ranges, vtkDataArrayPrivate::vtkAllValues{}, Supported{}); + } + + //----------------------------------------------------------------------------- +@@ -1202,7 +1202,7 @@ bool vtkGenericDataArray; + return ComputeVectorValueRangeImpl( +- static_cast(this), range, vtkDataArrayPrivate::AllValues{}, Supported{}); ++ static_cast(this), range, vtkDataArrayPrivate::vtkAllValues{}, Supported{}); + } + + //----------------------------------------------------------------------------- +Index: VTK-9.0.1/Common/Core/vtkDataArrayPrivate.txx +=================================================================== +--- VTK-9.0.1.orig/Common/Core/vtkDataArrayPrivate.txx ++++ VTK-9.0.1/Common/Core/vtkDataArrayPrivate.txx +@@ -301,7 +301,7 @@ template + struct ComputeScalarRange + { + template +- bool operator()(ArrayT* array, RangeValueType* ranges, AllValues) ++ bool operator()(ArrayT* array, RangeValueType* ranges, vtkAllValues) + { + AllValuesMinAndMax minmax(array); + vtkSMPTools::For(0, array->GetNumberOfTuples(), minmax); +@@ -435,7 +435,7 @@ public: + }; + + template +-bool GenericComputeScalarRange(ArrayT* array, RangeValueType* ranges, AllValues) ++bool GenericComputeScalarRange(ArrayT* array, RangeValueType* ranges, vtkAllValues) + { + AllValuesGenericMinAndMax minmax(array); + vtkSMPTools::For(0, array->GetNumberOfTuples(), minmax); +@@ -518,7 +518,7 @@ bool DoComputeScalarRange(ArrayT* array, + //---------------------------------------------------------------------------- + // generic implementation that operates on ValueType. + template +-bool DoComputeVectorRange(ArrayT* array, RangeValueType range[2], AllValues) ++bool DoComputeVectorRange(ArrayT* array, RangeValueType range[2], vtkAllValues) + { + range[0] = vtkTypeTraits::Max(); + range[1] = vtkTypeTraits::Min(); +Index: VTK-9.0.1/Common/Core/vtkGenericDataArray.h +=================================================================== +--- VTK-9.0.1.orig/Common/Core/vtkGenericDataArray.h ++++ VTK-9.0.1/Common/Core/vtkGenericDataArray.h +@@ -414,7 +414,7 @@ namespace vtkDataArrayPrivate + template + bool DoComputeScalarRange(A*, R*, T); + template +-bool DoComputeVectorRange(A*, R[2], AllValues); ++bool DoComputeVectorRange(A*, R[2], vtkAllValues); + template + bool DoComputeVectorRange(A*, R[2], FiniteValues); + } // namespace vtkDataArrayPrivate +@@ -466,11 +466,11 @@ class vtkScaledSOADataArrayTemplate; + + #define VTK_INSTANTIATE_VALUERANGE_ARRAYTYPE(ArrayType, ValueType) \ + template VTKCOMMONCORE_EXPORT bool DoComputeScalarRange( \ +- ArrayType*, ValueType*, vtkDataArrayPrivate::AllValues); \ ++ ArrayType*, ValueType*, vtkDataArrayPrivate::vtkAllValues); \ + template VTKCOMMONCORE_EXPORT bool DoComputeScalarRange( \ + ArrayType*, ValueType*, vtkDataArrayPrivate::FiniteValues); \ + template VTKCOMMONCORE_EXPORT bool DoComputeVectorRange( \ +- ArrayType*, ValueType[2], vtkDataArrayPrivate::AllValues); \ ++ ArrayType*, ValueType[2], vtkDataArrayPrivate::vtkAllValues); \ + template VTKCOMMONCORE_EXPORT bool DoComputeVectorRange( \ + ArrayType*, ValueType[2], vtkDataArrayPrivate::FiniteValues); + +@@ -516,18 +516,18 @@ namespace vtkDataArrayPrivate + template + bool DoComputeScalarRange(A*, R*, T); + template +-bool DoComputeVectorRange(A*, R[2], AllValues); ++bool DoComputeVectorRange(A*, R[2], vtkAllValues); + template + bool DoComputeVectorRange(A*, R[2], FiniteValues); + } // namespace vtkDataArrayPrivate + + #define VTK_DECLARE_VALUERANGE_ARRAYTYPE(ArrayType, ValueType) \ + extern template VTKCOMMONCORE_EXPORT bool DoComputeScalarRange( \ +- ArrayType*, ValueType*, vtkDataArrayPrivate::AllValues); \ ++ ArrayType*, ValueType*, vtkDataArrayPrivate::vtkAllValues); \ + extern template VTKCOMMONCORE_EXPORT bool DoComputeScalarRange( \ + ArrayType*, ValueType*, vtkDataArrayPrivate::FiniteValues); \ + extern template VTKCOMMONCORE_EXPORT bool DoComputeVectorRange( \ +- ArrayType*, ValueType[2], vtkDataArrayPrivate::AllValues); \ ++ ArrayType*, ValueType[2], vtkDataArrayPrivate::vtkAllValues); \ + extern template VTKCOMMONCORE_EXPORT bool DoComputeVectorRange( \ + ArrayType*, ValueType[2], vtkDataArrayPrivate::FiniteValues); + diff --git a/libraries/VTK/vtk-includes.patch b/libraries/VTK/vtk-includes.patch new file mode 100644 index 0000000000..f906200c29 --- /dev/null +++ b/libraries/VTK/vtk-includes.patch @@ -0,0 +1,71 @@ +diff -up VTK-9.0.1/Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx.includes VTK-9.0.1/Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx +--- VTK-9.0.1/Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx.includes 2020-06-26 07:24:40.000000000 -0600 ++++ VTK-9.0.1/Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx 2021-01-27 06:51:11.776958150 -0700 +@@ -61,10 +61,23 @@ typedef ptrdiff_t GLsizeiptr; + + #include + ++#include ++#include ++#if VTK_HAVE_XCURSOR ++#include ++#endif + #include + #include +-#include + ++/* ++ * Work-around to get forward declarations of C typedef of anonymous ++ * structs working. We do not want to include XUtil.h in the header as ++ * it populates the global namespace. ++ */ ++struct vtkXVisualInfo : public XVisualInfo ++{ ++}; ++ + #define GLX_CONTEXT_MAJOR_VERSION_ARB 0x2091 + #define GLX_CONTEXT_MINOR_VERSION_ARB 0x2092 + typedef GLXContext (*glXCreateContextAttribsARBProc)( +@@ -224,7 +237,7 @@ int XEventTypeEquals(Display*, XEvent* e + return event->type == EventType; + } + +-XVisualInfo* vtkXOpenGLRenderWindow::GetDesiredVisualInfo() ++vtkXVisualInfo* vtkXOpenGLRenderWindow::GetDesiredVisualInfo() + { + XVisualInfo* v = nullptr; + +@@ -258,7 +271,7 @@ XVisualInfo* vtkXOpenGLRenderWindow::Get + vtkErrorMacro(<< "Could not find a decent visual\n"); + } + } +- return (v); ++ return reinterpret_cast(v); + } + + vtkXOpenGLRenderWindow::vtkXOpenGLRenderWindow() +diff -up VTK-9.0.1/Rendering/OpenGL2/vtkXOpenGLRenderWindow.h.includes VTK-9.0.1/Rendering/OpenGL2/vtkXOpenGLRenderWindow.h +--- VTK-9.0.1/Rendering/OpenGL2/vtkXOpenGLRenderWindow.h.includes 2020-06-26 07:24:40.000000000 -0600 ++++ VTK-9.0.1/Rendering/OpenGL2/vtkXOpenGLRenderWindow.h 2021-01-27 06:49:09.420323338 -0700 +@@ -28,11 +28,11 @@ + #include "vtkOpenGLRenderWindow.h" + #include "vtkRenderingOpenGL2Module.h" // For export macro + #include // Needed for X types used in the public interface +-#include // Needed for X types used in the public interface + #include // for ivar + + class vtkIdList; + class vtkXOpenGLRenderWindowInternal; ++struct vtkXVisualInfo; + + class VTKRENDERINGOPENGL2_EXPORT vtkXOpenGLRenderWindow : public vtkOpenGLRenderWindow + { +@@ -112,7 +112,7 @@ public: + */ + virtual Colormap GetDesiredColormap(); + virtual Visual* GetDesiredVisual(); +- virtual XVisualInfo* GetDesiredVisualInfo(); ++ virtual vtkXVisualInfo* GetDesiredVisualInfo(); + virtual int GetDesiredDepth(); + //@} + -- cgit v1.2.3