Replies: 1 comment
-
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
In this post I will be describing the current process of building VTK wheels and its limitation.
VTK is the Visualization ToolKit, to learn more see https://docs.vtk.org/en/latest/about.html
I am looking forward to get input on how to streamline the process and potentially leverage scikit-build-core, inform its design and/or learn about existing tools/approach to help simplify.
cc: @henryiii
Current process
The content below provides details related to https://docs.vtk.org/en/latest/advanced/build_python_wheels.html
As of Kitware/VTK@ba70d091, the process for building VTK wheels involves the following steps1:
During the configure process if
VTK_WHEEL_BUILD
isON
, it includes:vtkWheelPreparation.cmake
2wheel_extract_platlib.py
3 to compute the name of the plat lib directory "usually" expected bysetuptools/distutils
setup.py
andMANIFEST.in
in the VTK build directoryvtkWheelFinalization.cmake
4vtk_features.py
Once the build is completed, the CI workflow calls
python setup.py bdist_wheel
and platform specific tools:auditwheel
on Linux. See.gitlab/os-linux.yml
5delocate
used to be called on macOS but since it was not able to deal with the structure/layout of VTK, handling of@rpath
is now done explicitly, see.gitlab/os-macos.yml
6delvewheel
. See.gitlab/os-windows.yml
7Limitations
setup.py
andMANIFEST.in
setup.py
to build the wheelsdistutils
inwheel_extract_platlib.py
3Footnotes
https://docs.vtk.org/en/latest/advanced/build_python_wheels.html ↩
https://github.com/Kitware/VTK/blob/ba70d0912615cc10a69789541f949ec170572902/CMake/vtkWheelPreparation.cmake ↩
https://github.com/Kitware/VTK/blob/ba70d0912615cc10a69789541f949ec170572902/CMake/wheel_extract_platlib.py ↩ ↩2
https://github.com/Kitware/VTK/blob/ba70d0912615cc10a69789541f949ec170572902/CMake/vtkWheelFinalization.cmake ↩
https://github.com/Kitware/VTK/blob/8f07f83261608c15dc700b29dcb45369e5b87c86/.gitlab/os-linux.yml#L461-L466 ↩
https://github.com/Kitware/VTK/blob/8f07f83261608c15dc700b29dcb45369e5b87c86/.gitlab/os-macos.yml#L245-L253 ↩
https://github.com/Kitware/VTK/blob/8f07f83261608c15dc700b29dcb45369e5b87c86/.gitlab/os-windows.yml#L312-L317 ↩
Beta Was this translation helpful? Give feedback.
All reactions