diff options
| author | Dominik Holland <dominik.holland@qt.io> | 2023-12-20 14:25:54 +0100 |
|---|---|---|
| committer | Dominik Holland <dominik.holland@qt.io> | 2023-12-21 13:00:37 +0100 |
| commit | ddfc84ca39bb3e61731221e88e764bcc02a9997d (patch) | |
| tree | 971c70bebfba0df5db59a58c54f5c69462c2381c /cmake/QtInterfaceFrameworkSetup.cmake | |
| parent | c2554841ee03f581c5b7be29e2b55ceff3fa95cc (diff) | |
Fix python3 package detection to also work with older python versions
The fix for python 3.11 doesn't work with python versions before 3.8
Pick-to: 6.7 6.6 6.5
Change-Id: Ibc4ea2e4da374110eeffb769c716084c1bdeb828
Reviewed-by: Robert Griebl <robert.griebl@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'cmake/QtInterfaceFrameworkSetup.cmake')
| -rw-r--r-- | cmake/QtInterfaceFrameworkSetup.cmake | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/cmake/QtInterfaceFrameworkSetup.cmake b/cmake/QtInterfaceFrameworkSetup.cmake index 74709c5b..38d88c65 100644 --- a/cmake/QtInterfaceFrameworkSetup.cmake +++ b/cmake/QtInterfaceFrameworkSetup.cmake @@ -12,11 +12,19 @@ function(qt_config_python3_package_test name) message(STATUS "Performing Test ${arg_LABEL}") - execute_process(COMMAND ${Python3_EXECUTABLE} "-c" "from importlib.metadata import version; print(version(\"${arg_PACKAGE}\"))" - RESULT_VARIABLE ${name}_RESULT - OUTPUT_VARIABLE ${name}_VERSION - ERROR_QUIET - ) + if (Python3_VERSION VERSION_LESS "3.8") + execute_process(COMMAND ${Python3_EXECUTABLE} "-c" "import pkg_resources; print(pkg_resources.get_distribution(\"${arg_PACKAGE}\").version)" + RESULT_VARIABLE ${name}_RESULT + OUTPUT_VARIABLE ${name}_VERSION + ERROR_QUIET + ) + else() + execute_process(COMMAND ${Python3_EXECUTABLE} "-c" "import importlib.metadata; print(importlib.metadata.version(\"${arg_PACKAGE}\"))" + RESULT_VARIABLE ${name}_RESULT + OUTPUT_VARIABLE ${name}_VERSION + ERROR_QUIET + ) + endif() set(HAVE_${name} FALSE) set(status_label "Failed") |
