Skip to content

Deprecate vtkconfigure.h

Ben Boeckel requested to merge ben.boeckel/vtk:deprecate-vtkconfigure.h into master

So this is a big change, but I feel it's only for the better. Dashboards are likely to be unhappy with this until I get a few cycles on configurations I'm not building locally.

Uncovered when !6657 (merged) landed and caused rebuilds of ParaView on any git change in the submodule. The first step is to split vtkConfigure.h into 10 headers that are then included as needed rather than having legacy option flipping affecting every class[1], SMP changes only cause SMP-using classes to recompile, etc.

Note that all Python and Java wrapping are still sensitive to any VTK_LEGACY_REMOVE changes, but we need to include vtkLegacy.h only if we need it to fix that. We'd need to have some backtracking in the file writing logic to support that. But it shouldn't care about your threading backend either now. @dgobbi

Longer term, we should convert #cmakedefine to #cmakedefine01 and #if rather than #ifdef to help track down missing includes causing bogus detection logic.

[1] Though this is true today anyways since vtkObjectBase has a deprecated method and vtkType has deprecated macros, once those are gone, only classes which care will be affected.

Cc: @robertmaynard @brad.king @utkarsh.ayachit @berkgeveci

Merge request reports