-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
abseil: fix build in environments without CMake #22539
Conversation
🤖 Beep Boop! This pull request is making changes to 'recipes/abseil//'. 👋 @Hopobcn you might be interested. 😉 |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Conan v1 pipeline ✔️All green in build 3 (
Conan v2 pipeline ✔️
All green in build 3 (
|
I detected other pull requests that are modifying abseil/all recipe: This message is automatically generated by https://github.com/ericLemanissier/conan-center-conflicting-prs so don't hesitate to report issues/improvements there. |
Abseil requires CMake v3.10 (https://github.com/abseil/abseil-cpp/blob/20240116.1/CMakeLists.txt#L19). We generally don't add CMake as a tool_requires unless v3.16 or newer is needed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello @Artalus! Thank you for submitting your PR, but having CMake installed is something expected already by CCI: https://github.com/conan-io/conan-center-index/blob/master/docs/developing_recipes_locally.md#setup-your-environment
In case we follow your idea, then any recipe in CCI using CMake should have it listed as tool requirement too ...
The CI service in CCI has CMake 3.15 installed due Conan 2.x design: https://github.com/conan-io/tribe/blob/a36de8dd33852f43091e9f5eb5a7ad83618089f2/design/004-tools-cmake.md?plain=1#L2
For those projects that need a new version, then we list CMake as tool requirement to install a newer version. This is not the case for Abseil, it uses CMake 3.10: https://github.com/abseil/abseil-cpp/blob/master/CMakeLists.txt#L19
If don't have CMake installed in your environment and want to use Conan to install it, I would recommend configuring it directly in your profile instead: https://docs.conan.io/2/reference/config_files/profiles.html#tool-requires
Cheers for such a detailed explanation! Being able to declare I might argue that if a package depends on buildtool X that is easily available from Conan, it should declare one as such - esp. since CMake now climbed upon a track of slowly shedding off some of its legacy components. But this would be a large change in CCI policies outside the scope of this PR :) I guess we can safely close it then 👍 |
@Artalus Thank you for understanding! Indeed other build tools we still need to list, like meson, but because CMake is used largely in ConanCenterIndex and most adopted. |
Specify library name and version: abseil/X
abseil
requires CMake to be built, but does it without respect 🙂