Skip to content
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

Fix compilation with boost 1.78. #13165

Merged
merged 2 commits into from
Jan 4, 2022
Merged

Conversation

drwells
Copy link
Member

@drwells drwells commented Jan 4, 2022

Fixes #13037 - I can now compile the library with 1.78 on my desktop.

I bisected (fortunately Boost.Geometry a header-only library so adding the include directory sufficed) and
boostorg/geometry@6eb9e23 is where this problem starts for us. See also boostorg/geometry#792 - the easiest fix for all such issues is to just include the project header boost/geometry/geometry.hpp.

In this particular case, if you look at the commit which causes grid_tools.cc fails to compile, its because we were relying on some implicit includes. In particular, we need the distance header to find the distance between points and boxes.

I bisected (fortunately Boost.Geometry a header-only library so adding the
include directory sufficed) and
boostorg/geometry@6eb9e23
is where this problem starts for us. See also
boostorg/geometry#792 - the easiest fix for all such
issues is to just include the project header `boost/geometry/geometry.hpp`.

In this particular case, if you look at the commit which causes grid_tools.cc
fails to compile, its because we were relying on some implicit includes. In
particular, we need the distance header to find the distance between points and
boxes, but that was previously included in another file.
@tamiko
Copy link
Member

tamiko commented Jan 4, 2022

@drwells This is amazingly small fix! Would you mind reverting the CMake check for 1.77? I am verifying that deal.II builds against 1.77 as we speak.

@drwells
Copy link
Member Author

drwells commented Jan 4, 2022

I can add it to this PR, but you mentioned here

#12817 (comment)

that there is another problem with Boost.Math - this fix may not be sufficient to get things working with 1.77.

@drwells
Copy link
Member Author

drwells commented Jan 4, 2022

My hybrid Boost 1.78 and Boost.Geometry 1.77 setup avoids the distance problem so we can probably skip reverting 4e0698c.

@tamiko
Copy link
Member

tamiko commented Jan 4, 2022

@drwells Roger, let's leave for now but for the record: I was able to compile dealii 9.3.1 with this PR against boost 1.77. At least against boost 1.77 with a couple of patches...

@drwells
Copy link
Member Author

drwells commented Jan 4, 2022

To be clear, do you mean that we should remove b15edaa from this PR?

@tamiko tamiko merged commit 80285a1 into dealii:master Jan 4, 2022
@tamiko
Copy link
Member

tamiko commented Jan 4, 2022

@drwells I missed the fact that you added it. Let's keep the revert.

@bangerth
Copy link
Member

bangerth commented Jan 5, 2022

Do you want to propose this for backporting to the 9.3 branch?

@drwells drwells mentioned this pull request Jan 6, 2022
drwells added a commit to drwells/dealii that referenced this pull request Jan 11, 2022
bangerth added a commit that referenced this pull request Jan 11, 2022
ivweber pushed a commit to ivweber/dealii that referenced this pull request May 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Compatibility with Boost 1.77 and upcoming Boost 1.78
3 participants