conan-io / conan-center-index

Recipes for the ConanCenter repository
https://conan.io/center
MIT License
963 stars 1.77k forks source link

[qt] 6.x.x uses CMake as tool_requires #19996

Open mrjoel opened 1 year ago

mrjoel commented 1 year ago

Description

The Qt 6.x.x conanfile.py uses CMake as a tool_requires: https://github.com/conan-io/conan-center-index/blob/master/recipes/qt/6.x.x/conanfile.py#L376.

However, according to https://github.com/conan-io/conan-center-index/blob/master/docs/faqs.md#why-recipes-that-use-build-tools-like-cmake-that-have-packages-in-conan-center-do-not-use-it-as-a-build-require-by-default it should be considered as a standard build system tool and not required to be listed specifically (or have a Conan package tool_requires dependency).

Package and Environment Details

N/A

Conan profile

N/A

Steps to reproduce

N/A

Logs

N/A

SpaceIm commented 1 year ago

conancenter considers CMake as a standard tool installed on build machine of consumers, but not if CMake min required version of upstream CMakeLists is greater than 3.15, which is the case for Qt6.

Actually, since it is now possible for users to always prevent some build requirements by defining them in [system_tools] of their profile, I think that we should always add cmake to build requirements even if min CMake version is lower than 3.15

samuel-emrys commented 1 year ago

Actually, since it is now possible for users to always prevent some build requirements by defining them in [system_tools] of their profile, I think that we should always add cmake to build requirements even if min CMake version is lower than 3.15

This would also save us from modifying recipes trivially just to add this because we don't have the same environmental assumptions about build tool presence on build agents.

SpaceIm commented 1 year ago

A proposal for conancenter could be: