Skip to content
This repository has been archived by the owner on Feb 21, 2019. It is now read-only.

Boost 1.65 #159

Merged
merged 7 commits into from
Aug 28, 2017
Merged

Boost 1.65 #159

merged 7 commits into from
Aug 28, 2017

Conversation

rleigh-codelibre
Copy link
Contributor

Routine update of the Boost support for the new Boost 1.65 release. Trello card

All other components copy the last two changes.

Testing: Check builds remain green.

@snoopycrimecop
Copy link
Member

Conflicting PR. Removed from build OME-FILES-CPP-DEV-merge-push-superbuild#729. See the console output for more details.
Possible conflicts:

@snoopycrimecop
Copy link
Member

Conflicting PR. Removed from build OME-FILES-CPP-DEV-merge-push-superbuild#730. See the console output for more details.
Possible conflicts:

  • Upstream changes
    • docs/sphinx/prerequisites.rst

@snoopycrimecop
Copy link
Member

Conflicting PR. Removed from build OME-FILES-CPP-DEV-merge-push-superbuild#731. See the console output for more details.
Possible conflicts:

  • Upstream changes
    • docs/sphinx/prerequisites.rst

@sbesson
Copy link
Member

sbesson commented Aug 24, 2017

In general, 👍 for keeping up with the upstream boosts releases. Can you comment on the rationale for bumping the minimal Cmake requirements as this I cannot see it either in the commit or in the PR description.

To the extent possible, any discussion on minimal requirements should probably be widened to include the ongoing investigation of the C7 platform support since the default version of Cmake is already a blocker. In the case of this PR, can we make FindBoost conditional to the Cmake version, i.e. let it use the new features for recent version while keeping some fallback for older versions?

@rleigh-codelibre
Copy link
Contributor Author

rleigh-codelibre commented Aug 24, 2017

The rationale is in the Trello card. The FindBoost script is using Boost 3.3 and 3.4 features. For the last few Boost updates, I've manually kept the version requirement at 3.2 by rewriting various parts of the script. However, as the use of new features has increased over the last few releases, this has become increasingly burdensome and error-prone, and is not something we can continue to do indefinitely. The version bump has been kept as small as possible, at 2 minor versions.

Regarding CentOS 7, it only provides CMake 2.8.x and we have always required CMake 3.x on this platform. The version installed on our CI infrastructure is already meeting the updated requirement (3.7.1).

Regarding fallbacks, that would be difficult. The features we are concerned with are fairly basic things such as string append operations and searching in lists which are present in many places throughout the script.

@rgozim
Copy link
Member

rgozim commented Aug 24, 2017

CMake script changes all seem fine, nothing complex going on there.

@rleigh-codelibre has identified a breaking bug in the new boost 1.65 libraries occurring on our CI node brill (FreeBSD) and submitted an issue with the Boost team.

@rleigh-codelibre
Copy link
Contributor Author

@rleigh-codelibre
Copy link
Contributor Author

Regarding the build failure, we could drop the boost update and leave this PR updating FindBoost only. Or I can add a patch to fix the issue.

@rleigh-codelibre
Copy link
Contributor Author

Note I've dropped the upgrade of boost itself to leave this restricted to the FindBoost changes only, as a result of the compile failure on brill. We can update this separately once we have a working patch (I tried the existing patch, but it broke cowfish), so some further work required. It has served its purpose in demonstrating that the FindBoost changes work on all the other platforms however.

@rgozim
Copy link
Member

rgozim commented Aug 25, 2017

All CI builds passing now! Looks like it has been sorted.

@sbesson
Copy link
Member

sbesson commented Aug 28, 2017

As mentioned elsewhere, my primary concern was the growing increase of the gap between our minimal CMake requirement and the version shipped in CentOS7 which is arguably our most conservative platform. This is until @joshmoore pointed me to the cmake3 package available with the epel-release which currently ships 3.6.3. Given our consideration of this repo for C7 support, I would propose the following course of actions:

  • we merge this set of PRs bumping the minimal CMake requirement to 3.4
  • we follow-up with the work on re-adding support for Boost 1.53 installed with epel-release
  • assuming the strategy above works, we review the packages Sphinx documentation to promote the usage of epel-release and cmake3

@sbesson sbesson merged commit 8ba5065 into ome:master Aug 28, 2017
@rleigh-codelibre rleigh-codelibre deleted the boost-1.65 branch August 28, 2017 15:20
@sbesson sbesson added this to the 0.5.0 milestone Nov 19, 2017
This pull request was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants