Request for Changes-73: Compatibility with muparserx 4.0.7 (last stable release)

From OTBWiki
Jump to: navigation, search

Request for Changes-73: Compatibility with muparserx 4.0.7 (last stable release)

Status

  • Author: Manuel
  • Additional Contributors (if different than authors)
  • Submitted on 21.11.16
  • Proposed target release : 5.10
  • Proposed
  • [1]

Summary

This RFC aims at updating OTB to be compatible with muparserx last stable release (4.0.7).

Rationale

There is an issue related to this in Mantis: https://bugs.orfeo-toolbox.org/view.php?id=1117

What I've done is to make muparserx OTB module compatible with OTB by putting c++11 CXXFLAGS as mandatory for the OTBMuParserX module (as suggested by Guillaume in the mantis thread).

It allows also to remove mpCompat.h file which was there to be able to compile muparserx 3.x without c++11 (the tweak does not work anymore with muparserx 4.x)

Implementation details

Classes and files

In OTB:

Remove reference to mpCompat.h and put C++11 as mandatory like Shark module.

In Superbuild:

  • Update URL and MD5 sum to 4.0.7
  • 1 patch included in Superbuild and related to OTB mantis bug 1048 was submitted and merge upstream to muparserx: https://github.com/beltoforion/muparserx/pull/76
  • Patches:
    • CMakeLists.txt: we've got a fork of the muparserx CMakeLists in OTB, I would rather prefer to contribute changes upstream. I did not change it for (would like to discuss it with Rashad)
    • mpParserMessageProvider.cpp: our patch has been submitted and merged upstream:

https://github.com/beltoforion/muparserx/pull/76

We can remove this patch in the next muparserx release.


Applications

Tests

Documentation

Update in the installation manual to refer to the new supported version of muparserx.

Additional notes