aboutsummaryrefslogtreecommitdiff
path: root/ports/vtk
diff options
context:
space:
mode:
authorAlexander Neumann <30894796+Neumann-A@users.noreply.github.com>2021-08-30 19:03:01 +0200
committerGitHub <noreply@github.com>2021-08-30 10:03:01 -0700
commit8c7e8df01549e59ac28469193976fbbe08e00f21 (patch)
tree75aa5c6942ddd9c58b28a814a4cf4f41c56eceb6 /ports/vtk
parent047e8ef16e2cdb431b9857b79fdfa237b0f038e2 (diff)
downloadvcpkg-8c7e8df01549e59ac28469193976fbbe08e00f21.tar.gz
vcpkg-8c7e8df01549e59ac28469193976fbbe08e00f21.zip
[CGNS|VTK-M|VTK|ParaView] Update ports (#18248)
* [cgns] update to 4.2.0 * [vtk-m] update to 1.6.0 * [vtk] Update to 9.0.1-pv5.9.1 - VTK update to match release version of ParaView * [ParaView] Update to 5.9.1 * version stuff * fix automatic svg linkage in static builds * update qt5-svg * revisit vtk - fix build with vtk-m 1.6 - remove unused patches - remove comments * bump version * remove two commented lines * version stuff * remove old PR version Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
Diffstat (limited to 'ports/vtk')
-rw-r--r--ports/vtk/0002-Qt-enforce-QT_NO_KEYWORDS-builds-by-VTK-itself.patch33
-rw-r--r--ports/vtk/156fb524.patch393
-rw-r--r--ports/vtk/1f00a0c9.patch185
-rw-r--r--ports/vtk/6811.patch26
-rw-r--r--ports/vtk/CONTROL50
-rw-r--r--ports/vtk/FindPostgreSQL.cmake269
-rw-r--r--ports/vtk/d107698a.patch291
-rw-r--r--ports/vtk/fix-freetype.patch26
-rw-r--r--ports/vtk/module-name-mangling.patch18
-rw-r--r--ports/vtk/portfile.cmake110
-rw-r--r--ports/vtk/vcpkg.json174
-rw-r--r--ports/vtk/vtkm.patch147
12 files changed, 1166 insertions, 556 deletions
diff --git a/ports/vtk/0002-Qt-enforce-QT_NO_KEYWORDS-builds-by-VTK-itself.patch b/ports/vtk/0002-Qt-enforce-QT_NO_KEYWORDS-builds-by-VTK-itself.patch
deleted file mode 100644
index 56472dbff..000000000
--- a/ports/vtk/0002-Qt-enforce-QT_NO_KEYWORDS-builds-by-VTK-itself.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 20dd0370d7ad685b7fbdb1625ffec60c940980f3 Mon Sep 17 00:00:00 2001
-From: Ben Boeckel <ben.boeckel@kitware.com>
-Date: Fri, 17 Apr 2020 15:02:15 -0400
-Subject: [PATCH 2/2] Qt: enforce QT_NO_KEYWORDS builds by VTK itself
-
----
- GUISupport/Qt/CMakeLists.txt | 1 +
- Views/Qt/CMakeLists.txt | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/GUISupport/Qt/CMakeLists.txt b/GUISupport/Qt/CMakeLists.txt
-index bfa63a94f1..3fc6fe4bd9 100644
---- a/GUISupport/Qt/CMakeLists.txt
-+++ b/GUISupport/Qt/CMakeLists.txt
-@@ -47,4 +47,5 @@ vtk_module_add_module(VTK::GUISupportQt
- HEADERS ${headers}
- PRIVATE_HEADERS ${private_headers})
-
-+vtk_module_definitions(VTK::GUISupportQt PRIVATE QT_NO_KEYWORDS)
- vtk_module_link(VTK::GUISupportQt PUBLIC Qt5::Widgets)
-diff --git a/Views/Qt/CMakeLists.txt b/Views/Qt/CMakeLists.txt
-index 7684118e40..b697571dd2 100644
---- a/Views/Qt/CMakeLists.txt
-+++ b/Views/Qt/CMakeLists.txt
-@@ -17,4 +17,5 @@ set(CMAKE_AUTOMOC 1)
- vtk_module_add_module(VTK::ViewsQt
- CLASSES ${classes})
-
-+vtk_module_definitions(VTK::ViewsQt PRIVATE QT_NO_KEYWORDS)
- vtk_module_link(VTK::ViewsQt PRIVATE Qt5::Widgets)
---
-2.30.0.windows.1
-
diff --git a/ports/vtk/156fb524.patch b/ports/vtk/156fb524.patch
new file mode 100644
index 000000000..716fd5c7e
--- /dev/null
+++ b/ports/vtk/156fb524.patch
@@ -0,0 +1,393 @@
+diff --git a/Accelerators/Vtkm/Filters/CMakeLists.txt b/Accelerators/Vtkm/Filters/CMakeLists.txt
+index 14e84f1dd6e8b9da275045fe5d80868b2e52ad5a..3a41bc4d2bffca8c3df79da218443b90f8ceb7d3 100644
+--- a/Accelerators/Vtkm/Filters/CMakeLists.txt
++++ b/Accelerators/Vtkm/Filters/CMakeLists.txt
+@@ -46,6 +46,10 @@ foreach (class IN LISTS impl_classes)
+ list(APPEND headers "${class}.h")
+ endforeach ()
+
++list(APPEND sources
++ "vtkmClipInstantiationsWithField.cxx"
++ "vtkmClipInstantiationsWithImplicitFunction.cxx")
++
+ configure_file(
+ "${CMAKE_CURRENT_SOURCE_DIR}/vtkmConfigFilters.h.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/vtkmConfigFilters.h"
+diff --git a/Accelerators/Vtkm/Filters/vtkmClip.cxx b/Accelerators/Vtkm/Filters/vtkmClip.cxx
+index 0b1dc86d3bedd425d4846f524818a68ada052ce9..65fec3110ebb6522900cbc965c5298031921e1e4 100644
+--- a/Accelerators/Vtkm/Filters/vtkmClip.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmClip.cxx
+@@ -14,6 +14,7 @@
+ =========================================================================*/
+
+ #include "vtkmClip.h"
++#include "vtkmClipInternals.h"
+
+ #include "vtkCellIterator.h"
+ #include "vtkDataArray.h"
+@@ -36,11 +37,9 @@
+
+ #include "vtkmFilterPolicy.h"
+
++#include <vtkm/cont/DataSet.h>
+ #include <vtkm/cont/RuntimeDeviceTracker.h>
+
+-#include <vtkm/filter/ClipWithField.h>
+-#include <vtkm/filter/ClipWithImplicitFunction.h>
+-
+ #include <algorithm>
+
+ vtkStandardNewMacro(vtkmClip);
+@@ -50,19 +49,17 @@ void vtkmClip::PrintSelf(std::ostream& os, vtkIndent indent)
+ {
+ this->Superclass::PrintSelf(os, indent);
+
+- os << indent << "ClipValue: " << this->ClipValue << "\n";
++ os << indent << "ClipValue: " << this->GetClipValue() << "\n";
+ os << indent << "ClipFunction: \n";
+- this->ClipFunction->PrintSelf(os, indent.GetNextIndent());
+- os << indent << "ComputeScalars: " << this->ComputeScalars << "\n";
++ this->GetClipFunction()->PrintSelf(os, indent.GetNextIndent());
++ os << indent << "ComputeScalars: " << this->GetComputeScalars() << "\n";
+ }
+
+ //------------------------------------------------------------------------------
+ vtkmClip::vtkmClip()
+- : ClipValue(0.)
+- , ComputeScalars(true)
+- , ClipFunction(nullptr)
+- , ClipFunctionConverter(new tovtkm::ImplicitFunctionConverter)
++ : Internals(new vtkmClip::internals)
+ {
++ this->Internals->ClipFunctionConverter.reset(new tovtkm::ImplicitFunctionConverter());
+ // Clip active point scalars by default
+ this->SetInputArrayToProcess(
+ 0, 0, 0, vtkDataObject::FIELD_ASSOCIATION_POINTS, vtkDataSetAttributes::SCALARS);
+@@ -75,24 +72,54 @@ vtkmClip::~vtkmClip() = default;
+ vtkMTimeType vtkmClip::GetMTime()
+ {
+ vtkMTimeType mTime = this->Superclass::GetMTime();
+- if (this->ClipFunction)
++ if (this->GetClipFunction())
+ {
+- mTime = std::max(mTime, this->ClipFunction->GetMTime());
++ mTime = std::max(mTime, this->GetClipFunction()->GetMTime());
+ }
+ return mTime;
+ }
+
++//------------------------------------------------------------------------------
++double vtkmClip::GetClipValue()
++{
++ return this->Internals->ClipValue;
++}
++
++//------------------------------------------------------------------------------
++void vtkmClip::SetClipValue(double val)
++{
++ this->Internals->ClipValue = val;
++}
++
++//------------------------------------------------------------------------------
++bool vtkmClip::GetComputeScalars()
++{
++ return this->Internals->ComputeScalars;
++}
++
++//------------------------------------------------------------------------------
++void vtkmClip::SetComputeScalars(bool val)
++{
++ this->Internals->ComputeScalars = val;
++}
++
+ //------------------------------------------------------------------------------
+ void vtkmClip::SetClipFunction(vtkImplicitFunction* clipFunction)
+ {
+- if (this->ClipFunction != clipFunction)
++ if (this->GetClipFunction() != clipFunction)
+ {
+- this->ClipFunction = clipFunction;
+- this->ClipFunctionConverter->Set(clipFunction);
++ this->Internals->ClipFunction = clipFunction;
++ this->Internals->ClipFunctionConverter->Set(clipFunction);
+ this->Modified();
+ }
+ }
+
++//------------------------------------------------------------------------------
++vtkImplicitFunction* vtkmClip::GetClipFunction()
++{
++ return this->Internals->ClipFunction;
++}
++
+ //------------------------------------------------------------------------------
+ int vtkmClip::RequestData(
+ vtkInformation*, vtkInformationVector** inInfoVec, vtkInformationVector* outInfoVec)
+@@ -111,7 +138,7 @@ int vtkmClip::RequestData(
+ // Find the scalar array:
+ int assoc = this->GetInputArrayAssociation(0, inInfoVec);
+ vtkDataArray* scalars = this->GetInputArrayToProcess(0, inInfoVec);
+- if (!this->ClipFunction &&
++ if (!this->GetClipFunction() &&
+ (assoc != vtkDataObject::FIELD_ASSOCIATION_POINTS || scalars == nullptr ||
+ scalars->GetName() == nullptr || scalars->GetName()[0] == '\0'))
+ {
+@@ -129,37 +156,18 @@ int vtkmClip::RequestData(
+ {
+ // Convert inputs to vtkm objects:
+ auto fieldsFlag =
+- this->ComputeScalars ? tovtkm::FieldsFlag::PointsAndCells : tovtkm::FieldsFlag::None;
++ this->GetComputeScalars() ? tovtkm::FieldsFlag::PointsAndCells : tovtkm::FieldsFlag::None;
+ auto in = tovtkm::Convert(input, fieldsFlag);
+
+ // Run filter:
+ vtkm::cont::DataSet result;
+- if (this->ClipFunction)
++ if (this->GetClipFunction())
+ {
+- vtkm::filter::ClipWithImplicitFunction functionFilter;
+- auto function = this->ClipFunctionConverter->Get();
+- if (function.GetValid())
+- {
+- functionFilter.SetImplicitFunction(function);
+- result = functionFilter.Execute(in);
+- }
++ result = this->Internals->ExecuteClipWithImplicitFunction(in);
+ }
+ else
+ {
+- vtkm::filter::ClipWithField fieldFilter;
+- if (!this->ComputeScalars)
+- {
+- // explicitly convert just the field we need
+- auto inField = tovtkm::Convert(scalars, assoc);
+- in.AddField(inField);
+- // don't pass this field
+- fieldFilter.SetFieldsToPass(
+- vtkm::filter::FieldSelection(vtkm::filter::FieldSelection::MODE_NONE));
+- }
+-
+- fieldFilter.SetActiveField(scalars->GetName(), vtkm::cont::Field::Association::POINTS);
+- fieldFilter.SetClipValue(this->ClipValue);
+- result = fieldFilter.Execute(in);
++ result = this->Internals->ExecuteClipWithField(in, scalars, assoc);
+ }
+
+ // Convert result to output:
+@@ -169,7 +177,7 @@ int vtkmClip::RequestData(
+ return 0;
+ }
+
+- if (!this->ClipFunction && this->ComputeScalars)
++ if (!this->GetClipFunction() && this->GetComputeScalars())
+ {
+ output->GetPointData()->SetActiveScalars(scalars->GetName());
+ }
+@@ -189,8 +197,8 @@ int vtkmClip::RequestData(
+ << "Falling back to serial implementation.");
+
+ vtkNew<vtkTableBasedClipDataSet> filter;
+- filter->SetClipFunction(this->ClipFunction);
+- filter->SetValue(this->ClipValue);
++ filter->SetClipFunction(this->GetClipFunction());
++ filter->SetValue(this->GetClipValue());
+ filter->SetInputData(input);
+ filter->Update();
+ output->ShallowCopy(filter->GetOutput());
+diff --git a/Accelerators/Vtkm/Filters/vtkmClip.h b/Accelerators/Vtkm/Filters/vtkmClip.h
+index edb3cebfadc9ebeddf3c5030716ba532c0e149fe..6f33d36460d72de340eb81bb321ee868d70e6b5b 100644
+--- a/Accelerators/Vtkm/Filters/vtkmClip.h
++++ b/Accelerators/Vtkm/Filters/vtkmClip.h
+@@ -32,13 +32,6 @@
+
+ class vtkImplicitFunction;
+
+-namespace tovtkm
+-{
+-
+-class ImplicitFunctionConverter;
+-
+-} // namespace tovtkm
+-
+ class VTKACCELERATORSVTKMFILTERS_EXPORT vtkmClip : public vtkUnstructuredGridAlgorithm
+ {
+ public:
+@@ -50,15 +43,15 @@ public:
+ * The scalar value to use when clipping the dataset. Values greater than
+ * ClipValue are preserved in the output dataset. Default is 0.
+ */
+- vtkGetMacro(ClipValue, double);
+- vtkSetMacro(ClipValue, double);
++ double GetClipValue();
++ void SetClipValue(double);
+
+ /**
+ * If true, all input point data arrays will be mapped onto the output
+ * dataset. Default is true.
+ */
+- vtkGetMacro(ComputeScalars, bool);
+- vtkSetMacro(ComputeScalars, bool);
++ bool GetComputeScalars();
++ void SetComputeScalars(bool);
+
+ /**
+ * Set the implicit function with which to perform the clipping. If set,
+@@ -66,7 +59,7 @@ public:
+ * function.
+ */
+ void SetClipFunction(vtkImplicitFunction*);
+- vtkGetObjectMacro(ClipFunction, vtkImplicitFunction);
++ vtkImplicitFunction* GetClipFunction();
+
+ vtkMTimeType GetMTime() override;
+
+@@ -87,17 +80,13 @@ protected:
+ ~vtkmClip() override;
+
+ int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
+-
+ int FillInputPortInformation(int port, vtkInformation* info) override;
+
+- double ClipValue;
+- bool ComputeScalars;
+-
+- vtkImplicitFunction* ClipFunction;
+- std::unique_ptr<tovtkm::ImplicitFunctionConverter> ClipFunctionConverter;
+-
+ vtkTypeBool ForceVTKm = false;
+
++ struct internals;
++ std::unique_ptr<internals> Internals;
++
+ private:
+ vtkmClip(const vtkmClip&) = delete;
+ void operator=(const vtkmClip&) = delete;
+diff --git a/Accelerators/Vtkm/Filters/vtkmClipInstantiationsWithField.cxx b/Accelerators/Vtkm/Filters/vtkmClipInstantiationsWithField.cxx
+new file mode 100644
+index 0000000000000000000000000000000000000000..e81b5cdab62a436ef09afac33ffa0599cb9dd2a8
+--- /dev/null
++++ b/Accelerators/Vtkm/Filters/vtkmClipInstantiationsWithField.cxx
+@@ -0,0 +1,39 @@
++/*=========================================================================
++
++ Program: Visualization Toolkit
++ Module: vtkmClipInstantiationsWithField.cxx
++
++ Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
++ All rights reserved.
++ See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
++
++ This software is distributed WITHOUT ANY WARRANTY; without even
++ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
++ PURPOSE. See the above copyright notice for more information.
++
++=========================================================================*/
++
++#include "vtkmClipInternals.h"
++#include "vtkmlib/DataSetConverters.h"
++
++#include <vtkm/filter/ClipWithField.h>
++
++//------------------------------------------------------------------------------
++vtkm::cont::DataSet vtkmClip::internals::ExecuteClipWithField(
++ vtkm::cont::DataSet& in, vtkDataArray* scalars, int assoc)
++{
++ vtkm::filter::ClipWithField fieldFilter;
++ if (!this->ComputeScalars)
++ {
++ // explicitly convert just the field we need
++ auto inField = tovtkm::Convert(scalars, assoc);
++ in.AddField(inField);
++ // don't pass this field
++ fieldFilter.SetFieldsToPass(
++ vtkm::filter::FieldSelection(vtkm::filter::FieldSelection::MODE_NONE));
++ }
++
++ fieldFilter.SetActiveField(scalars->GetName(), vtkm::cont::Field::Association::POINTS);
++ fieldFilter.SetClipValue(this->ClipValue);
++ return fieldFilter.Execute(in);
++}
+diff --git a/Accelerators/Vtkm/Filters/vtkmClipInstantiationsWithImplicitFunction.cxx b/Accelerators/Vtkm/Filters/vtkmClipInstantiationsWithImplicitFunction.cxx
+new file mode 100644
+index 0000000000000000000000000000000000000000..04a637a92d487b019742bbf81884750c48ba105d
+--- /dev/null
++++ b/Accelerators/Vtkm/Filters/vtkmClipInstantiationsWithImplicitFunction.cxx
+@@ -0,0 +1,35 @@
++/*=========================================================================
++
++ Program: Visualization Toolkit
++ Module: vtkmClipInstantiationsWithImplicitFunction.cxx
++
++ Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
++ All rights reserved.
++ See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
++
++ This software is distributed WITHOUT ANY WARRANTY; without even
++ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
++ PURPOSE. See the above copyright notice for more information.
++
++=========================================================================*/
++
++#include "vtkmClipInternals.h"
++#include "vtkmlib/DataSetConverters.h"
++
++#include <vtkm/filter/ClipWithImplicitFunction.h>
++
++//------------------------------------------------------------------------------
++vtkm::cont::DataSet vtkmClip::internals::ExecuteClipWithImplicitFunction(vtkm::cont::DataSet& in)
++{
++ auto function = this->ClipFunctionConverter->Get();
++
++ vtkm::cont::DataSet result;
++ if (function.GetValid())
++ {
++ vtkm::filter::ClipWithImplicitFunction functionFilter;
++ functionFilter.SetImplicitFunction(function);
++ result = functionFilter.Execute(in);
++ }
++
++ return result;
++}
+diff --git a/Accelerators/Vtkm/Filters/vtkmClipInternals.h b/Accelerators/Vtkm/Filters/vtkmClipInternals.h
+new file mode 100644
+index 0000000000000000000000000000000000000000..5384347bf9d48f04f5d2847753c92b64fc82346e
+--- /dev/null
++++ b/Accelerators/Vtkm/Filters/vtkmClipInternals.h
+@@ -0,0 +1,37 @@
++/*=========================================================================
++
++ Program: Visualization Toolkit
++ Module: vtkmClipInternals.h
++
++ Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
++ All rights reserved.
++ See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
++
++ This software is distributed WITHOUT ANY WARRANTY; without even
++ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
++ PURPOSE. See the above copyright notice for more information.
++
++=========================================================================*/
++
++#ifndef vtkmClipInternals_h
++#define vtkmClipInternals_h
++
++#include "vtkDataArray.h"
++#include "vtkmClip.h"
++#include "vtkmlib/ImplicitFunctionConverter.h"
++
++#include <vtkm/cont/DataSet.h>
++
++struct vtkmClip::internals
++{
++ double ClipValue = .0;
++ bool ComputeScalars = true;
++
++ vtkImplicitFunction* ClipFunction = nullptr;
++ std::unique_ptr<tovtkm::ImplicitFunctionConverter> ClipFunctionConverter;
++
++ vtkm::cont::DataSet ExecuteClipWithImplicitFunction(vtkm::cont::DataSet&);
++ vtkm::cont::DataSet ExecuteClipWithField(vtkm::cont::DataSet&, vtkDataArray*, int);
++};
++
++#endif
diff --git a/ports/vtk/1f00a0c9.patch b/ports/vtk/1f00a0c9.patch
new file mode 100644
index 000000000..4cd8f1963
--- /dev/null
+++ b/ports/vtk/1f00a0c9.patch
@@ -0,0 +1,185 @@
+diff --git a/Accelerators/Vtkm/DataModel/vtkmDataSet.cxx b/Accelerators/Vtkm/DataModel/vtkmDataSet.cxx
+index da8f2e6498c2a08165500fc458eb3c9c7dc0b7e6..147c3c6e175dbd342095805750bfc4fee81735dc 100644
+--- a/Accelerators/Vtkm/DataModel/vtkmDataSet.cxx
++++ b/Accelerators/Vtkm/DataModel/vtkmDataSet.cxx
+@@ -265,7 +265,7 @@ vtkIdType vtkmDataSet::FindPoint(double x[3])
+ std::lock_guard<std::mutex> lock(locator.lock);
+ if (locator.buildTime < this->GetMTime())
+ {
+- locator.control.reset(new vtkm::cont::PointLocatorUniformGrid);
++ locator.control.reset(new vtkm::cont::PointLocatorSparseGrid);
+ locator.control->SetCoordinates(this->Internals->Coordinates);
+ locator.control->Update();
+ locator.buildTime = this->GetMTime();
+diff --git a/Accelerators/Vtkm/DataModel/vtkmlib/DataSetConverters.cxx b/Accelerators/Vtkm/DataModel/vtkmlib/DataSetConverters.cxx
+index f311f90e17814a05d082a0df67108f242018bb69..7ecfa50e4aa9922987fd33f7b29eb1bf4be3577a 100644
+--- a/Accelerators/Vtkm/DataModel/vtkmlib/DataSetConverters.cxx
++++ b/Accelerators/Vtkm/DataModel/vtkmlib/DataSetConverters.cxx
+@@ -240,11 +240,11 @@ bool Convert(const vtkm::cont::DataSet& vtkmOut, vtkRectilinearGrid* output, vtk
+ auto coordsArray = vtkm::cont::Cast<coordType>(vtkmOut.GetCoordinateSystem().GetData());
+
+ vtkSmartPointer<vtkDataArray> xArray =
+- Convert(vtkm::cont::make_FieldPoint("xArray", coordsArray.GetStorage().GetFirstArray()));
++ Convert(vtkm::cont::make_FieldPoint("xArray", coordsArray.GetFirstArray()));
+ vtkSmartPointer<vtkDataArray> yArray =
+- Convert(vtkm::cont::make_FieldPoint("yArray", coordsArray.GetStorage().GetSecondArray()));
++ Convert(vtkm::cont::make_FieldPoint("yArray", coordsArray.GetSecondArray()));
+ vtkSmartPointer<vtkDataArray> zArray =
+- Convert(vtkm::cont::make_FieldPoint("zArray", coordsArray.GetStorage().GetThirdArray()));
++ Convert(vtkm::cont::make_FieldPoint("zArray", coordsArray.GetThirdArray()));
+
+ if (!xArray || !yArray || !zArray)
+ {
+diff --git a/Accelerators/Vtkm/Filters/vtkmAverageToCells.cxx b/Accelerators/Vtkm/Filters/vtkmAverageToCells.cxx
+index 334ec1219dd269e323ae11e61a5a68e9e6e3d2e7..ed9d58fe91713a12e7b2588471275e694f71f618 100644
+--- a/Accelerators/Vtkm/Filters/vtkmAverageToCells.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmAverageToCells.cxx
+@@ -27,7 +27,6 @@
+ #include "vtkmFilterPolicy.h"
+
+ #include <vtkm/filter/CellAverage.h>
+-#include <vtkm/filter/CellAverage.hxx>
+
+ vtkStandardNewMacro(vtkmAverageToCells);
+
+diff --git a/Accelerators/Vtkm/Filters/vtkmAverageToPoints.cxx b/Accelerators/Vtkm/Filters/vtkmAverageToPoints.cxx
+index 1003f88c4d4e1dcf0be24b7f9f4e6d58e4e735f0..00c722f3162ebb042fb3973bb28a3c1c2fb48c45 100644
+--- a/Accelerators/Vtkm/Filters/vtkmAverageToPoints.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmAverageToPoints.cxx
+@@ -28,7 +28,6 @@
+ #include "vtkmFilterPolicy.h"
+
+ #include <vtkm/filter/PointAverage.h>
+-#include <vtkm/filter/PointAverage.hxx>
+
+ vtkStandardNewMacro(vtkmAverageToPoints);
+
+diff --git a/Accelerators/Vtkm/Filters/vtkmCleanGrid.cxx b/Accelerators/Vtkm/Filters/vtkmCleanGrid.cxx
+index 98f0fdb70a296a8dd97df56f706f11e0aca20f32..0cfde7e99f8f07289b08310675ee16f438bc61be 100644
+--- a/Accelerators/Vtkm/Filters/vtkmCleanGrid.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmCleanGrid.cxx
+@@ -30,7 +30,6 @@
+ #include "vtkmFilterPolicy.h"
+
+ #include <vtkm/filter/CleanGrid.h>
+-#include <vtkm/filter/CleanGrid.hxx>
+
+ vtkStandardNewMacro(vtkmCleanGrid);
+
+diff --git a/Accelerators/Vtkm/Filters/vtkmClip.cxx b/Accelerators/Vtkm/Filters/vtkmClip.cxx
+index 2649b2da024310f58159574758d278318e23f4b9..0b1dc86d3bedd425d4846f524818a68ada052ce9 100644
+--- a/Accelerators/Vtkm/Filters/vtkmClip.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmClip.cxx
+@@ -39,9 +39,7 @@
+ #include <vtkm/cont/RuntimeDeviceTracker.h>
+
+ #include <vtkm/filter/ClipWithField.h>
+-#include <vtkm/filter/ClipWithField.hxx>
+ #include <vtkm/filter/ClipWithImplicitFunction.h>
+-#include <vtkm/filter/ClipWithImplicitFunction.hxx>
+
+ #include <algorithm>
+
+diff --git a/Accelerators/Vtkm/Filters/vtkmContour.cxx b/Accelerators/Vtkm/Filters/vtkmContour.cxx
+index c9d35a544641a629ee4fb4f54c4d8245be8e6fd5..eae3a03398ffeef8b0f8ec449f89163f8c275122 100644
+--- a/Accelerators/Vtkm/Filters/vtkmContour.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmContour.cxx
+@@ -33,7 +33,6 @@
+
+ #include <vtkm/cont/RuntimeDeviceTracker.h>
+ #include <vtkm/filter/Contour.h>
+-#include <vtkm/filter/Contour.hxx>
+
+ vtkStandardNewMacro(vtkmContour);
+
+diff --git a/Accelerators/Vtkm/Filters/vtkmExternalFaces.cxx b/Accelerators/Vtkm/Filters/vtkmExternalFaces.cxx
+index 58969b5707aab56e6fcd6300ca650c9b2d88e32f..3661060164d738eb9055316fd6c0b023b09ef72f 100644
+--- a/Accelerators/Vtkm/Filters/vtkmExternalFaces.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmExternalFaces.cxx
+@@ -33,7 +33,6 @@
+ #include "vtkmFilterPolicy.h"
+
+ #include <vtkm/filter/ExternalFaces.h>
+-#include <vtkm/filter/ExternalFaces.hxx>
+
+ vtkStandardNewMacro(vtkmExternalFaces);
+
+diff --git a/Accelerators/Vtkm/Filters/vtkmExtractVOI.cxx b/Accelerators/Vtkm/Filters/vtkmExtractVOI.cxx
+index 3606f28de2229436afbcb8b0cf3ed61430055b8e..32bf94f630931a0d052cf5880d950df4588046cb 100644
+--- a/Accelerators/Vtkm/Filters/vtkmExtractVOI.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmExtractVOI.cxx
+@@ -27,7 +27,6 @@
+ #include "vtkmFilterPolicy.h"
+
+ #include "vtkm/filter/ExtractStructured.h"
+-#include "vtkm/filter/ExtractStructured.hxx"
+
+ vtkStandardNewMacro(vtkmExtractVOI);
+
+diff --git a/Accelerators/Vtkm/Filters/vtkmGradient.cxx b/Accelerators/Vtkm/Filters/vtkmGradient.cxx
+index 9b79c9e5a5e434ae810df73b51bc6bf52cefa829..6aa284878c88e2fcaf243f6721477536891f002f 100644
+--- a/Accelerators/Vtkm/Filters/vtkmGradient.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmGradient.cxx
+@@ -31,7 +31,6 @@
+
+ #include <vtkm/filter/Gradient.h>
+ #include <vtkm/filter/PointAverage.h>
+-#include <vtkm/filter/PointAverage.hxx>
+
+ vtkStandardNewMacro(vtkmGradient);
+
+diff --git a/Accelerators/Vtkm/Filters/vtkmHistogram.cxx b/Accelerators/Vtkm/Filters/vtkmHistogram.cxx
+index ed09a73d938997fe0dab1ae7eb4338f4914bad15..c13fd742477686e2dd51e95c4757628630788a77 100644
+--- a/Accelerators/Vtkm/Filters/vtkmHistogram.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmHistogram.cxx
+@@ -32,7 +32,6 @@
+ #include "vtkSmartPointer.h"
+
+ #include "vtkmFilterPolicy.h"
+-#include <vtkm/cont/ArrayRangeCompute.hxx>
+ #include <vtkm/filter/Histogram.h>
+
+ vtkStandardNewMacro(vtkmHistogram);
+diff --git a/Accelerators/Vtkm/Filters/vtkmLevelOfDetail.cxx b/Accelerators/Vtkm/Filters/vtkmLevelOfDetail.cxx
+index 04ccdce35f14b708c111302c759b5d328225cdef..db8d3f64b5e9b96f9b3e491f044056b14ae1bcdd 100644
+--- a/Accelerators/Vtkm/Filters/vtkmLevelOfDetail.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmLevelOfDetail.cxx
+@@ -33,7 +33,6 @@
+ #include <vtkm/filter/VertexClustering.h>
+ // To handle computing custom coordinate sets bounds we need to include
+ // the following
+-#include <vtkm/cont/ArrayRangeCompute.hxx>
+
+ vtkStandardNewMacro(vtkmLevelOfDetail);
+
+diff --git a/Accelerators/Vtkm/Filters/vtkmPointTransform.cxx b/Accelerators/Vtkm/Filters/vtkmPointTransform.cxx
+index 9906573f18312cb803e5ab2bce30218e4f95772c..685fb618764fc62969b5373cd922aaea7d1311e3 100644
+--- a/Accelerators/Vtkm/Filters/vtkmPointTransform.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmPointTransform.cxx
+@@ -33,7 +33,6 @@
+
+ #include "vtkm/cont/Error.h"
+ #include "vtkm/filter/PointTransform.h"
+-#include "vtkm/filter/PointTransform.hxx"
+
+ #include "vtkmFilterPolicy.h"
+
+diff --git a/Accelerators/Vtkm/Filters/vtkmThreshold.cxx b/Accelerators/Vtkm/Filters/vtkmThreshold.cxx
+index 7604acd333978a72b1e34584d14640e097b34292..647514050c42771cda57b439280d238de72911e2 100644
+--- a/Accelerators/Vtkm/Filters/vtkmThreshold.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmThreshold.cxx
+@@ -31,7 +31,6 @@
+ #include "vtkmFilterPolicy.h"
+
+ #include <vtkm/filter/Threshold.h>
+-#include <vtkm/filter/Threshold.hxx>
+
+ vtkStandardNewMacro(vtkmThreshold);
+
+diff --git a/ThirdParty/vtkm/vtkvtkm/vtk-m b/ThirdParty/vtkm/vtkvtkm/vtk-m
+index 0457427ed7b4d21e1a8e33e96713414ca11a42fc..ff7de5a72e917eac39f9a3c3a0002da5fa26c3f7 160000
+--- a/ThirdParty/vtkm/vtkvtkm/vtk-m
++++ b/ThirdParty/vtkm/vtkvtkm/vtk-m
+@@ -1 +1 @@
+-Subproject commit 0457427ed7b4d21e1a8e33e96713414ca11a42fc
++Subproject commit ff7de5a72e917eac39f9a3c3a0002da5fa26c3f7
diff --git a/ports/vtk/6811.patch b/ports/vtk/6811.patch
deleted file mode 100644
index 86dca7ea0..000000000
--- a/ports/vtk/6811.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 34b9d59acb1688f4a9f38908760d5756a0e05ee4 Mon Sep 17 00:00:00 2001
-From: Julien Schueller <schueller@phimeca.com>
-Date: Fri, 24 Apr 2020 08:28:23 -0400
-Subject: [PATCH] vtk_hdf5: Stick to 1.10.x API
-
-Closes #17866
----
- ThirdParty/hdf5/vtk_hdf5.h.in | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/ThirdParty/hdf5/vtk_hdf5.h.in b/ThirdParty/hdf5/vtk_hdf5.h.in
-index 1d802937ba..c4738b2cbf 100644
---- a/ThirdParty/hdf5/vtk_hdf5.h.in
-+++ b/ThirdParty/hdf5/vtk_hdf5.h.in
-@@ -18,6 +18,8 @@
- /* Use the hdf5 library configured for VTK. */
- #cmakedefine01 VTK_MODULE_USE_EXTERNAL_vtkhdf5
-
-+#define H5_USE_110_API
-+
- #if VTK_MODULE_USE_EXTERNAL_vtkhdf5
- #cmakedefine01 vtkhdf5_is_parallel
- #if vtkhdf5_is_parallel
---
-GitLab
-
diff --git a/ports/vtk/CONTROL b/ports/vtk/CONTROL
deleted file mode 100644
index 64ca10961..000000000
--- a/ports/vtk/CONTROL
+++ /dev/null
@@ -1,50 +0,0 @@
-Source: vtk
-Version: 9.0.1
-Port-Version: 7
-Description: Software system for 3D computer graphics, image processing, and visualization
-Homepage: https://github.com/Kitware/VTK
-Build-Depends: zlib, libpng, tiff, libxml2, jsoncpp, glew, freetype, expat, hdf5[core], libjpeg-turbo, proj4, lz4, liblzma, libtheora, eigen3, double-conversion, pugixml, libharu[notiffsymbols], sqlite3, netcdf-c, utfcpp, libogg, pegtl-2
-
-Feature: vtkm
-Description: Build with vtk-m accelerator and module.
-Build-Depends: vtk-m[core]
-
-Feature: openvr
-Description: OpenVR functionality for VTK
-Build-Depends: sdl2, openvr
-
-Feature: qt
-Description: Qt functionality for VTK
-Build-Depends: qt5-xmlpatterns, qt5-tools, qt5-imageformats, qt5-x11extras (linux)
-
-Feature: mpi
-Description: MPI functionality for VTK
-Build-Depends: mpi, hdf5[core, parallel], vtk-m[core,mpi]
-
-Feature: python
-Description: Python functionality for VTK
-Build-Depends: python3
-
-Feature: atlmfc
-Description: Mfc functionality for vtk on Windows
-Build-Depends: atlmfc (windows)
-
-Feature: paraview
-Description: Build vtk modules required by paraview
-Build-Depends: vtk[core, qt], vtk[core, atlmfc] (windows)
-
-Feature: cuda
-Description: Support CUDA compilation
-Build-Depends: cuda
-
-Feature: opengl
-Description: All opengl related modules
-Build-Depends: vtk[core]
-
-Feature: utf8
-Description: Enables vtk reader/writer with utf-8 path support
-Build-Depends: vtk[core]
-
-Feature: all
-Description: Build all vtk modules
-Build-Depends: libmysql, ffmpeg, gdal, vtk[core, qt, python, mpi], vtk[core, atlmfc, utf8] (windows)
diff --git a/ports/vtk/FindPostgreSQL.cmake b/ports/vtk/FindPostgreSQL.cmake
deleted file mode 100644
index 913c8b9ae..000000000
--- a/ports/vtk/FindPostgreSQL.cmake
+++ /dev/null
@@ -1,269 +0,0 @@
-# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
-# file Copyright.txt or https://cmake.org/licensing for details.
-
-#[=======================================================================[.rst:
-FindPostgreSQL
---------------
-
-Find the PostgreSQL installation.
-
-IMPORTED Targets
-^^^^^^^^^^^^^^^^
-
-This module defines :prop_tgt:`IMPORTED` target ``PostgreSQL::PostgreSQL``
-if PostgreSQL has been found.
-
-Result Variables
-^^^^^^^^^^^^^^^^
-
-This module will set the following variables in your project:
-
-``PostgreSQL_FOUND``
- True if PostgreSQL is found.
-``PostgreSQL_LIBRARIES``
- the PostgreSQL libraries needed for linking
-``PostgreSQL_INCLUDE_DIRS``
- the directories of the PostgreSQL headers
-``PostgreSQL_LIBRARY_DIRS``
- the link directories for PostgreSQL libraries
-``PostgreSQL_VERSION_STRING``
- the version of PostgreSQL found
-#]=======================================================================]
-
-# ----------------------------------------------------------------------------
-# History:
-# This module is derived from the module originally found in the VTK source tree.
-#
-# ----------------------------------------------------------------------------
-# Note:
-# PostgreSQL_ADDITIONAL_VERSIONS is a variable that can be used to set the
-# version number of the implementation of PostgreSQL.
-# In Windows the default installation of PostgreSQL uses that as part of the path.
-# E.g C:\Program Files\PostgreSQL\8.4.
-# Currently, the following version numbers are known to this module:
-# "11" "10" "9.6" "9.5" "9.4" "9.3" "9.2" "9.1" "9.0" "8.4" "8.3" "8.2" "8.1" "8.0"
-#
-# To use this variable just do something like this:
-# set(PostgreSQL_ADDITIONAL_VERSIONS "9.2" "8.4.4")
-# before calling find_package(PostgreSQL) in your CMakeLists.txt file.
-# This will mean that the versions you set here will be found first in the order
-# specified before the default ones are searched.
-#
-# ----------------------------------------------------------------------------
-# You may need to manually set:
-# PostgreSQL_INCLUDE_DIR - the path to where the PostgreSQL include files are.
-# PostgreSQL_LIBRARY_DIR - The path to where the PostgreSQL library files are.
-# If FindPostgreSQL.cmake cannot find the include files or the library files.
-#
-# ----------------------------------------------------------------------------
-# The following variables are set if PostgreSQL is found:
-# PostgreSQL_FOUND - Set to true when PostgreSQL is found.
-# PostgreSQL_INCLUDE_DIRS - Include directories for PostgreSQL
-# PostgreSQL_LIBRARY_DIRS - Link directories for PostgreSQL libraries
-# PostgreSQL_LIBRARIES - The PostgreSQL libraries.
-#
-# The ``PostgreSQL::PostgreSQL`` imported target is also created.
-#
-# ----------------------------------------------------------------------------
-# If you have installed PostgreSQL in a non-standard location.
-# (Please note that in the following comments, it is assumed that <Your Path>
-# points to the root directory of the include directory of PostgreSQL.)
-# Then you have three options.
-# 1) After CMake runs, set PostgreSQL_INCLUDE_DIR to <Your Path>/include and
-# PostgreSQL_LIBRARY_DIR to wherever the library pq (or libpq in windows) is
-# 2) Use CMAKE_INCLUDE_PATH to set a path to <Your Path>/PostgreSQL<-version>. This will allow find_path()
-# to locate PostgreSQL_INCLUDE_DIR by utilizing the PATH_SUFFIXES option. e.g. In your CMakeLists.txt file
-# set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "<Your Path>/include")
-# 3) Set an environment variable called ${PostgreSQL_ROOT} that points to the root of where you have
-# installed PostgreSQL, e.g. <Your Path>.
-#
-# ----------------------------------------------------------------------------
-
-set(PostgreSQL_INCLUDE_PATH_DESCRIPTION "top-level directory containing the PostgreSQL include directories. E.g /usr/local/include/PostgreSQL/8.4 or C:/Program Files/PostgreSQL/8.4/include")
-set(PostgreSQL_INCLUDE_DIR_MESSAGE "Set the PostgreSQL_INCLUDE_DIR cmake cache entry to the ${PostgreSQL_INCLUDE_PATH_DESCRIPTION}")
-set(PostgreSQL_LIBRARY_PATH_DESCRIPTION "top-level directory containing the PostgreSQL libraries.")
-set(PostgreSQL_LIBRARY_DIR_MESSAGE "Set the PostgreSQL_LIBRARY_DIR cmake cache entry to the ${PostgreSQL_LIBRARY_PATH_DESCRIPTION}")
-set(PostgreSQL_ROOT_DIR_MESSAGE "Set the PostgreSQL_ROOT system variable to where PostgreSQL is found on the machine E.g C:/Program Files/PostgreSQL/8.4")
-
-
-set(PostgreSQL_KNOWN_VERSIONS ${PostgreSQL_ADDITIONAL_VERSIONS}
- "11" "10" "9.6" "9.5" "9.4" "9.3" "9.2" "9.1" "9.0" "8.4" "8.3" "8.2" "8.1" "8.0")
-
-# Define additional search paths for root directories.
-set( PostgreSQL_ROOT_DIRECTORIES
- ENV PostgreSQL_ROOT
- ${PostgreSQL_ROOT}
-)
-foreach(suffix ${PostgreSQL_KNOWN_VERSIONS})
- if(WIN32)
- list(APPEND PostgreSQL_LIBRARY_ADDITIONAL_SEARCH_SUFFIXES
- "PostgreSQL/${suffix}/lib")
- list(APPEND PostgreSQL_INCLUDE_ADDITIONAL_SEARCH_SUFFIXES
- "PostgreSQL/${suffix}/include")
- list(APPEND PostgreSQL_TYPE_ADDITIONAL_SEARCH_SUFFIXES
- "PostgreSQL/${suffix}/include/server")
- endif()
- if(UNIX)
- list(APPEND PostgreSQL_LIBRARY_ADDITIONAL_SEARCH_SUFFIXES
- "pgsql-${suffix}/lib")
- list(APPEND PostgreSQL_INCLUDE_ADDITIONAL_SEARCH_SUFFIXES
- "pgsql-${suffix}/include")
- list(APPEND PostgreSQL_TYPE_ADDITIONAL_SEARCH_SUFFIXES
- "postgresql/${suffix}/server"
- "pgsql-${suffix}/include/server")
- endif()
-endforeach()
-
-#
-# Look for an installation.
-#
-find_path(PostgreSQL_INCLUDE_DIR
- NAMES libpq-fe.h
- PATHS
- # Look in other places.
- ${PostgreSQL_ROOT_DIRECTORIES}
- PATH_SUFFIXES
- pgsql
- postgresql
- include
- ${PostgreSQL_INCLUDE_ADDITIONAL_SEARCH_SUFFIXES}
- # Help the user find it if we cannot.
- DOC "The ${PostgreSQL_INCLUDE_DIR_MESSAGE}"
-)
-
-find_path(PostgreSQL_TYPE_INCLUDE_DIR
- NAMES catalog/pg_type.h
- PATHS
- # Look in other places.
- ${PostgreSQL_ROOT_DIRECTORIES}
- PATH_SUFFIXES
- postgresql
- pgsql/server
- postgresql/server
- include/server
- ${PostgreSQL_TYPE_ADDITIONAL_SEARCH_SUFFIXES}
- # Help the user find it if we cannot.
- DOC "The ${PostgreSQL_INCLUDE_DIR_MESSAGE}"
-)
-
-# The PostgreSQL library.
-set (PostgreSQL_LIBRARY_TO_FIND pq)
-# Setting some more prefixes for the library
-set (PostgreSQL_LIB_PREFIX "")
-if ( WIN32 )
- set (PostgreSQL_LIB_PREFIX ${PostgreSQL_LIB_PREFIX} "lib")
- set (PostgreSQL_LIBRARY_TO_FIND ${PostgreSQL_LIB_PREFIX}${PostgreSQL_LIBRARY_TO_FIND})
-endif()
-
-function(__postgresql_find_library _name)
- find_library(${_name}
- NAMES ${ARGN}
- PATHS
- ${PostgreSQL_ROOT_DIRECTORIES}
- PATH_SUFFIXES
- lib
- ${PostgreSQL_LIBRARY_ADDITIONAL_SEARCH_SUFFIXES}
- # Help the user find it if we cannot.
- DOC "The ${PostgreSQL_LIBRARY_DIR_MESSAGE}"
- )
-endfunction()
-
-# For compatibility with versions prior to this multi-config search, honor
-# any PostgreSQL_LIBRARY that is already specified and skip the search.
-if(PostgreSQL_LIBRARY)
- set(PostgreSQL_LIBRARIES "${PostgreSQL_LIBRARY}")
- get_filename_component(PostgreSQL_LIBRARY_DIR "${PostgreSQL_LIBRARY}" PATH)
-else()
- __postgresql_find_library(PostgreSQL_LIBRARY_RELEASE ${PostgreSQL_LIBRARY_TO_FIND})
- __postgresql_find_library(PostgreSQL_LIBRARY_DEBUG ${PostgreSQL_LIBRARY_TO_FIND}d)
- include(SelectLibraryConfigurations)
- select_library_configurations(PostgreSQL)
- mark_as_advanced(PostgreSQL_LIBRARY_RELEASE PostgreSQL_LIBRARY_DEBUG)
- if(PostgreSQL_LIBRARY_RELEASE)
- get_filename_component(PostgreSQL_LIBRARY_DIR "${PostgreSQL_LIBRARY_RELEASE}" PATH)
- elseif(PostgreSQL_LIBRARY_DEBUG)
- get_filename_component(PostgreSQL_LIBRARY_DIR "${PostgreSQL_LIBRARY_DEBUG}" PATH)
- else()
- set(PostgreSQL_LIBRARY_DIR "")
- endif()
-endif()
-
-if (PostgreSQL_INCLUDE_DIR)
- # Some platforms include multiple pg_config.hs for multi-lib configurations
- # This is a temporary workaround. A better solution would be to compile
- # a dummy c file and extract the value of the symbol.
- file(GLOB _PG_CONFIG_HEADERS "${PostgreSQL_INCLUDE_DIR}/pg_config*.h")
- foreach(_PG_CONFIG_HEADER ${_PG_CONFIG_HEADERS})
- if(EXISTS "${_PG_CONFIG_HEADER}")
- file(STRINGS "${_PG_CONFIG_HEADER}" pgsql_version_str
- REGEX "^#define[\t ]+PG_VERSION_NUM[\t ]+.*")
- if(pgsql_version_str)
- string(REGEX REPLACE "^#define[\t ]+PG_VERSION_NUM[\t ]+([0-9]*).*"
- "\\1" _PostgreSQL_VERSION_NUM "${pgsql_version_str}")
- break()
- endif()
- endif()
- endforeach()
- if (_PostgreSQL_VERSION_NUM)
- math(EXPR _PostgreSQL_major_version "${_PostgreSQL_VERSION_NUM} / 10000")
- math(EXPR _PostgreSQL_minor_version "${_PostgreSQL_VERSION_NUM} % 10000")
- set(PostgreSQL_VERSION_STRING "${_PostgreSQL_major_version}.${_PostgreSQL_minor_version}")
- unset(_PostgreSQL_major_version)
- unset(_PostgreSQL_minor_version)
- else ()
- foreach(_PG_CONFIG_HEADER ${_PG_CONFIG_HEADERS})
- if(EXISTS "${_PG_CONFIG_HEADER}")
- file(STRINGS "${_PG_CONFIG_HEADER}" pgsql_version_str
- REGEX "^#define[\t ]+PG_VERSION[\t ]+\".*\"")
- if(pgsql_version_str)
- string(REGEX REPLACE "^#define[\t ]+PG_VERSION[\t ]+\"([^\"]*)\".*"
- "\\1" PostgreSQL_VERSION_STRING "${pgsql_version_str}")
- break()
- endif()
- endif()
- endforeach()
- endif ()
- unset(_PostgreSQL_VERSION_NUM)
- unset(pgsql_version_str)
-endif()
-
-# Did we find anything?
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(PostgreSQL
- REQUIRED_VARS PostgreSQL_LIBRARY PostgreSQL_INCLUDE_DIR PostgreSQL_TYPE_INCLUDE_DIR
- VERSION_VAR PostgreSQL_VERSION_STRING)
-set(PostgreSQL_FOUND ${POSTGRESQL_FOUND})
-
-function(__postgresql_import_library _target _var _config)
- if(_config)
- set(_config_suffix "_${_config}")
- else()
- set(_config_suffix "")
- endif()
-
- set(_lib "${${_var}${_config_suffix}}")
- if(EXISTS "${_lib}")
- if(_config)
- set_property(TARGET ${_target} APPEND PROPERTY
- IMPORTED_CONFIGURATIONS ${_config})
- endif()
- set_target_properties(${_target} PROPERTIES
- IMPORTED_LOCATION${_config_suffix} "${_lib}")
- endif()
-endfunction()
-
-# Now try to get the include and library path.
-if(PostgreSQL_FOUND)
- if (NOT TARGET PostgreSQL::PostgreSQL)
- add_library(PostgreSQL::PostgreSQL UNKNOWN IMPORTED)
- set_target_properties(PostgreSQL::PostgreSQL PROPERTIES
- INTERFACE_INCLUDE_DIRECTORIES "${PostgreSQL_INCLUDE_DIR};${PostgreSQL_TYPE_INCLUDE_DIR}")
- __postgresql_import_library(PostgreSQL::PostgreSQL PostgreSQL_LIBRARY "")
- __postgresql_import_library(PostgreSQL::PostgreSQL PostgreSQL_LIBRARY "RELEASE")
- __postgresql_import_library(PostgreSQL::PostgreSQL PostgreSQL_LIBRARY "DEBUG")
- endif ()
- set(PostgreSQL_INCLUDE_DIRS ${PostgreSQL_INCLUDE_DIR} ${PostgreSQL_TYPE_INCLUDE_DIR} )
- set(PostgreSQL_LIBRARY_DIRS ${PostgreSQL_LIBRARY_DIR} )
-endif()
-
-mark_as_advanced(PostgreSQL_INCLUDE_DIR PostgreSQL_TYPE_INCLUDE_DIR)
diff --git a/ports/vtk/d107698a.patch b/ports/vtk/d107698a.patch
new file mode 100644
index 000000000..1a7ac0877
--- /dev/null
+++ b/ports/vtk/d107698a.patch
@@ -0,0 +1,291 @@
+diff --git a/Accelerators/Vtkm/Core/vtkmlib/DataArrayConverters.h b/Accelerators/Vtkm/Core/vtkmlib/DataArrayConverters.h
+index 0b3f1a963063cdf5f1685dbde55deaaea7a77d2f..24198dada846d6d81fb9f1c155e5a6612e1e7055 100644
+--- a/Accelerators/Vtkm/Core/vtkmlib/DataArrayConverters.h
++++ b/Accelerators/Vtkm/Core/vtkmlib/DataArrayConverters.h
+@@ -25,6 +25,7 @@
+
+ #include <vtkm/cont/ArrayHandleSOA.h>
+ #include <vtkm/cont/Field.h>
++#include <vtkm/cont/VariantArrayHandle.h>
+
+ #include <type_traits> // for std::underlying_type
+
+diff --git a/Accelerators/Vtkm/DataModel/Testing/Cxx/TestVTKMDataSet.cxx b/Accelerators/Vtkm/DataModel/Testing/Cxx/TestVTKMDataSet.cxx
+index ec41b18b60db354a8c4a1532eb5cedfd70ce7534..2493ae5b03cf29c5dfc90614489a8049fc623715 100644
+--- a/Accelerators/Vtkm/DataModel/Testing/Cxx/TestVTKMDataSet.cxx
++++ b/Accelerators/Vtkm/DataModel/Testing/Cxx/TestVTKMDataSet.cxx
+@@ -274,18 +274,19 @@ vtkm::cont::testing::MakeTestDataSet Maker;
+ void TestUniformDataSet()
+ {
+ auto dataset = Maker.Make3DUniformDataSet0();
+- auto coords =
+- dataset.GetCoordinateSystem().GetData().Cast<vtkm::cont::ArrayHandleUniformPointCoordinates>();
++ auto coords = dataset.GetCoordinateSystem()
++ .GetData()
++ .AsArrayHandle<vtkm::cont::ArrayHandleUniformPointCoordinates>();
+ auto portal = coords.ReadPortal();
+ auto dims = portal.GetDimensions();
+ auto origin = portal.GetOrigin();
+ auto spacing = portal.GetSpacing();
+
+ vtkNew<vtkFloatArray> pointField, cellField;
+- FieldCopy(dataset.GetField("pointvar").GetData().Cast<vtkm::cont::ArrayHandle<float>>(),
++ FieldCopy(dataset.GetField("pointvar").GetData().AsArrayHandle<vtkm::cont::ArrayHandle<float>>(),
+ "pointvar", pointField);
+- FieldCopy(dataset.GetField("cellvar").GetData().Cast<vtkm::cont::ArrayHandle<float>>(), "cellvar",
+- cellField);
++ FieldCopy(dataset.GetField("cellvar").GetData().AsArrayHandle<vtkm::cont::ArrayHandle<float>>(),
++ "cellvar", cellField);
+
+ vtkNew<vtkImageData> imageData;
+ imageData->SetDimensions(dims[0], dims[1], dims[2]);
+@@ -315,10 +316,10 @@ void TestCurvilinearDataSet()
+ CoordsCopy(dataset.GetCoordinateSystem(), points);
+
+ vtkNew<vtkFloatArray> pointField, cellField;
+- FieldCopy(dataset.GetField("pointvar").GetData().Cast<vtkm::cont::ArrayHandle<float>>(),
++ FieldCopy(dataset.GetField("pointvar").GetData().AsArrayHandle<vtkm::cont::ArrayHandle<float>>(),
+ "pointvar", pointField);
+- FieldCopy(dataset.GetField("cellvar").GetData().Cast<vtkm::cont::ArrayHandle<float>>(), "cellvar",
+- cellField);
++ FieldCopy(dataset.GetField("cellvar").GetData().AsArrayHandle<vtkm::cont::ArrayHandle<float>>(),
++ "cellvar", cellField);
+
+ vtkNew<vtkStructuredGrid> dsVtk;
+ dsVtk->SetDimensions(dims[0], dims[1], dims[2]);
+@@ -357,10 +358,10 @@ void TestExplicitDataSet()
+ }
+
+ vtkNew<vtkFloatArray> pointField, cellField;
+- FieldCopy(dataset.GetField("pointvar").GetData().Cast<vtkm::cont::ArrayHandle<float>>(),
++ FieldCopy(dataset.GetField("pointvar").GetData().AsArrayHandle<vtkm::cont::ArrayHandle<float>>(),
+ "pointvar", pointField);
+- FieldCopy(dataset.GetField("cellvar").GetData().Cast<vtkm::cont::ArrayHandle<float>>(), "cellvar",
+- cellField);
++ FieldCopy(dataset.GetField("cellvar").GetData().AsArrayHandle<vtkm::cont::ArrayHandle<float>>(),
++ "cellvar", cellField);
+
+ vtkNew<vtkUnstructuredGrid> dsVtk;
+ dsVtk->SetPoints(points);
+diff --git a/Accelerators/Vtkm/DataModel/vtkmDataSet.cxx b/Accelerators/Vtkm/DataModel/vtkmDataSet.cxx
+index 147c3c6e175dbd342095805750bfc4fee81735dc..f1ef72ffae91ca843ca56bdc305ab68bbc955157 100644
+--- a/Accelerators/Vtkm/DataModel/vtkmDataSet.cxx
++++ b/Accelerators/Vtkm/DataModel/vtkmDataSet.cxx
+@@ -35,8 +35,7 @@
+ #include <vtkm/cont/CellLocatorGeneral.h>
+ #include <vtkm/cont/DataSet.h>
+ #include <vtkm/cont/Invoker.h>
+-#include <vtkm/cont/PointLocator.h>
+-#include <vtkm/cont/PointLocatorUniformGrid.h>
++#include <vtkm/cont/PointLocatorSparseGrid.h>
+ #include <vtkm/worklet/ScatterPermutation.h>
+
+ #include <mutex>
+@@ -62,8 +61,8 @@ struct vtkmDataSet::DataMembers
+ vtkm::cont::CoordinateSystem Coordinates;
+ vtkNew<vtkGenericCell> Cell;
+
+- VtkmLocator<vtkm::cont::PointLocator> PointLocator;
+- VtkmLocator<vtkm::cont::CellLocator> CellLocator;
++ VtkmLocator<vtkm::cont::PointLocatorSparseGrid> PointLocator;
++ VtkmLocator<vtkm::cont::CellLocatorGeneral> CellLocator;
+ };
+
+ //------------------------------------------------------------------------------
+@@ -172,7 +171,7 @@ void vtkmDataSet::GetCellBounds(vtkIdType cellId, double bounds[6])
+ this->Internals->CellSet.IsType<vtkm::cont::CellSetStructured<3>>())
+ {
+ auto portal = this->Internals->Coordinates.GetData()
+- .Cast<vtkm::cont::ArrayHandleUniformPointCoordinates>()
++ .AsArrayHandle<vtkm::cont::ArrayHandleUniformPointCoordinates>()
+ .ReadPortal();
+
+ vtkm::internal::ConnectivityStructuredInternals<3> helper;
+@@ -279,7 +278,7 @@ vtkIdType vtkmDataSet::FindPoint(double x[3])
+ vtkm::Id pointId = -1;
+ vtkm::FloatDefault d2 = 0;
+ // exec object created for the Serial device can be called directly
+- execLocator->FindNearestNeighbor(point, pointId, d2);
++ execLocator.FindNearestNeighbor(point, pointId, d2);
+ return pointId;
+ }
+
+@@ -316,7 +315,7 @@ vtkIdType vtkmDataSet::FindCell(double x[3], vtkCell*, vtkGenericCell*, vtkIdTyp
+ vtkm::Vec<vtkm::FloatDefault, 3> pc;
+ vtkm::Id cellId = -1;
+ // exec object created for the Serial device can be called directly
+- execLocator->FindCell(point, cellId, pc);
++ execLocator.FindCell(point, cellId, pc);
+
+ if (cellId >= 0)
+ {
+diff --git a/Accelerators/Vtkm/DataModel/vtkmlib/ImageDataConverter.cxx b/Accelerators/Vtkm/DataModel/vtkmlib/ImageDataConverter.cxx
+index 351c0d5ce169cf455d2d3c0a1307ba8e60510371..c7ecff3c9fc5eafecb9dd11d9dbea15cbd44bd3d 100644
+--- a/Accelerators/Vtkm/DataModel/vtkmlib/ImageDataConverter.cxx
++++ b/Accelerators/Vtkm/DataModel/vtkmlib/ImageDataConverter.cxx
+@@ -121,7 +121,7 @@ bool Convert(
+ return false;
+ }
+
+- auto points = cs.GetData().Cast<vtkm::cont::ArrayHandleUniformPointCoordinates>();
++ auto points = cs.GetData().AsArrayHandle<vtkm::cont::ArrayHandleUniformPointCoordinates>();
+ auto portal = points.ReadPortal();
+
+ auto origin = portal.GetOrigin();
+@@ -156,7 +156,7 @@ bool Convert(const vtkm::cont::DataSet& voutput, vtkImageData* output, vtkDataSe
+ return false;
+ }
+
+- auto points = cs.GetData().Cast<vtkm::cont::ArrayHandleUniformPointCoordinates>();
++ auto points = cs.GetData().AsArrayHandle<vtkm::cont::ArrayHandleUniformPointCoordinates>();
+ auto portal = points.ReadPortal();
+
+ auto dim = portal.GetDimensions();
+diff --git a/Accelerators/Vtkm/DataModel/vtkmlib/ImplicitFunctionConverter.cxx b/Accelerators/Vtkm/DataModel/vtkmlib/ImplicitFunctionConverter.cxx
+index f2411d0e70505435cd312ee23b3cb2e653eb28d8..814af43cc168b4c3b44107b0c19e68cc1b42538d 100644
+--- a/Accelerators/Vtkm/DataModel/vtkmlib/ImplicitFunctionConverter.cxx
++++ b/Accelerators/Vtkm/DataModel/vtkmlib/ImplicitFunctionConverter.cxx
+@@ -52,8 +52,7 @@ void ImplicitFunctionConverter::Set(vtkImplicitFunction* function)
+ box->GetXMin(xmin);
+ box->GetXMax(xmax);
+
+- auto b = new vtkm::Box(MakeFVec3(xmin), MakeFVec3(xmax));
+- this->OutFunction.Reset(b, true);
++ this->OutFunction = vtkm::Box(MakeFVec3(xmin), MakeFVec3(xmax));
+ }
+ else if ((cylinder = vtkCylinder::SafeDownCast(function)))
+ {
+@@ -62,9 +61,8 @@ void ImplicitFunctionConverter::Set(vtkImplicitFunction* function)
+ cylinder->GetAxis(axis);
+ radius = cylinder->GetRadius();
+
+- auto c = new vtkm::Cylinder(
+- MakeFVec3(center), MakeFVec3(axis), static_cast<vtkm::FloatDefault>(radius));
+- this->OutFunction.Reset(c, true);
++ this->OutFunction =
++ vtkm::Cylinder(MakeFVec3(center), MakeFVec3(axis), static_cast<vtkm::FloatDefault>(radius));
+ }
+ else if ((plane = vtkPlane::SafeDownCast(function)))
+ {
+@@ -72,8 +70,7 @@ void ImplicitFunctionConverter::Set(vtkImplicitFunction* function)
+ plane->GetOrigin(origin);
+ plane->GetNormal(normal);
+
+- auto p = new vtkm::Plane(MakeFVec3(origin), MakeFVec3(normal));
+- this->OutFunction.Reset(p, true);
++ this->OutFunction = vtkm::Plane(MakeFVec3(origin), MakeFVec3(normal));
+ }
+ else if ((sphere = vtkSphere::SafeDownCast(function)))
+ {
+@@ -81,8 +78,7 @@ void ImplicitFunctionConverter::Set(vtkImplicitFunction* function)
+ sphere->GetCenter(center);
+ radius = sphere->GetRadius();
+
+- auto s = new vtkm::Sphere(MakeFVec3(center), static_cast<vtkm::FloatDefault>(radius));
+- this->OutFunction.Reset(s, true);
++ this->OutFunction = vtkm::Sphere(MakeFVec3(center), static_cast<vtkm::FloatDefault>(radius));
+ }
+ else
+ {
+@@ -95,7 +91,7 @@ void ImplicitFunctionConverter::Set(vtkImplicitFunction* function)
+ this->InFunction = function;
+ }
+
+-const vtkm::cont::ImplicitFunctionHandle& ImplicitFunctionConverter::Get() const
++const vtkm::ImplicitFunctionGeneral& ImplicitFunctionConverter::Get()
+ {
+ if (this->InFunction && (this->MTime < this->InFunction->GetMTime()))
+ {
+@@ -110,9 +106,7 @@ const vtkm::cont::ImplicitFunctionHandle& ImplicitFunctionConverter::Get() const
+ box->GetXMin(xmin);
+ box->GetXMax(xmax);
+
+- auto b = static_cast<vtkm::Box*>(this->OutFunction.Get());
+- b->SetMinPoint(MakeFVec3(xmin));
+- b->SetMaxPoint(MakeFVec3(xmax));
++ this->OutFunction = vtkm::Box(MakeFVec3(xmin), MakeFVec3(xmax));
+ }
+ else if ((cylinder = vtkCylinder::SafeDownCast(this->InFunction)))
+ {
+@@ -121,10 +115,8 @@ const vtkm::cont::ImplicitFunctionHandle& ImplicitFunctionConverter::Get() const
+ cylinder->GetAxis(axis);
+ radius = cylinder->GetRadius();
+
+- auto c = static_cast<vtkm::Cylinder*>(this->OutFunction.Get());
+- c->SetCenter(MakeFVec3(center));
+- c->SetAxis(MakeFVec3(axis));
+- c->SetRadius(static_cast<vtkm::FloatDefault>(radius));
++ this->OutFunction =
++ vtkm::Cylinder(MakeFVec3(center), MakeFVec3(axis), static_cast<vtkm::FloatDefault>(radius));
+ }
+ else if ((plane = vtkPlane::SafeDownCast(this->InFunction)))
+ {
+@@ -132,9 +124,7 @@ const vtkm::cont::ImplicitFunctionHandle& ImplicitFunctionConverter::Get() const
+ plane->GetOrigin(origin);
+ plane->GetNormal(normal);
+
+- auto p = static_cast<vtkm::Plane*>(this->OutFunction.Get());
+- p->SetOrigin(MakeFVec3(origin));
+- p->SetNormal(MakeFVec3(normal));
++ this->OutFunction = vtkm::Plane(MakeFVec3(origin), MakeFVec3(normal));
+ }
+ else if ((sphere = vtkSphere::SafeDownCast(this->InFunction)))
+ {
+@@ -142,9 +132,7 @@ const vtkm::cont::ImplicitFunctionHandle& ImplicitFunctionConverter::Get() const
+ sphere->GetCenter(center);
+ radius = sphere->GetRadius();
+
+- auto s = static_cast<vtkm::Sphere*>(this->OutFunction.Get());
+- s->SetCenter(MakeFVec3(center));
+- s->SetRadius(static_cast<vtkm::FloatDefault>(radius));
++ this->OutFunction = vtkm::Sphere(MakeFVec3(center), static_cast<vtkm::FloatDefault>(radius));
+ }
+
+ this->MTime = this->InFunction->GetMTime();
+diff --git a/Accelerators/Vtkm/DataModel/vtkmlib/ImplicitFunctionConverter.h b/Accelerators/Vtkm/DataModel/vtkmlib/ImplicitFunctionConverter.h
+index 10e2ae99ae819ca86516bf7ab5a0988c75b6323e..a1a571c93d44a7d62f79afc86aab05d1f359af82 100644
+--- a/Accelerators/Vtkm/DataModel/vtkmlib/ImplicitFunctionConverter.h
++++ b/Accelerators/Vtkm/DataModel/vtkmlib/ImplicitFunctionConverter.h
+@@ -20,7 +20,7 @@
+ #include "vtkType.h" // For vtkMTimeType
+ #include "vtkmConfigDataModel.h" //required for general vtkm setup
+
+-#include "vtkm/cont/ImplicitFunctionHandle.h"
++#include "vtkm/ImplicitFunction.h"
+
+ class vtkImplicitFunction;
+
+@@ -33,11 +33,11 @@ public:
+ ImplicitFunctionConverter();
+
+ void Set(vtkImplicitFunction*);
+- const vtkm::cont::ImplicitFunctionHandle& Get() const;
++ const vtkm::ImplicitFunctionGeneral& Get();
+
+ private:
+ vtkImplicitFunction* InFunction;
+- vtkm::cont::ImplicitFunctionHandle OutFunction;
++ vtkm::ImplicitFunctionGeneral OutFunction;
+ mutable vtkMTimeType MTime;
+ };
+
+diff --git a/Accelerators/Vtkm/Filters/vtkmClipInstantiationsWithImplicitFunction.cxx b/Accelerators/Vtkm/Filters/vtkmClipInstantiationsWithImplicitFunction.cxx
+index 04a637a92d487b019742bbf81884750c48ba105d..674d9b6e0dfe36edd787e519e70ec0bf46602c81 100644
+--- a/Accelerators/Vtkm/Filters/vtkmClipInstantiationsWithImplicitFunction.cxx
++++ b/Accelerators/Vtkm/Filters/vtkmClipInstantiationsWithImplicitFunction.cxx
+@@ -24,12 +24,9 @@ vtkm::cont::DataSet vtkmClip::internals::ExecuteClipWithImplicitFunction(vtkm::c
+ auto function = this->ClipFunctionConverter->Get();
+
+ vtkm::cont::DataSet result;
+- if (function.GetValid())
+- {
+- vtkm::filter::ClipWithImplicitFunction functionFilter;
+- functionFilter.SetImplicitFunction(function);
+- result = functionFilter.Execute(in);
+- }
++ vtkm::filter::ClipWithImplicitFunction functionFilter;
++ functionFilter.SetImplicitFunction(function);
++ result = functionFilter.Execute(in);
+
+ return result;
+ }
diff --git a/ports/vtk/fix-freetype.patch b/ports/vtk/fix-freetype.patch
deleted file mode 100644
index aaaf35174..000000000
--- a/ports/vtk/fix-freetype.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/Rendering/FreeType/vtkFreeTypeTools.cxx b/Rendering/FreeType/vtkFreeTypeTools.cxx
-index c54289dc..e6d9b14f 100644
---- a/Rendering/FreeType/vtkFreeTypeTools.cxx
-+++ b/Rendering/FreeType/vtkFreeTypeTools.cxx
-@@ -378,7 +378,7 @@ FTC_CMapCache* vtkFreeTypeTools::GetCMapCache()
- }
-
- //----------------------------------------------------------------------------
--FT_CALLBACK_DEF(FT_Error)
-+FT_Error
- vtkFreeTypeToolsFaceRequester(
- FTC_FaceID face_id, FT_Library lib, FT_Pointer request_data, FT_Face* face)
- {
-diff --git a/Rendering/FreeTypeFontConfig/vtkFontConfigFreeTypeTools.cxx b/Rendering/FreeTypeFontConfig/vtkFontConfigFreeTypeTools.cxx
-index 5c1908cf..41ed97e7 100644
---- a/Rendering/FreeTypeFontConfig/vtkFontConfigFreeTypeTools.cxx
-+++ b/Rendering/FreeTypeFontConfig/vtkFontConfigFreeTypeTools.cxx
-@@ -29,7 +29,7 @@ vtkStandardNewMacro(vtkFontConfigFreeTypeTools);
- namespace
- {
- // The FreeType face requester callback:
--FT_CALLBACK_DEF(FT_Error)
-+static FT_Error
- vtkFontConfigFreeTypeToolsFaceRequester(
- FTC_FaceID face_id, FT_Library lib, FT_Pointer request_data, FT_Face* face)
- {
diff --git a/ports/vtk/module-name-mangling.patch b/ports/vtk/module-name-mangling.patch
deleted file mode 100644
index d1bc96c39..000000000
--- a/ports/vtk/module-name-mangling.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/CMake/vtkModule.cmake
-+++ b/CMake/vtkModule.cmake
-@@ -4409,6 +4409,15 @@ endif ()\n\n")
- foreach (_vtk_export_module IN LISTS _vtk_export_MODULES)
- get_property(_vtk_export_target_name GLOBAL
- PROPERTY "_vtk_module_${_vtk_export_module}_target_name")
-+ # Use the export name of the target if it has one set.
-+ get_property(_vtk_export_target_has_export_name
-+ TARGET "${_vtk_export_target_name}"
-+ PROPERTY EXPORT_NAME SET)
-+ if (_vtk_export_target_has_export_name)
-+ get_property(_vtk_export_target_name
-+ TARGET "${_vtk_export_target_name}"
-+ PROPERTY EXPORT_NAME)
-+ endif ()
- set(_vtk_export_base "_vtk_module_find_package_${_vtk_export_module}")
- get_property(_vtk_export_packages GLOBAL
- PROPERTY "${_vtk_export_base}")
diff --git a/ports/vtk/portfile.cmake b/ports/vtk/portfile.cmake
index 79dec0b47..b9af50ad8 100644
--- a/ports/vtk/portfile.cmake
+++ b/ports/vtk/portfile.cmake
@@ -25,7 +25,9 @@ if("atlmfc" IN_LIST FEATURES)
endif()
if("vtkm" IN_LIST FEATURES)
list(APPEND ADDITIONAL_OPTIONS
- -DVTK_MODULE_ENABLE_VTK_AcceleratorsVTKm=YES
+ -DVTK_MODULE_ENABLE_VTK_AcceleratorsVTKmCore=YES
+ -DVTK_MODULE_ENABLE_VTK_AcceleratorsVTKmDataModel=YES
+ -DVTK_MODULE_ENABLE_VTK_AcceleratorsVTKmFilters=YES
-DVTK_MODULE_ENABLE_VTK_vtkm=YES
)
endif()
@@ -37,8 +39,10 @@ if("python" IN_LIST FEATURES)
-DVTK_PYTHON_VERSION=3
-DPython3_FIND_REGISTRY=NEVER
"-DPython3_EXECUTABLE:PATH=${PYTHON3}"
+ -DVTK_MODULE_ENABLE_VTK_Python=YES
+ -DVTK_MODULE_ENABLE_VTK_PythonContext2D=YES
+ -DVTK_MODULE_ENABLE_VTK_PythonInterpreter=YES
)
-
#VTK_PYTHON_SITE_PACKAGES_SUFFIX should be set to the install dir of the site-packages
endif()
@@ -56,7 +60,9 @@ if("paraview" IN_LIST FEATURES)
-DVTK_MODULE_ENABLE_VTK_IOVPIC=YES
-DVTK_MODULE_ENABLE_VTK_RenderingLICOpenGL2=YES
-DVTK_MODULE_ENABLE_VTK_RenderingAnnotation=YES
+ -DVTK_MODULE_ENABLE_VTK_DomainsChemistry=YES
-DVTK_MODULE_ENABLE_VTK_DomainsChemistryOpenGL2=YES
+ -DVTK_MODULE_ENABLE_VTK_FiltersParallelDIY2=YES
)
if("python" IN_LIST FEATURES)
list(APPEND ADDITIONAL_OPTIONS
@@ -123,42 +129,34 @@ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
# =============================================================================
# Clone & patch
-# This patch is huge, we prefer to download it on demand
-vcpkg_download_distfile(QT_NO_KEYWORDS_PATCH
- URLS "https://github.com/Kitware/VTK/commit/64265c5fd1a8e26a6a81241284dea6b3272f6db6.diff"
- FILENAME 64265c5fd1a8e26a6a81241284dea6b3272f6db6.diff
- SHA512 08991f07b30b893b14e906017b77fb700a8298a3a8906086a0c4b67688c1c0431b3d6bf890df70bd3ebf963cbb9c035b5dbcb9d7593e8c716c3a594ccb9a0fc7
-)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Kitware/VTK
- REF 96e6fa9b3ff245e4d51d49f23d40e9ad8774e85e # v9.0.1
- SHA512 0efb1845053b6143e5ee7fa081b8be98f6825262c59051e88b2be02497e23362055067b2f811eff82e93eb194e5a9afd2a12e3878a252eb4011a5dab95127a6f
+ REF 2959413ff190bc6e3ff40f5b6c1342edd2e5233f # v9.0.x used by ParaView 5.9.1
+ SHA512 16229c107ed904e8fa6850c3814b8bdcdf9700ef44f6ff5b3a77e7d793ce19954fc2c7b1219a0162cf588def6e990883cd3f808c316a4db6e65bd6cd1769dd3f
HEAD_REF master
PATCHES
- 6811.patch
- FindLZMA.patch # Will be fixed in 9.1?
+ FindLZMA.patch
FindLZ4.patch
Findproj.patch
- vtkm.patch # To include an external VTKm build (v.1.5 required)
pegtl.patch
pythonwrapper.patch # Required by ParaView to Wrap required classes
NoUndefDebug.patch # Required to link against correct Python library depending on build type.
python_debug.patch
fix-using-hdf5.patch
- module-name-mangling.patch
+ # CHECK: module-name-mangling.patch
# Last patch TODO: Patch out internal loguru
FindExpat.patch # The find_library calls are taken care of by vcpkg-cmake-wrapper.cmake of expat
- fix-freetype.patch # Should be fixed next version, !7367 + !7434
- # Remove these 2 official patches in the next update
- ${QT_NO_KEYWORDS_PATCH}
- 0002-Qt-enforce-QT_NO_KEYWORDS-builds-by-VTK-itself.patch
+ # upstream vtkm patches to make it work with vtkm 1.6
+ vtkm.patch # To include an external VTKm build
+ 1f00a0c9.patch
+ 156fb524.patch
+ d107698a.patch
)
# =============================================================================
#Overwrite outdated modules if they have not been patched:
-file(COPY "${CURRENT_PORT_DIR}/FindPostgreSQL.cmake" DESTINATION "${SOURCE_PATH}/CMake") # will be backported from CMake in VTK in a future release
file(COPY "${CURRENT_PORT_DIR}/FindHDF5.cmake" DESTINATION "${SOURCE_PATH}/CMake/patches/99") # due to usage of targets in netcdf-c
# =============================================================================
@@ -173,11 +171,6 @@ vcpkg_configure_cmake(
-DBUILD_TESTING=OFF
-DVTK_BUILD_TESTING=OFF
-DVTK_BUILD_EXAMPLES=OFF
- -DVTK_INSTALL_INCLUDE_DIR=include
- -DVTK_INSTALL_DATA_DIR=share/vtk/data
- -DVTK_INSTALL_DOC_DIR=share/vtk/doc
- -DVTK_INSTALL_PACKAGE_DIR=share/vtk
- -DVTK_INSTALL_RUNTIME_DIR=bin
-DVTK_FORBID_DOWNLOADS=ON
-DVTK_ENABLE_REMOTE_MODULES=OFF
# VTK groups to enable
@@ -199,44 +192,18 @@ vcpkg_copy_pdbs()
# Fixup target files
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/vtk-9.0)
-# TODO: Check if the following is still required
-# For some reason the references to the XDMF libraries in the target files do not end up
-# correctly, so we fix them here.
-# if(VTK_WITH_ALL_MODULES)
- # file(READ ${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets-release.cmake VTK_TARGETS_RELEASE_CONTENT)
- # string(REPLACE "lib/../XdmfCore.lib" "lib/XdmfCore.lib" VTK_TARGETS_RELEASE_CONTENT "${VTK_TARGETS_RELEASE_CONTENT}")
- # string(REPLACE "bin/../XdmfCore.dll" "bin/XdmfCore.dll" VTK_TARGETS_RELEASE_CONTENT "${VTK_TARGETS_RELEASE_CONTENT}")
- # string(REPLACE "lib/../vtkxdmf3.lib" "lib/vtkxdmf3.lib" VTK_TARGETS_RELEASE_CONTENT "${VTK_TARGETS_RELEASE_CONTENT}")
- # string(REPLACE "bin/../vtkxdmf3.dll" "bin/vtkxdmf3.dll" VTK_TARGETS_RELEASE_CONTENT "${VTK_TARGETS_RELEASE_CONTENT}")
- # file(WRITE ${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets-release.cmake "${VTK_TARGETS_RELEASE_CONTENT}")
-
- # file(READ ${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets-debug.cmake VTK_TARGETS_DEBUG_CONTENT)
- # string(REPLACE "lib/../XdmfCore.lib" "lib/XdmfCore.lib" VTK_TARGETS_DEBUG_CONTENT "${VTK_TARGETS_DEBUG_CONTENT}")
- # string(REPLACE "bin/../XdmfCore.dll" "bin/XdmfCore.dll" VTK_TARGETS_DEBUG_CONTENT "${VTK_TARGETS_DEBUG_CONTENT}")
- # string(REPLACE "lib/../vtkxdmf3.lib" "lib/vtkxdmf3.lib" VTK_TARGETS_DEBUG_CONTENT "${VTK_TARGETS_DEBUG_CONTENT}")
- # string(REPLACE "bin/../vtkxdmf3.dll" "bin/vtkxdmf3.dll" VTK_TARGETS_DEBUG_CONTENT "${VTK_TARGETS_DEBUG_CONTENT}")
- # file(WRITE ${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets-debug.cmake "${VTK_TARGETS_DEBUG_CONTENT}")
-# endif()
-# =============================================================================
-# Remove other files and directories that are not valid for vcpkg
-# if(VTK_WITH_ALL_MODULES)
- # file(REMOVE ${CURRENT_PACKAGES_DIR}/XdmfConfig.cmake)
- # file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/XdmfConfig.cmake)
-# endif()
-
# =============================================================================
# Clean-up other directories
-
# Delete the debug binary TOOL_NAME that is not required
function(_vtk_remove_debug_tool TOOL_NAME)
- set(filename ${CURRENT_PACKAGES_DIR}/debug/bin/${TOOL_NAME}${VCPKG_TARGET_EXECUTABLE_SUFFIX})
- if(EXISTS ${filename})
- file(REMOVE ${filename})
+ set(filename "${CURRENT_PACKAGES_DIR}/debug/bin/${TOOL_NAME}${VCPKG_TARGET_EXECUTABLE_SUFFIX}")
+ if(EXISTS "${filename}")
+ file(REMOVE "${filename}")
endif()
- set(filename ${CURRENT_PACKAGES_DIR}/debug/bin/${TOOL_NAME}d${VCPKG_TARGET_EXECUTABLE_SUFFIX})
- if(EXISTS ${filename})
- file(REMOVE ${filename})
+ set(filename "${CURRENT_PACKAGES_DIR}/debug/bin/${TOOL_NAME}d${VCPKG_TARGET_EXECUTABLE_SUFFIX}")
+ if(EXISTS "${filename}")
+ file(REMOVE "${filename}")
endif()
if (NOT VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL debug)
# we also have to bend the lines referencing the tools in VTKTargets-debug.cmake
@@ -251,9 +218,9 @@ endfunction()
# Move the release binary TOOL_NAME from bin to tools
function(_vtk_move_release_tool TOOL_NAME)
set(old_filename "${CURRENT_PACKAGES_DIR}/bin/${TOOL_NAME}${VCPKG_TARGET_EXECUTABLE_SUFFIX}")
- if(EXISTS ${old_filename})
- file(INSTALL ${old_filename} DESTINATION "${CURRENT_PACKAGES_DIR}/tools/vtk" USE_SOURCE_PERMISSIONS)
- file(REMOVE ${old_filename})
+ if(EXISTS "${old_filename}")
+ file(INSTALL "${old_filename}" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/vtk" USE_SOURCE_PERMISSIONS)
+ file(REMOVE "${old_filename}")
endif()
if (NOT VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL release)
@@ -290,36 +257,31 @@ foreach(TOOL_NAME IN LISTS VTK_TOOLS)
endforeach()
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
- file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin)
- file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin)
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin"
+ "${CURRENT_PACKAGES_DIR}/debug/bin")
endif()
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/vtk")
## Files Modules needed by ParaView
if("paraview" IN_LIST FEATURES)
set(VTK_CMAKE_NEEDED vtkCompilerChecks vtkCompilerPlatformFlags vtkCompilerExtraFlags vtkInitializeBuildType
- vtkSupportMacros vtkDirectories vtkVersion FindPythonModules vtkModuleDebugging vtkExternalData)
+ vtkSupportMacros vtkVersion FindPythonModules vtkModuleDebugging vtkExternalData)
foreach(module ${VTK_CMAKE_NEEDED})
file(INSTALL "${SOURCE_PATH}/CMake/${module}.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/vtk")
endforeach()
## Check List on UPDATE !!
file(INSTALL "${SOURCE_PATH}/CMake/vtkRequireLargeFilesSupport.cxx" DESTINATION "${CURRENT_PACKAGES_DIR}/share/vtk")
+ file(INSTALL "${SOURCE_PATH}/Rendering/Volume/vtkBlockSortHelper.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}") # this should get installed by VTK
+ file(INSTALL "${SOURCE_PATH}/Filters/ParallelDIY2/vtkDIYKdTreeUtilities.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}")
+ file(INSTALL "${SOURCE_PATH}/Parallel/DIY/vtkDIYUtilities.txx" DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}")
- file(INSTALL "${SOURCE_PATH}/GUISupport/Qt/QVTKOpenGLWidget.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}") # Legacy header
-
- file(INSTALL "${SOURCE_PATH}/Common/Core/vtkRange.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}") # this should get installed by VTK
- file(INSTALL "${SOURCE_PATH}/Common/Core/vtkRangeIterableTraits.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}") # this should get installed by VTK
- file(INSTALL "${SOURCE_PATH}/Common/DataModel/vtkCompositeDataSetNodeReference.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}") # this should get installed by VTK
- #ParaView requires some internal headers
- file(INSTALL "${SOURCE_PATH}/Rendering/Annotation/vtkScalarBarActorInternal.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}")
- file(INSTALL "${SOURCE_PATH}/Filters/Statistics/vtkStatisticsAlgorithmPrivate.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}")
- file(INSTALL "${SOURCE_PATH}/Rendering/OpenGL2/vtkCompositePolyDataMapper2Internal.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}")
file(INSTALL "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/Rendering/OpenGL2/vtkTextureObjectVS.h" DESTINATION "${CURRENT_PACKAGES_DIR}/include/vtk-${VTK_SHORT_VERSION}")
+
endif()
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
@@ -346,4 +308,4 @@ endforeach()
# =============================================================================
# Handle copyright
-file(INSTALL ${SOURCE_PATH}/Copyright.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
+file(INSTALL "${SOURCE_PATH}/Copyright.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME "copyright")
diff --git a/ports/vtk/vcpkg.json b/ports/vtk/vcpkg.json
new file mode 100644
index 000000000..725ace01d
--- /dev/null
+++ b/ports/vtk/vcpkg.json
@@ -0,0 +1,174 @@
+{
+ "name": "vtk",
+ "version-semver": "9.0.3-pv5.9.1",
+ "description": "Software system for 3D computer graphics, image processing, and visualization",
+ "homepage": "https://github.com/Kitware/VTK",
+ "dependencies": [
+ "double-conversion",
+ "eigen3",
+ "expat",
+ "freetype",
+ "glew",
+ {
+ "name": "hdf5",
+ "default-features": false
+ },
+ "jsoncpp",
+ {
+ "name": "libharu",
+ "features": [
+ "notiffsymbols"
+ ]
+ },
+ "libjpeg-turbo",
+ "liblzma",
+ "libogg",
+ "libpng",
+ "libtheora",
+ "libxml2",
+ "lz4",
+ "netcdf-c",
+ "pegtl-2",
+ "proj4",
+ "pugixml",
+ "sqlite3",
+ "tiff",
+ "utfcpp",
+ "zlib"
+ ],
+ "features": {
+ "all": {
+ "description": "Build all vtk modules",
+ "dependencies": [
+ "ffmpeg",
+ "gdal",
+ "libmysql",
+ {
+ "name": "vtk",
+ "default-features": false,
+ "features": [
+ "mpi",
+ "python",
+ "qt"
+ ]
+ },
+ {
+ "name": "vtk",
+ "default-features": false,
+ "features": [
+ "atlmfc",
+ "utf8"
+ ],
+ "platform": "windows"
+ }
+ ]
+ },
+ "atlmfc": {
+ "description": "Mfc functionality for vtk on Windows",
+ "dependencies": [
+ {
+ "name": "atlmfc",
+ "platform": "windows"
+ }
+ ]
+ },
+ "cuda": {
+ "description": "Support CUDA compilation",
+ "dependencies": [
+ "cuda"
+ ]
+ },
+ "mpi": {
+ "description": "MPI functionality for VTK",
+ "dependencies": [
+ {
+ "name": "hdf5",
+ "default-features": false,
+ "features": [
+ "parallel"
+ ]
+ },
+ "mpi",
+ {
+ "name": "vtk-m",
+ "default-features": false,
+ "features": [
+ "mpi"
+ ]
+ }
+ ]
+ },
+ "opengl": {
+ "description": "All opengl related modules",
+ "dependencies": [
+ {
+ "name": "vtk",
+ "default-features": false
+ }
+ ]
+ },
+ "openvr": {
+ "description": "OpenVR functionality for VTK",
+ "dependencies": [
+ "openvr",
+ "sdl2"
+ ]
+ },
+ "paraview": {
+ "description": "Build vtk modules required by paraview",
+ "dependencies": [
+ {
+ "name": "vtk",
+ "default-features": false,
+ "features": [
+ "qt"
+ ]
+ },
+ {
+ "name": "vtk",
+ "default-features": false,
+ "features": [
+ "atlmfc"
+ ],
+ "platform": "windows"
+ }
+ ]
+ },
+ "python": {
+ "description": "Python functionality for VTK",
+ "dependencies": [
+ "python3"
+ ]
+ },
+ "qt": {
+ "description": "Qt functionality for VTK",
+ "dependencies": [
+ "qt5-imageformats",
+ "qt5-tools",
+ {
+ "name": "qt5-x11extras",
+ "platform": "linux"
+ },
+ "qt5-xmlpatterns"
+ ]
+ },
+ "utf8": {
+ "description": "Enables vtk reader/writer with utf-8 path support",
+ "dependencies": [
+ {
+ "name": "vtk",
+ "default-features": false
+ }
+ ]
+ },
+ "vtkm": {
+ "description": "Build with vtk-m accelerator and module.",
+ "dependencies": [
+ {
+ "name": "vtk-m",
+ "default-features": false
+ }
+ ]
+ }
+ }
+}
diff --git a/ports/vtk/vtkm.patch b/ports/vtk/vtkm.patch
index 27b7f4094..72c8ce2bd 100644
--- a/ports/vtk/vtkm.patch
+++ b/ports/vtk/vtkm.patch
@@ -1,63 +1,110 @@
-diff --git a/Accelerators/Vtkm/CMakeLists.txt b/Accelerators/Vtkm/CMakeLists.txt
-index 4297575bd..643df6fd5 100644
---- a/Accelerators/Vtkm/CMakeLists.txt
-+++ b/Accelerators/Vtkm/CMakeLists.txt
-@@ -14,8 +14,10 @@
+diff --git a/Accelerators/Vtkm/Core/CMakeLists.txt b/Accelerators/Vtkm/Core/CMakeLists.txt
+index b889a771f..317d83f75 100644
+--- a/Accelerators/Vtkm/Core/CMakeLists.txt
++++ b/Accelerators/Vtkm/Core/CMakeLists.txt
+@@ -14,8 +14,9 @@
+ ##
+ ##=============================================================================
+
+-list(INSERT 0 CMAKE_MODULE_PATH
+- "${VTK_SOURCE_DIR}/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake")
++find_package(VTKm CONFIG REQUIRED)
++#list(INSERT 0 CMAKE_MODULE_PATH
++# "${VTK_SOURCE_DIR}/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake")
+
+ set(private_headers
+ vtkmlib/DataArrayConverters.hxx
+@@ -77,9 +78,9 @@ vtkm_add_target_information(${vtkm_accel_target}
+ MODIFY_CUDA_FLAGS
+ DEVICE_SOURCES ${sources})
+
+-vtk_module_set_property(VTK::AcceleratorsVTKmCore
+- PROPERTY JOB_POOL_COMPILE
+- VALUE vtkm_pool)
++#vtk_module_set_property(VTK::AcceleratorsVTKmCore
++# PROPERTY JOB_POOL_COMPILE
++# VALUE vtkm_pool)
+
+ if (TARGET vtkm::cuda)
+ vtk_module_set_property(VTK::AcceleratorsVTKmCore
+diff --git a/Accelerators/Vtkm/DataModel/CMakeLists.txt b/Accelerators/Vtkm/DataModel/CMakeLists.txt
+index 56307be8d..30fff98e8 100644
+--- a/Accelerators/Vtkm/DataModel/CMakeLists.txt
++++ b/Accelerators/Vtkm/DataModel/CMakeLists.txt
+@@ -14,8 +14,9 @@
##
##=============================================================================
-list(INSERT 0 CMAKE_MODULE_PATH
- "${VTK_SOURCE_DIR}/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake")
+find_package(VTKm CONFIG REQUIRED)
-+
+#list(INSERT 0 CMAKE_MODULE_PATH
+# "${VTK_SOURCE_DIR}/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake")
set(sources
vtkmlib/ArrayConvertersReal.cxx
-diff --git a/Accelerators/Vtkm/CMakeLists.txt b/Accelerators/Vtkm/CMakeLists.txt
-index a01a6bda3..889c87ebb 100644
---- a/Accelerators/Vtkm/CMakeLists.txt
-+++ b/Accelerators/Vtkm/CMakeLists.txt
-@@ -126,9 +126,9 @@ vtkm_add_target_information(${vtkm_accel_target}
+@@ -85,9 +86,9 @@ vtkm_add_target_information(${vtkm_accel_target}
MODIFY_CUDA_FLAGS
DEVICE_SOURCES ${sources})
--vtk_module_set_property(VTK::AcceleratorsVTKm
+-vtk_module_set_property(VTK::AcceleratorsVTKmDataModel
- PROPERTY JOB_POOL_COMPILE
- VALUE vtkm_pool)
-+#vtk_module_set_property(VTK::AcceleratorsVTKm
++#vtk_module_set_property(VTK::AcceleratorsVTKmDataModel
+# PROPERTY JOB_POOL_COMPILE
+# VALUE vtkm_pool)
- vtk_module_link(VTK::AcceleratorsVTKm
- PRIVATE
- vtkm_worklet
-diff --git a/CMake/FindVTKm.cmake b/CMake/FindVTKm.cmake
-new file mode 100644
-index 000000000..c0fe00c0e
---- /dev/null
-+++ b/CMake/FindVTKm.cmake
-@@ -0,0 +1 @@
+
+ if (TARGET vtkm::cuda)
+ vtk_module_set_property(VTK::AcceleratorsVTKmDataModel
+diff --git a/Accelerators/Vtkm/Filters/CMakeLists.txt b/Accelerators/Vtkm/Filters/CMakeLists.txt
+index 14e84f1dd..0a931285d 100644
+--- a/Accelerators/Vtkm/Filters/CMakeLists.txt
++++ b/Accelerators/Vtkm/Filters/CMakeLists.txt
+@@ -14,8 +14,9 @@
+ ##
+ ##=============================================================================
+
+-list(INSERT 0 CMAKE_MODULE_PATH
+- "${VTK_SOURCE_DIR}/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake")
+find_package(VTKm CONFIG REQUIRED)
-\ No newline at end of file
-diff --git a/CMake/vtkCompilerPlatformFlags.cmake b/CMake/vtkCompilerPlatformFlags.cmake
-index b0bdba1e6..69c570a25 100644
---- a/CMake/vtkCompilerPlatformFlags.cmake
-+++ b/CMake/vtkCompilerPlatformFlags.cmake
-@@ -107,7 +107,7 @@ if(MSVC)
- if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]")
- STRING(REGEX REPLACE "/W[0-4]" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
- else()
-- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4")
-+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4 /bigobj")
- endif()
- endif()
++#list(INSERT 0 CMAKE_MODULE_PATH
++# "${VTK_SOURCE_DIR}/ThirdParty/vtkm/vtkvtkm/vtk-m/CMake")
+
+ set(impl_classes
+ vtkmAverageToCells
+@@ -80,9 +81,9 @@ vtkm_add_target_information(${vtkm_accel_target}
+ MODIFY_CUDA_FLAGS
+ DEVICE_SOURCES ${sources})
+-vtk_module_set_property(VTK::AcceleratorsVTKmFilters
+- PROPERTY JOB_POOL_COMPILE
+- VALUE vtkm_pool)
++#vtk_module_set_property(VTK::AcceleratorsVTKmFilters
++# PROPERTY JOB_POOL_COMPILE
++# VALUE vtkm_pool)
+ vtk_module_link(VTK::AcceleratorsVTKmFilters
+ PRIVATE
+ vtkm_worklet
+diff --git a/CMake/vtk-config.cmake.in b/CMake/vtk-config.cmake.in
+index 5a5e8b8df..96413875f 100644
+--- a/CMake/vtk-config.cmake.in
++++ b/CMake/vtk-config.cmake.in
+@@ -121,9 +121,7 @@ set("${CMAKE_FIND_PACKAGE_NAME}_AVAILABLE_COMPONENTS" "@vtk_all_components@")
+ unset("${CMAKE_FIND_PACKAGE_NAME}_FOUND")
+ set("${CMAKE_FIND_PACKAGE_NAME}_HAS_VTKm" "@vtk_has_vtkm@")
+ if (${CMAKE_FIND_PACKAGE_NAME}_HAS_VTKm)
+- find_package(VTKm
+- PATHS "${CMAKE_CURRENT_LIST_DIR}/vtkm"
+- NO_DEFAULT_PATH)
++ find_package(VTKm CONFIG REQUIRED)
+ if (NOT VTKm_FOUND)
+ set("${CMAKE_FIND_PACKAGE_NAME}_FOUND" 0)
+ endif ()
diff --git a/ThirdParty/vtkm/CMakeLists.txt b/ThirdParty/vtkm/CMakeLists.txt
-index 5817d42f8..bc5a33d93 100644
+index 5817d42f8..f21d17da8 100644
--- a/ThirdParty/vtkm/CMakeLists.txt
+++ b/ThirdParty/vtkm/CMakeLists.txt
-@@ -1,6 +1,47 @@
+@@ -1,6 +1,41 @@
-vtk_module_third_party_internal(
- LICENSE_FILES "vtkvtkm/vtk-m/LICENSE.txt"
- VERSION "master"
@@ -80,7 +127,6 @@ index 5817d42f8..bc5a33d93 100644
+ message(STATUS "INCLUDE: ${VTKm_INCLUDE_DIRS}")
+ get_target_property(VTKm_DIY_INCLUDE_DIRS vtkm_diy INTERFACE_INCLUDE_DIRECTORIES)
+ get_target_property(VTKm_OPTION_INCLUDE_DIRS vtkm_optionparser INTERFACE_INCLUDE_DIRECTORIES)
-+ get_target_property(VTKm_TAO_INCLUDE_DIRS vtkm_taotuple INTERFACE_INCLUDE_DIRECTORIES)
+ if(MSVC)
+ set(VTKm_DEFINITIONS /bigobj)
+ endif()
@@ -104,13 +150,9 @@ index 5817d42f8..bc5a33d93 100644
+ PACKAGE VTKm
+ TARGETS vtkm_cont vtkm_filter vtkm_diy vtkm_optionparser vtkm_taotuple
+ #LIBRARIES vtkm_cont vtkm_filter vtkm_diy vtkm_optionparser vtkm_taotuple
-+ INCLUDE_DIRS VTKm_INCLUDE_DIRS VTKm_DIY_INCLUDE_DIRS VTKm_OPTION_INCLUDE_DIRS VTKm_TAO_INCLUDE_DIRS)
-+# configure_file(
-+ # "${CMAKE_CURRENT_SOURCE_DIR}/vtk_utf8.h.in"
-+ # "${CMAKE_CURRENT_BINARY_DIR}/vtk_utf8.h")
-+
-+# vtk_module_install_headers(
-+ # FILES "${CMAKE_CURRENT_BINARY_DIR}/vtk_utf8.h")
++ INCLUDE_DIRS VTKm_INCLUDE_DIRS VTKm_DIY_INCLUDE_DIRS VTKm_OPTION_INCLUDE_DIRS
++)
+\ No newline at end of file
diff --git a/ThirdParty/vtkm/vtk.module b/ThirdParty/vtkm/vtk.module
index a8e4dad0f..c7bbbf0e8 100644
--- a/ThirdParty/vtkm/vtk.module
@@ -124,18 +166,3 @@ index a8e4dad0f..c7bbbf0e8 100644
+LIBRARY_NAME
+ VTKm
THIRD_PARTY
-diff --git a/CMake/vtk-config.cmake.in b/CMake/vtk-config.cmake.in
-index 1ecfde326..ae5576e66 100644
---- a/CMake/vtk-config.cmake.in
-+++ b/CMake/vtk-config.cmake.in
-@@ -114,9 +114,7 @@ set("${CMAKE_FIND_PACKAGE_NAME}_AVAILABLE_COMPONENTS" "@vtk_all_components@")
- unset("${CMAKE_FIND_PACKAGE_NAME}_FOUND")
- set("${CMAKE_FIND_PACKAGE_NAME}_HAS_VTKm" "@vtk_has_vtkm@")
- if (${CMAKE_FIND_PACKAGE_NAME}_HAS_VTKm)
-- find_package(VTKm
-- PATHS "${CMAKE_CURRENT_LIST_DIR}/vtkm"
-- NO_DEFAULT_PATH)
-+ find_package(VTKm CONFIG REQUIRED)
- if (NOT VTKm_FOUND)
- set("${CMAKE_FIND_PACKAGE_NAME}_FOUND" 0)
- endif ()