View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0009757ITKpublic2009-10-21 21:002010-11-05 00:02
Reportermmr 
Assigned ToCory W Quammen 
PrioritynormalSeverityminorReproducibilityhave not tried
StatusclosedResolutionfixed 
Platformx86OSWindowsOS Version7
Product VersionITK-3-16 
Target VersionFixed in Version 
Summary0009757: Feature Request: flatten the header directory structure produced when the INSTALL project is run
DescriptionAs per discussions on the itk-users mailing list, I request that the header output from the INSTALL project produced by CMake be flattened, rather than still organized in the same way as in cvs.
TagsNo tags attached.
Resolution Date
Sprint
Sprint Statuscompleted
Attached Files

 Relationships

  Notes
(0018192)
Luis Ibanez (manager)
2009-10-22 12:09

Locate all the CMakeLists.txt files that use the INSTALL_INCLUDE_DIR variable

Condition them with a new CMake variable, to provide the alternative of copying all the headers to the top (flat) directory INSTALL_INCLUDE_DIR, instead of creating subdirectories.

grep -r INSTALL_INCLUDE_DIR * | wc

reveals 117 instances of the variable.
(0018197)
Luis Ibanez (manager)
2009-10-22 14:05

Added a CMake option called

   ITK_USE_FLAT_DIRECTORY_INSTALL

in the top CMakeLists.txt file
and then conditioned the naming of the destination directories for headers in all the CMakeLists.txt files under Insight/Code/

For example:
Top CMakeLists.txt file:
http://www.itk.org/cgi-bin/viewcvs.cgi/CMakeLists.txt?root=Insight&r1=1.354&r2=1.355&sortby=date [^]

Insight/Code/Common/CMakeLists.txt file:
http://www.itk.org/cgi-bin/viewcvs.cgi/Code/Common/CMakeLists.txt?root=Insight&r1=1.137&r2=1.138&sortby=date [^]
(0018198)
Luis Ibanez (manager)
2009-10-22 14:50

Most of the Utilities subdirectories have now been flattened.

The following issues remain:

1) MetaImage: Must be done by Stephen or Julien, and must check for VTK impact
2) kwsys: Must be done by Brad, and check implications in other toolkits
3) VXL: This tree actually have duplicated filenames...
(0018245)
mmr (developer)
2009-10-26 18:25

Using this build, I can get a library without using CMake. Just out of curiousity, should vnl be required in order to use the basic data class? Or should that dependency be removed? Instead of just using one include directory, I need three, because of the inclusion of vnl. Is VNL that intrinsic to what ITK does?
(0018247)
Luis Ibanez (manager)
2009-10-26 21:58

Thanks for verifying that the changes move us in the right direction.

VNL is used in very fundamental places in ITK, for example, in the itkMatrix class. You may be able to build applications that make minimal use of ITK without requiring VNL, but chances are that as you get into more interesting cases of segmentation or registration, then VNL headers will be brought in.

We will give it a try at flattening the VNL tree as well.
Work in progres...
(0018250)
mmr (developer)
2009-10-27 12:13

New news: adding in dicom reading also requires a few more include directories.

So far, the includes are:
ITK/include/InsightToolKit
ITK/include/InsightToolKit/gdcm/src
ITK/include/InsightToolKit/Utilities
ITK/include/InsightToolKit/Utilities/vxl/vcl
ITK/include/InsightToolKit/Utilities/vxl/core

As I add more, I'll put them in.

Thanks for looking into this, I appreciate it.
(0022886)
Cory W Quammen (developer)
2010-11-05 00:02

Assumed fixed with the ITK_USE_FLAT_DIRECTORY_INSTALL CMake option. Please reopen if that is not the case.

 Issue History
Date Modified Username Field Change
2009-10-21 21:00 mmr New Issue
2009-10-22 12:05 Luis Ibanez Status new => assigned
2009-10-22 12:05 Luis Ibanez Assigned To => Luis Ibanez
2009-10-22 12:09 Luis Ibanez Note Added: 0018192
2009-10-22 14:05 Luis Ibanez Note Added: 0018197
2009-10-22 14:50 Luis Ibanez Note Added: 0018198
2009-10-26 18:25 mmr Note Added: 0018245
2009-10-26 21:58 Luis Ibanez Note Added: 0018247
2009-10-27 12:13 mmr Note Added: 0018250
2010-11-05 00:00 Cory W Quammen Assigned To Luis Ibanez => Cory W Quammen
2010-11-05 00:02 Cory W Quammen Sprint Status => completed
2010-11-05 00:02 Cory W Quammen Note Added: 0022886
2010-11-05 00:02 Cory W Quammen Status assigned => closed
2010-11-05 00:02 Cory W Quammen Resolution open => fixed


Copyright © 2000 - 2018 MantisBT Team