Bug #1579
Export two configuration trees, one for Eigen2 and one for Eigen3
Status: | Closed | Start date: | 07/29/2013 | |
---|---|---|---|---|
Priority: | High | Due 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
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
Suggest libeigen3-dev debian package
- Now that we build an explicit eigen3 configuration, the debian package suggests to install libeigen3-dev
refs #1579
Added missing files
refs #1579
Added missing files
refs #1579
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
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.