View Issue Details

IDProjectCategoryView StatusLast Update
0003704Slicer4Core: Extensionspublic2017-09-26 10:36
ReporterjcfrAssigned Tomatthew-woehlke 
PrioritynormalSeverityminorReproducibilityhave not tried
Status assignedResolutionopen 
Product Version 
Target VersionbacklogFixed in Version 
Summary0003704: Extension - Support for build time dependency
Description

Following 0002912, there is now a good support for runtime installation of dependent extension.

This causes problem for extension like "UKFTractography" that were using the fact the support was not working and were depending on "built time" extension.

For example, UKF depends on Eigen and its installation now fails.

Proposed solutions:

1) Extends the depends fields so that it can support specification of dependency modified.

depends extensionname[:buildonly]

or

2) Add an additional metadata field named "build_depends":

build_depends extensionname

or

3) ... or we change the requirements for extension and expect them to deal with build time dependency on their own.

For reference, here is a snipped of an email I exchanged with UKF developer a year ago:

8<-----8<-----8<-----8<-----8<-----8<-----8<-----8<-----8<-----8<-----
[...]
It means that you would make the UKFTractography extension dependent of Eigen extension.

Within the extension, the variable <DependentExtensionName>_DIR can then expected. The extension build system will base variable Eigen_DIR when building UKFTractography.

Currently this will work out of the box if:

  • Eigen can be built
  • Dependent project can find the needed file relying on Eigen_DIR being set to the build tree
  • No build option are required for Eigen

If the requirement are different, we should discuss and see how we could change things.
8<-----8<-----8<-----8<-----8<-----8<-----8<-----8<-----8<-----8<-----

TagsNo tags attached.

Relationships

related to 0002912 closedmatthew-woehlke Install dependent extensions 

Activities

2014-05-21 05:28

 

inorton

inorton

2017-03-03 11:29

developer   ~0014358

See: https://github.com/Slicer/Slicer/pull/675

inorton

inorton

2017-03-18 00:41

developer   ~0014376

Last edited: 2017-03-18 00:41

View 2 revisions

We've resolved this for our purposes by downloading Eigen directly in the build process, and eliminating the Eigen-as-extension dependency.

Issue History

Date Modified Username Field Change
2014-05-21 05:28 jcfr New Issue
2014-05-21 05:28 jcfr Status new => assigned
2014-05-21 05:28 jcfr Assigned To => jcfr
2014-05-21 05:28 jcfr File Added: No-support-for-build-time-extension.png
2014-05-21 05:33 jcfr Description Updated
2014-05-21 05:34 jcfr Relationship added related to 0002912
2014-05-21 05:34 jcfr Summary Support for build time dependency => Extension - Support for build time dependency
2014-05-21 05:47 jcfr Assigned To jcfr => matthew-woehlke
2014-05-21 05:47 jcfr Target Version => Slicer 4.4.0
2014-05-21 05:47 jcfr Description Updated
2014-07-29 11:58 jcfr Target Version Slicer 4.4.0 => Slicer 4.5.0-1
2015-11-02 11:27 jcfr Target Version Slicer 4.5.0-1 => Slicer 4.6.0
2016-10-12 11:45 jcfr Target Version Slicer 4.6.0 => Slicer 4.7.0
2017-03-03 11:29 inorton Note Added: 0014358
2017-03-18 00:41 inorton Note Added: 0014376
2017-03-18 00:41 inorton Note Edited: 0014376 View Revisions
2017-09-26 10:36 jcfr Target Version Slicer 4.7.0 => backlog