Ensure proper setting for BOOST_NO_CXX98_FUNCTION_BASE control when building ecflow with C++17 #370
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR properly defines BOOST_NO_CXX98_FUNCTION_BASE when building ecflow with the C++17 standard. The ecflow CMake configuration has been setting the C++17 standard since version 5.8.3 (ie, using the
-std=gnu++17
compiler option). When using C++17, the boost executor.hpp include file needs to have BOOST_NO_CXX98_FUNCTION_BASE defined to build successfully.I have a PR in the authoritative spack repo (spack#41120) with corresponding updates. The changes in this PR were made by cherry picking the commits from spack#41120.
I've tested these changes on my Mac and verified that building ecflow (5.11.4) works when using [email protected] compilers.
Issue(s) addressed
Partially resolves JCSDA/spack-stack/issues/877
Dependencies
List the other PRs that this PR is dependent on:
None
Impact
Expected impact on downstream repositories:
None
Checklist