-
-
Notifications
You must be signed in to change notification settings - Fork 9
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
Rebuild for abseil_cpp20211102 #7
Rebuild for abseil_cpp20211102 #7
Conversation
…nda-forge-pinning 2022.02.15.14.05.09
Hi! This is the friendly automated conda-forge-linting service. I just wanted to let you know that I linted all conda-recipes in your PR ( |
@conda-forge-admin, please rerender |
number: 0 | ||
skip: true # [not linux] | ||
number: 1 | ||
skip: true # [win] |
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.
Hi! This is the friendly conda-forge automerge bot! I considered the following status checks when analyzing this PR:
Thus the PR was not passing and not merged. |
This comment was marked as outdated.
This comment was marked as outdated.
Ah, cool, I just wanted to link to the recent conda-forge discussion but it was you who asked on gitter :) |
😄 I'm just waiting on upstream and will otherwise just increment and test it. |
@conda-forge-admin, please rerender |
91ff606
to
6ce5eaa
Compare
…nda-forge-pinning 2022.02.17.15.32.38
…nda-forge-pinning 2022.02.17.15.32.38
…nda-forge-pinning 2022.02.17.15.32.38
…nda-forge-pinning 2022.02.17.15.32.38
@wolfv Would you mind having a look again? It's now the correct SDK but it's hitting an |
Also, I'm going to bot-rerun this before merging, just to get a clean git history. |
@wolfv Gentle ping here, if you have a sec. :) |
@wolfv Quick ping here :) |
maybe @Mizux has an idea? I think what changed is that we switched to C++ 17 on macOS? And another Abseil version? The error is
|
https://github.com/google/or-tools/blob/dd28bdf6e56f1d71dfc33a77657a99c69dc32efb/cmake/dependencies/CMakeLists.txt#L179 ? @wolfv did you try an BTW in or-tools we use my CoinOR forks which are CMake based build (when building coinor as static lib to ship a standalone ortools library) devNote: %grepc -RIin "CoinModel::addRow(int" *-src
coinutils-src/CoinUtils/src/CoinModel.cpp:717:void CoinModel::addRow(int numberInRow, const int *columns, EDIT: Maybe found the error with my last commit in FindCoinUtils.cmake |
The new abseil builds in conda-forge use C++17 on unix. Unfortunately, abseil is ABI-sensitive to the C++ standard version used to compile, and each consuming library needs to match that. See conda-forge/abseil-cpp-feedstock#29 |
Yeah this comes from @Mizux comment and the resulting discussion in: conda-forge/staged-recipes#16147 (comment) |
Have you tried setting |
No, but I am slightly hesitant to hard-code these things. Let me try though and see. |
Global C++ standard flags change very rarely. Or at the very least, the next jump to C++20 will probably still take a loooooong time, not least because clang is still far behind conformance (much less through the CWG/LWG issues) even on main (and all the compiler diffusion timelines that implies). GCC also hasn't buttoned up modules yet. And in this case, you should IMO be explicit rather than relying on CMake/compiler defaults, because the abseil-ABI forces you to match. |
…nda-forge-pinning 2022.03.10.08.54.06
FYI: For or-tools we are moving to c++20 because we have few designated initializers in struct so compilation should works with a gcc 8. IIRC gcc/g++ with -std=c++17 still manage to compile or-tools (with this C++20 feature) while Visual Studio is more pedantic and fail... |
OK, evidently this didn't work. 😑 The symbol collisions still seem to come from else-where (coin-or-clp & coin-or-cbc); maybe we'd need to compile those in C++17 too...? 🤔 |
That could make sense. Are you working on them anyways? Otherwise, I'd just rerender them and add that (Not a member there though) Edit: Just remembered that they're not CMake based so well need to adapt that. |
Well, it's working for Linux but I'm not sure if something is hardcoded somewhere in the conda-forge infrastructure. 😓 |
No it's not; there was some discussion in conda-forge/clang-compiler-activation-feedstock#17, but it's left to the feedstocks. Abseil is a bit special because the ABI changes based on the standard version, which is not usually what happens. |
Ahh ok, thanks for the pointers. From what I can see you're doing some stuff in the other feedstocks. I'll wait then for that ok? |
Just FYI in turn: using abseil with C++20 mode is subject to as-yet undetermined breakage: abseil/abseil-cpp#1127 |
Well in turn out that bazel is not compatible is any project that don't use the same C++ dialect for all of its sub-components (aka a project in C++14 and an other in C++17 may also break when trying to merge both in your super project build...), for Homebrew I manage to move "every packages" to C++17, it seems that or-tools is compilable with c++17 when using gcc (11?) or clang (13?) since they are not picky when using "designated initializers" so would suggest to replace lines |
Ok, thanks for investigating @Mizux. Just to be clear: Do you just want the two lines changed or something else as well? |
As we now have the new release, I'm going to re-run this so that we can get the new release out first and then try to enable OSX later. |
Due to the |
Well, currently we revert to C++17 the CMAKE_CXX_STANDARD otherwise it would imply to also bump abseil-cpp and all related projects (aka big bang). According to our CI it seems to pass even if there are some c++20 features in use 🤷 note: only VS2022 spot it and complained so if CMake detect MSVC generator it will set CXX_STANDARD to 20 otherwise it will stick to 17 like before. |
This PR has been triggered in an effort to update abseil_cpp20211102.
Notes and instructions for merging this PR:
Please note that if you close this PR we presume that the feedstock has been rebuilt, so if you are going to perform the rebuild yourself don't close this PR until the your rebuild has been merged.
If this PR was opened in error or needs to be updated please add the
bot-rerun
label to this PR. The bot will close this PR and schedule another one. If you do not have permissions to add this label, you can use the phrase@conda-forge-admin, please rerun bot
in a PR comment to have theconda-forge-admin
add it for you.This PR was created by the regro-cf-autotick-bot. The regro-cf-autotick-bot is a service to automatically track the dependency graph, migrate packages, and propose package version updates for conda-forge. Feel free to drop us a line if there are any issues! This PR was generated by https://github.com/regro/autotick-bot/actions/runs/1847610558, please use this URL for debugging.