[Bug 262109] Mk/Uses/python.mk: Improve CMake/Python integration

From: <bugzilla-noreply_at_freebsd.org>
Date: Wed, 23 Feb 2022 22:15:01 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=262109

--- Comment #4 from John Hein <jcfyecrayz@liamekaens.com> ---
(In reply to Kubilay Kocak from comment #3)
No, I am not aware of anything.  The FindPython{2,3,}.cmake modules use
different hint variables.  And the CMakeLists.txt file in a particular software
package could use any of them.

In the case of graphics/libjxl, for instance, it conditionally uses any of them
depending on what it dynamically sees in the shebang header for a2x.

In the case of multimedia/onevpl, it uses FindPython{Interp,Libs}.cmake (which
wants the Python_ADDITIONAL_VERSIONS knob or FindPython.cmake (wants
Python_EXECUTABLE) conditionally depending on detected cmake version.  And it
expresses a preference for python3 by using FindPython3.cmake as a hint before
trying the others.

The modules that cmake bundles do a poor job of enforcing any sort of
consistency.  It's just a fact of life for that tool.  And it _can_ change in a
later version of cmake without careful consideration for backward
compatibility.  Some of the main tool core features have a somewhat rigorous
feature compatibility infrastructure, but many of the bundled modules are not
nearly as well... considered.

-- 
You are receiving this mail because:
You are on the CC list for the bug.