Bug #1579

Export two configuration trees, one for Eigen2 and one for Eigen3

Added by Anonymous over 10 years ago. Updated over 10 years ago.

Status:ClosedStart date:07/29/2013
Priority:HighDue date:
Assignee:A. Tuleu% Done:

100%

Category:-
Target version:NemoMath 0.4

Description

Via Alexandre Tuleu, regarding projects that use libraries, that use / depend on eigen3:

I see that NemoMath as a eigen 3 support. Furthermore NemoMath is header only library. And the debian packaging is authorizing the two. I would suggest:

* NemoMath should export two configuration tree (NemoMathConfig.cmake and NemoMath.pc ) one for Eigen2 (takes the same name) and one for Eigen3 (Maybe called NemoMath-Eigen3).
* Makes rci / cca / rst depends on NemoMath-Eigen3 rather than Eigen.

Associated revisions

Revision 289
Added by anordman over 10 years ago

Exporting two configurations, one explicitly for eigen3

  • Nemomath now exports two configurations (pkgconfig and cmake config)
    • The default one works with eigen2 and eigen3, but prefers eigen2 over eigen3 with eigen2 support
    • The second one explicitly depends on eigen3 with eigen2 support, if eigen3 is installed

fixes #1579

Revision 290
Added by anordman over 10 years ago

Suggest libeigen3-dev debian package

  • Now that we build an explicit eigen3 configuration, the debian package suggests to install libeigen3-dev

refs #1579

Revision 291
Added by anordman over 10 years ago

Added missing files

refs #1579

Revision 292
Added by anordman over 10 years ago

Added missing files

refs #1579

Revision 293
Added by anordman over 10 years ago

Nemomath package needs to depend on libeigen2-dev

  • The nemomath debian package needs to depend on libeigen2-dev, because the default configuration of nemomath requires eigen2
  • Eigen3 also possible, so libeigen3-dev is only suggested

refs #1579

Revision 305
Added by anordman over 10 years ago

Let downstream projects enforce dependency to eigen3 instead of eigen2

  • By setting the CMAKE variable NEMOMATH_ENFORCE_EIGEN3 to 1/On/true, NemoMath exports eigen3 dependency and not eigen2 dependency (default)
  • Previous solution, to provide a seperate cmake Config file is inconvenient, since the file naming prevents cmake to find it with its default mechanism

refs #1579

History

#1 Updated by Anonymous over 10 years ago

I would vote in favor of providing two configurations (for eigen2 and eigen3). I don`t see any problems with that.

#2 Updated by Anonymous over 10 years ago

  • Status changed from Feedback to In Progress
  • Assignee set to Anonymous

#3 Updated by Anonymous over 10 years ago

  • Status changed from In Progress to Resolved
  • % Done changed from 0 to 100

Applied in changeset r289.

#4 Updated by Anonymous over 10 years ago

  • Status changed from Resolved to Feedback
  • Assignee changed from Anonymous to A. Tuleu

Alexandre, can you check, if this meets your needs? Check NemoMath0.4-eigen3.pc and NemoMath-Eigen3Config.cmake

#5 Updated by Anonymous over 10 years ago

  • Status changed from Feedback to Closed

#6 Updated by A. Tuleu over 10 years ago

Yep it works well at this level.

You still need a recompilation for RCI, and force here the dependency on eigen3. Otherwise ABI problem may arise.

Also available in: Atom PDF