conda-forge / vtk-feedstock

A conda-smithy repository for vtk.
BSD 3-Clause "New" or "Revised" License
13 stars 64 forks source link

Update for cdat #100

Closed muryanto1 closed 4 years ago

muryanto1 commented 4 years ago

Checklist

conda-forge-linter commented 4 years ago

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

xylar commented 4 years ago

@muryanto1, it might be worth adding yourself as a maintainer and also explaining to the current maintainers what the special requirements are of CDAT that the current VTK package doesn't support.

grlee77 commented 4 years ago

This PR is to make VTK have the necessary features for the following library: CDAT?

muryanto1 commented 4 years ago

This PR is to make VTK have the necessary features for the following library: CDAT?

Correct, CDAT (https://cdat.llnl.gov) needs additional modules to be able to do vcs plots. (https://github.com/cdat/vcs is using vtk). Though the build passed, I am actually not done with this PR yet. We need to build with both VTK_WITH_OSMESA set to True and False, but it does not look like the variant files for VTK_WITH_OSMESA set to True are generated. I actually tried the 'conda smithy rerender' locally on my mac, and I can see the rerender generates this for osx: $ ls .ci_support/osx*yaml .ci_support/osx_VTK_WITH_OSMESAFalsepython2.7.yaml .ci_support/osx_VTK_WITH_OSMESAFalsepython3.6.yaml .ci_support/osx_VTK_WITH_OSMESAFalsepython3.7.yaml .ci_support/osx_VTK_WITH_OSMESAFalsepython3.8.yaml .ci_support/osx_VTK_WITH_OSMESATruepython2.7.yaml .ci_support/osx_VTK_WITH_OSMESATruepython3.6.yaml .ci_support/osx_VTK_WITH_OSMESATruepython3.7.yaml .ci_support/osx_VTK_WITH_OSMESATruepython3.8.yaml

similarly for linux*. Any advice? Thanks.

@xylar sure, I will add myself as a maintainer.

grlee77 commented 4 years ago

@conda-forge-admin, please rerender

grlee77 commented 4 years ago

Hi @muryanto1, I just asked the bot to rerender here and it looks like those are being generated now?

The command above should be equivalent to if you had run conda-smithy rerender --commit locally and then pushing the new commit to this branch. It is easier to just have the bot do it, though!

grlee77 commented 4 years ago

It looks like this is close now. The only failures seem to be with OSMESA=True on linux where it fails to find some OpenGL stuff (maybe some additional CDT is needed? I am not very familiar with OpenGL).

[1548/8473] $BUILD_PREFIX/bin/x86_64-conda_cos6-linux-gnu-c++  -DVTK_IN_VTK -DvtkRenderingOpenGL2_EXPORTS -IRendering/OpenGL2 -I../Rendering/OpenGL2 -ICommon/Core -I../Common/Core -IUtilities/KWIML -I../Utilities/KWIML -IUtilities/KWSys -I../Utilities/KWSys -IThirdParty/utf8 -I../ThirdParty/utf8 -ICommon/DataModel -I../Common/DataModel -ICommon/Math -I../Common/Math -ICommon/Misc -I../Common/Misc -ICommon/System -I../Common/System -ICommon/Transforms -I../Common/Transforms -ICommon/ExecutionModel -I../Common/ExecutionModel -IRendering/Core -I../Rendering/Core -ICommon/Color -I../Common/Color -ICommon/ComputationalGeometry -I../Common/ComputationalGeometry -IFilters/Core -I../Filters/Core -IFilters/General -I../Filters/General -IFilters/Geometry -I../Filters/Geometry -IFilters/Sources -I../Filters/Sources -IThirdParty/glew -I../ThirdParty/glew -fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem $PREFIX/include -fdebug-prefix-map=$SRC_DIR=/usr/local/src/conda/vtk-8.2.0 -fdebug-prefix-map=$PREFIX=/usr/local/src/conda-prefix  -O3 -DNDEBUG -fPIC -fvisibility=hidden   -std=c++11 -MD -MT Rendering/OpenGL2/CMakeFiles/vtkRenderingOpenGL2.dir/vtkXOpenGLRenderWindow.cxx.o -MF Rendering/OpenGL2/CMakeFiles/vtkRenderingOpenGL2.dir/vtkXOpenGLRenderWindow.cxx.o.d -o Rendering/OpenGL2/CMakeFiles/vtkRenderingOpenGL2.dir/vtkXOpenGLRenderWindow.cxx.o -c ../Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx
FAILED: Rendering/OpenGL2/CMakeFiles/vtkRenderingOpenGL2.dir/vtkXOpenGLRenderWindow.cxx.o 
$BUILD_PREFIX/bin/x86_64-conda_cos6-linux-gnu-c++  -DVTK_IN_VTK -DvtkRenderingOpenGL2_EXPORTS -IRendering/OpenGL2 -I../Rendering/OpenGL2 -ICommon/Core -I../Common/Core -IUtilities/KWIML -I../Utilities/KWIML -IUtilities/KWSys -I../Utilities/KWSys -IThirdParty/utf8 -I../ThirdParty/utf8 -ICommon/DataModel -I../Common/DataModel -ICommon/Math -I../Common/Math -ICommon/Misc -I../Common/Misc -ICommon/System -I../Common/System -ICommon/Transforms -I../Common/Transforms -ICommon/ExecutionModel -I../Common/ExecutionModel -IRendering/Core -I../Rendering/Core -ICommon/Color -I../Common/Color -ICommon/ComputationalGeometry -I../Common/ComputationalGeometry -IFilters/Core -I../Filters/Core -IFilters/General -I../Filters/General -IFilters/Geometry -I../Filters/Geometry -IFilters/Sources -I../Filters/Sources -IThirdParty/glew -I../ThirdParty/glew -fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem $PREFIX/include -fdebug-prefix-map=$SRC_DIR=/usr/local/src/conda/vtk-8.2.0 -fdebug-prefix-map=$PREFIX=/usr/local/src/conda-prefix  -O3 -DNDEBUG -fPIC -fvisibility=hidden   -std=c++11 -MD -MT Rendering/OpenGL2/CMakeFiles/vtkRenderingOpenGL2.dir/vtkXOpenGLRenderWindow.cxx.o -MF Rendering/OpenGL2/CMakeFiles/vtkRenderingOpenGL2.dir/vtkXOpenGLRenderWindow.cxx.o.d -o Rendering/OpenGL2/CMakeFiles/vtkRenderingOpenGL2.dir/vtkXOpenGLRenderWindow.cxx.o -c ../Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx
../Rendering/OpenGL2/vtkXOpenGLRenderWindow.cxx:34:10: fatal error: GL/glx.h: No such file or directory
 #include "GL/glx.h"
          ^~~~~~~~~~
compilation terminated.
[1549/8473] $BUILD_PREFIX/bin/x86_64-conda_cos6-linux-gnu-c++  -DVTK_IN_VTK -IRendering/OpenGL2 -I../Rendering/OpenGL2 -ICommon/Core -I../Common/Core -IUtilities/KWIML -I../Utilities/KWIML -IUtilities/KWSys -I../Utilities/KWSys -IThirdParty/utf8 -I../ThirdParty/utf8 -ICommon/DataModel -I../Common/DataModel -ICommon/Math -I../Common/Math -ICommon/Misc -I../Common/Misc -ICommon/System -I../Common/System -ICommon/Transforms -I../Common/Transforms -ICommon/ExecutionModel -I../Common/ExecutionModel -IRendering/Core -I../Rendering/Core -ICommon/Color -I../Common/Color -ICommon/ComputationalGeometry -I../Common/ComputationalGeometry -IFilters/Core -I../Filters/Core -IFilters/General -I../Filters/General -IFilters/Geometry -I../Filters/Geometry -IFilters/Sources -I../Filters/Sources -IThirdParty/glew -I../ThirdParty/glew -fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem $PREFIX/include -fdebug-prefix-map=$SRC_DIR=/usr/local/src/conda/vtk-8.2.0 -fdebug-prefix-map=$PREFIX=/usr/local/src/conda-prefix  -O3 -DNDEBUG   -std=c++11 -MD -MT Rendering/OpenGL2/CMakeFiles/vtkProbeOpenGLVersion.dir/vtkProbeOpenGLVersion.cxx.o -MF Rendering/OpenGL2/CMakeFiles/vtkProbeOpenGLVersion.dir/vtkProbeOpenGLVersion.cxx.o.d -o Rendering/OpenGL2/CMakeFiles/vtkProbeOpenGLVersion.dir/vtkProbeOpenGLVersion.cxx.o -c ../Rendering/OpenGL2/vtkProbeOpenGLVersion.cxx
[1550/8473] $BUILD_PREFIX/bin/x86_64-conda_cos6-linux-gnu-c++  -DVTK_IN_VTK -DvtkRenderingOpenGL2_EXPORTS -IRendering/OpenGL2 -I../Rendering/OpenGL2 -ICommon/Core -I../Common/Core -IUtilities/KWIML -I../Utilities/KWIML -IUtilities/KWSys -I../Utilities/KWSys -IThirdParty/utf8 -I../ThirdParty/utf8 -ICommon/DataModel -I../Common/DataModel -ICommon/Math -I../Common/Math -ICommon/Misc -I../Common/Misc -ICommon/System -I../Common/System -ICommon/Transforms -I../Common/Transforms -ICommon/ExecutionModel -I../Common/ExecutionModel -IRendering/Core -I../Rendering/Core -ICommon/Color -I../Common/Color -ICommon/ComputationalGeometry -I../Common/ComputationalGeometry -IFilters/Core -I../Filters/Core -IFilters/General -I../Filters/General -IFilters/Geometry -I../Filters/Geometry -IFilters/Sources -I../Filters/Sources -IThirdParty/glew -I../ThirdParty/glew -fvisibility-inlines-hidden -std=c++17 -fmessage-length=0 -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem $PREFIX/include -fdebug-prefix-map=$SRC_DIR=/usr/local/src/conda/vtk-8.2.0 -fdebug-prefix-map=$PREFIX=/usr/local/src/conda-prefix  -O3 -DNDEBUG -fPIC -fvisibility=hidden   -std=c++11 -MD -MT Rendering/OpenGL2/CMakeFiles/vtkRenderingOpenGL2.dir/vtkXRenderWindowInteractor.cxx.o -MF Rendering/OpenGL2/CMakeFiles/vtkRenderingOpenGL2.dir/vtkXRenderWindowInteractor.cxx.o.d -o Rendering/OpenGL2/CMakeFiles/vtkRenderingOpenGL2.dir/vtkXRenderWindowInteractor.cxx.o -c ../Rendering/OpenGL2/vtkXRenderWindowInteractor.cxx
ninja: build stopped: subcommand failed.
muryanto1 commented 4 years ago

@grlee77 Thanks. @xylar pointed to me about this https://github.com/conda-forge/vtk-feedstock/pull/73 where it also ran into the libGL issue.

muryanto1 commented 4 years ago

After talking to @danlipsa from Kitware, cdat may not be able to use vtk built from this vtk-feedstock, because CDAT/vcs is getting later commits than what vtk-feedstock builds.

grlee77 commented 4 years ago

After talking to @danlipsa from Kitware, cdat may not be able to use vtk built from this vtk-feedstock, because CDAT/vcs is getting later commits than what vtk-feedstock builds.

I guess the question is whether CDAT/vcs intends to eventually rely on an official VTK release (even if that release is still pending). In that case it is probably worth making the changes here and you can eventually use this feedstock once the new release is finalized. It may also be worth doing in any case, independent of CDAT, if other projects may find these features useful.

muryanto1 commented 4 years ago

@grlee77 @xylar I am closing this PR. we decided not to take this approach. Thanks for the help.