-
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
folly: migrate to Conan v2 #21109
folly: migrate to Conan v2 #21109
Conversation
* bumpup to v20221031.00 * conan v2 support * only include needed boost components, not all the boost components, to avoid static link order issue in some cases. * remove cmake version limitation
…hecks pass, but default_cppstd is lower than minimal_cppstd
Co-authored-by: Chris Mc <[email protected]>
… min_cppstd, set min_cppstd if the compiler supports it
…t provide compiler.cppstd
Co-authored-by: Chris Mc <[email protected]>
Which in turn sets FOLLY_BOOST_LINK_STATIC, which ends up setting Boost_USE_STATIC_LIBS
Signed-off-by: Uilian Ries <[email protected]>
Signed-off-by: Uilian Ries <[email protected]>
Signed-off-by: Uilian Ries <[email protected]>
Signed-off-by: Uilian Ries <[email protected]>
This reverts commit 37a4502.
This comment has been minimized.
This comment has been minimized.
Signed-off-by: Uilian Ries <[email protected]>
This comment has been minimized.
This comment has been minimized.
Signed-off-by: Uilian Ries <[email protected]>
This comment has been minimized.
This comment has been minimized.
I did some important changes in this PR:
|
Excellent work, @uilianries. Thank you so much! I can't approve my own PR, of course, but all of the changes LGTM. |
This reverts commit 2eb919d.
@valgur Let's keep those specific versions for zstd and libuing to avoid conflicts:
|
This comment has been minimized.
This comment has been minimized.
Mac build logs (locally): Multiple profiles, but all them running in Mac M1 and Apple-Clang 15 folly-2024.08.12.00-mac-shared-intel.log |
Co-authored-by: Luis Caro Campos <[email protected]>
Conan v1 pipeline ✔️All green in build 25 (
Conan v2 pipeline ✔️
All green in build 25 (
|
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.
Thanks @uilianries and @valgur for fixing this! 🚀
if not self.dependencies["boost"].options.header_only: | ||
tc.cache_variables["BOOST_LINK_STATIC"] = not self.dependencies["boost"].options.shared | ||
|
||
tc.cache_variables["CMAKE_POLICY_DEFAULT_CMP0074"] = "NEW" # Honor Boost_ROOT set by boost recipe |
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.
this is duplicated but not worth a recompilation
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.
Agreed! Thank you for spotting!
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.
LGTM
* folly: bumpup version & conan v2 support * bumpup to v20221031.00 * conan v2 support * only include needed boost components, not all the boost components, to avoid static link order issue in some cases. * remove cmake version limitation * attach shell script for convenience * minor fix & fix lint warning * backport latest fix for generator expr * support conan-v1 cmake_find_package/cmake_find_package_multi generator * fix libunwind * bugfix: enable CMP0077 * fix issues on windows * More modernize * Handle stdc++fs * Bump zlib to 1.2.13 * Handle case where compiler.cppstd is not provided, compiler minimal checks pass, but default_cppstd is lower than minimal_cppstd * Revert CMAKE_POSITION_INDEPENDENT_CODE removal * Remove duplication in test_package * Prefer official release artifacts * Change patch_type of PR folly/pull/1433 from backport to portability * Bump libunwind requirement to 1.6.2 * Prune imports Co-authored-by: Chris Mc <[email protected]> * Instead of invalidating configuration if default_cppstd is lower than min_cppstd, set min_cppstd if the compiler supports it * Bump required openssl to openssl/1.1.1s * Remove default_cppstd checks and default to min_cppstd if user doesn't provide compiler.cppstd * Apply suggestions from code review Co-authored-by: Chris Mc <[email protected]> * Improve test_package * Add patch for missing limits include * Set BOOST_LINK_STATIC Which in turn sets FOLLY_BOOST_LINK_STATIC, which ends up setting Boost_USE_STATIC_LIBS * Set policy CMP0074 * Switch to f-strings * Make sure it uses cmake >= 3.13 * Folly 2022.01.31 & 2022.10.31 build on Macos armv8 * Disable windows * Revert "Folly 2022.01.31 & 2022.10.31 build on Macos armv8" This reverts commit 0f3fffe. * Fix conan2 version conflicts and provide trasitive_headers trait * Bump double-conversion to 3.2.1 * Remove cmake_new_enough * Remove folly/2019.10.21.00 * Declare openssl requirement with >=1.1 <4 version range * Remove 2019.10.21.00 from config.yml * Do not specify requires traits for now * Define test_type explicit * Add transitive_headers/transitive_libs to double-conversion * Add transitive traits to boost * Add more transitive_headers, transitive_libs - make boost, double-conversion, glog, libevent, fmt available to consumers * Add transitive_libs traits to lz4, zstd * Order imports * folly: drop v2020.08.10.00 * folly: bump deps * folly: do not set CMAKE_C_FLAGS directly * folly: add msvc version check * folly: use is_apple_os() * folly: keep only the newest version * folly: bump deps * folly: fix _cppstd_flag_value() * folly: simplify libatomic check * folly: simplify patching * folly: add v2023.12.18.00 * folly: fix ambiguity between package cmake target and libfolly cmake target * Add missing libfolly dependency * Do not allow static glog if building shared folly * Leave fixing recipe for macos for the future * Link only boost components specified in requirements * Refactor conan_deps.cmake * folly: bump deps, fix version conflicts * folly: add latest version, drop -g patch, fix missing include * folly: update min GCC version * folly: CMP0075 is set by project since 2019 * folly: use is_msvc_static_runtime() * folly: bump to v2024.07.08.00 * folly: drop v2022.10.31.00 Focus on getting the latest version working first. * folly: update min compiler versions * folly: workaround for CMAKE_PROJECT_folly_INCLUDE * folly: bump to v2024.07.15.00 * Follow official patch Signed-off-by: Uilian Ries <[email protected]> * Improve invalid conf messages Signed-off-by: Uilian Ries <[email protected]> * Remove folly custom find cmake files Signed-off-by: Uilian Ries <[email protected]> * Add version 2024.08.12.00 Signed-off-by: Uilian Ries <[email protected]> * Use cmake cache variables Signed-off-by: Uilian Ries <[email protected]> * Simplify test package Signed-off-by: Uilian Ries <[email protected]> * Remove folly version from tests Signed-off-by: Uilian Ries <[email protected]> * Require cmake 3.17 for conan_deps.cmake Signed-off-by: Uilian Ries <[email protected]> * Update dependencies versions Signed-off-by: Uilian Ries <[email protected]> * Exclude 2024.07.15.00 Signed-off-by: Uilian Ries <[email protected]> * Remove not used defines Signed-off-by: Uilian Ries <[email protected]> * Update boost modules based on headers Signed-off-by: Uilian Ries <[email protected]> * Solve version conflict Signed-off-by: Uilian Ries <[email protected]> * Fix required boost modules Signed-off-by: Uilian Ries <[email protected]> * Enable dependencies based on system Signed-off-by: Uilian Ries <[email protected]> * Avoid folly format due deprecation Signed-off-by: Uilian Ries <[email protected]> * Drop apple restriction Signed-off-by: Uilian Ries <[email protected]> * Drop Windows restriction Signed-off-by: Uilian Ries <[email protected]> * Drop sse4 option Signed-off-by: Uilian Ries <[email protected]> * Drop jemalloc Signed-off-by: Uilian Ries <[email protected]> * Skip apple clang <=13 Signed-off-by: Uilian Ries <[email protected]> * Enable shared build with Clang in Linux Signed-off-by: Uilian Ries <[email protected]> * Require Apple clang 14 Signed-off-by: Uilian Ries <[email protected]> * Drop glog restriction Signed-off-by: Uilian Ries <[email protected]> * Downgrade fmt to version 10.x due Windows Signed-off-by: Uilian Ries <[email protected]> * Add support for fmt-11 Signed-off-by: Uilian Ries <[email protected]> * Try to fix gflags check in msvc Signed-off-by: Uilian Ries <[email protected]> * Drop libaio dependency Signed-off-by: Uilian Ries <[email protected]> * Simplify cpp flag for windows Signed-off-by: Uilian Ries <[email protected]> * Avoid generating .pc file Signed-off-by: Uilian Ries <[email protected]> * Avoid using fmt-11 patch Signed-off-by: Uilian Ries <[email protected]> * Revert "Avoid using fmt-11 patch" This reverts commit 37a4502. * Downgrade fmt to 10 Signed-off-by: Uilian Ries <[email protected]> * remove patch from conandata Signed-off-by: Uilian Ries <[email protected]> * folly: use a version range for zstd, bump liburing * Revert "folly: use a version range for zstd, bump liburing" This reverts commit 2eb919d. * do not enforce cmake prefix path in deps.cmake Co-authored-by: Luis Caro Campos <[email protected]> * folly: remove a leftover comment in conan_deps.cmake --------- Signed-off-by: Uilian Ries <[email protected]> Co-authored-by: Xianda Ke <[email protected]> Co-authored-by: Pau Farre <[email protected]> Co-authored-by: Pau Farré <[email protected]> Co-authored-by: Chris Mc <[email protected]> Co-authored-by: Uilian Ries <[email protected]> Co-authored-by: Luis Caro Campos <[email protected]>
Continues from #15726.