Package: dh-python Version: 4.20191017 Severity: normal libarcus and libsavitar from the 3dprinting team have the problem that the cmake jobs called from dh_auto_install use the wrong python version, note that 3.8 is used in the 3.7 install pass:
https://salsa.debian.org/3dprinting-team/libsavitar/-/jobs/515849#L935 olasd tracked the problem down to find_package(Python3) not working: I: pybuild base:217: dh_auto_configure --buildsystem=cmake --builddirectory="/builds/3dprinting-team/libsavitar/debian/output/libsavitar-4.4.1/.pybuild/cpython3_3.7/build" -- -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3.7 -DPYTHON_LIBRARY:FILEPATH=/usr/lib/python3.7/config-3.7m-x86_64-linux-gnu/libpython3.7m.so -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.7m ... -- Found Python3: /usr/bin/python3.8 (found suitable version "3.8.1", minimum required is "3.4") found components: Interpreter Development It looks like dh-python should include Python_EXECUTABLE: https://gitlab.kitware.com/cmake/cmake/commit/06d9e67fbd2b2dfc9cba12327866b2f73eab8a18 cmake variables are case-sensitive, afaict. (cmake maintainers are in Cc if they want to add something.) IRC log for reference: 20 12:07 <olasd> Myon: looks like pybuild's dh_auto_configure override for cmake passes old variables for cmake's python stuff (-DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3.7 -DPYTHON_LIBRARY:FILEPATH=/usr/lib/python3.7/config-3.7m-x86_64-linux-gnu/libpython3.7m.so -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.7m), but not the new ones (that are only supported since cmake 3.12) [...] 20 12:11 <olasd> pybuild defers to debhelper's cmake buildsystem 20 12:11 <olasd> maybe that calls make install 20 12:11 <olasd> (but the actual issue is at the configure step, the py3.7 build detects python3.8) 20 12:13 <Myon> it's still doing the 3.8 things in the 3.7 pass 20 12:13 <olasd> https://gitlab.kitware.com/cmake/cmake/issues/19492 20 12:13 <olasd> looks like what dh-python is trying to do is not possible anymore 20 12:13 <Myon> ah, good catch 20 12:13 <Myon> -- Found PythonInterp: /usr/bin/python3.7 (found suitable version "3.7.6", minimum required is "3.4") 20 12:13 <Myon> -- Found PythonLibs: /usr/lib/python3.7/config-3.7m-x86_64-linux-gnu/libpython3.7m.so (found suitable version "3.7.6", minimum required is "3.4") 20 12:13 <Myon> -- Found Python3: /usr/bin/python3.8 (found suitable version "3.8.1", minimum required is "3.4") found components: Interpreter Development 20 12:14 <olasd> or... 20 12:15 <olasd> ah, yes. dh-python/pybuild should set the new cmake Python_EXECUTABLE variable (https://gitlab.kitware.com/cmake/cmake/commit/06d9e67fbd2b2dfc9cba12327866b2f73eab8a18) Thanks, Christoph