View Issue Details

IDProjectCategoryView StatusLast Update
0002222Slicer4Core: Extensionspublic2012-08-29 10:41
Reporterpinter Assigned Tojcfr  
PrioritynormalSeverityfeatureReproducibilityN/A
Status closedResolutionfixed 
Product VersionSlicer 4.1.1 
Target VersionSlicer 4.2.0Fixed in VersionSlicer 4.2.0 
Summary0002222: Dependant extensions get the _DIR variable from the ones it depends on
Description

Extension A depends on extension B.
A would need the B_DIR variable in order to link against its libraries.

Additional Information

Discussed this issue with JC

TagsNo tags attached.

Relationships

has duplicate 0002407 closedjcfr Extensions that depend upon extensions 
related to 0002034 closedgregsharp Integrate Plastimatch extensions 

Activities

jcfr

jcfr

2012-06-25 10:48

administrator   ~0004920

Fixed in r20481
See http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=20481

jcfr

jcfr

2012-07-27 15:42

administrator   ~0005402

Dear issue reporter,

Good news :) Slicer developers SOLVED the problem you reported - YOU now need to VERIFY and CLOSE this issue.

pinter

pinter

2012-08-27 09:46

developer   ~0005806

Hi JC,

Sorry for the delay! I just tried this feature, but with partial success only.

So I made our SlicerRT extension depend on LoadableExtensionTemplate (just for the sake of testing, by setting set(EXTENSION_DEPENDS "LoadableExtensionTemplate") ). The CMake variable LoadableExtensionTemplate_DIR is created, but it is empty.

Maybe the problem is with our extension being in a different directory (not under Slicer-Superbuild/Extensions)?

jcfr

jcfr

2012-08-28 01:53

administrator   ~0005821

Hi Csaba,
Should be good now. See http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=20885
Thanks
Jc

pinter

pinter

2012-08-28 08:23

developer   ~0005828

Hi Jc,

I tried it again, and the issue is the same, the variable is empty (the cache contains "LoadableExtensionTemplate_DIR:PATH=")

However, when I add more than one dependency, there is another problem. The extension list is not handled as a list: "LoadableExtensionTemplate ScriptedLoadableExtensionTemplate_DIR:PATH="

Anyway, instead of having the Plastimatch library as a dependant hidden extension, we build it statically in our project, so this issue is not relevant for us at the moment. You can put it to low priority if you have to deal with more important issues.

Thanks,
csaba

jcfr

jcfr

2012-08-28 09:31

administrator   ~0005833

After updating "LoadableExtensionTemplate.s4ext" and setting the depends parameter to be:

depends CLIExtensionTemplate ScriptedLoadableExtensionTemplate

If I run the following command:

mkdir SlicerExtensionsTestingIndex-build
cd SlicerExtensionsTestingIndex-build
cmake -DSlicer_DIR:PATH=/home/jchris/Projects/Slicer4-Superbuild-Debug/Slicer-build/ ../Slicer4/Extensions/CMake/

The DIR variables are properly set in SlicerExtensionsTestingIndex-build/LoadableExtensionTemplate-build/CMakeCache.txt

On the other hand, if I do a clean build setting -DSlicer_UPLOAD_EXTENSIONS:BOOL=ON , only the DIr variable specific to CLIExtensionTemplate is set.

Could you confirm it at least work for you in both case if you set only one dependency. For example:

depends CLIExtensionTemplate

Thanks
Jc

pinter

pinter

2012-08-28 09:49

developer   ~0005834

Both scenarios work on my machine the same way you described.

Issue History

Date Modified Username Field Change
2012-06-19 12:49 pinter New Issue
2012-06-19 12:49 pinter Status new => assigned
2012-06-19 12:49 pinter Assigned To => jcfr
2012-06-25 10:48 jcfr Target Version => Slicer 4.1.2 - July 1st 2012
2012-06-25 10:48 jcfr Note Added: 0004920
2012-06-25 10:48 jcfr Status assigned => resolved
2012-06-25 10:48 jcfr Fixed in Version => Slicer 4.1.2 - July 1st 2012
2012-06-25 10:48 jcfr Resolution open => fixed
2012-07-27 15:42 jcfr Note Added: 0005402
2012-08-22 13:19 jcfr Relationship added has duplicate 0002407
2012-08-22 13:21 jcfr Relationship added related to 0002034
2012-08-27 09:46 pinter Note Added: 0005806
2012-08-27 09:46 pinter Status resolved => feedback
2012-08-27 09:46 pinter Resolution fixed => reopened
2012-08-28 01:45 jcfr Fixed in Version Slicer 4.1.2 - August => Slicer 4.2.0 - Feature freeze Sept 1st 2012
2012-08-28 01:45 jcfr Target Version Slicer 4.1.2 - August => Slicer 4.2.0 - Feature freeze Sept 1st 2012
2012-08-28 01:53 jcfr Note Added: 0005821
2012-08-28 01:53 jcfr Status feedback => resolved
2012-08-28 01:53 jcfr Resolution reopened => fixed
2012-08-28 08:23 pinter Note Added: 0005828
2012-08-28 08:23 pinter Status resolved => feedback
2012-08-28 08:23 pinter Resolution fixed => reopened
2012-08-28 09:31 jcfr Note Added: 0005833
2012-08-28 09:49 pinter Note Added: 0005834
2012-08-29 10:41 pinter Status feedback => closed
2012-08-29 10:41 pinter Resolution reopened => fixed