From 64b990b289aecc6eacbfa7d14e921b47ee4e88a4 Mon Sep 17 00:00:00 2001
From: Romain Garrigues <romain.garrigues@c-s.fr>
Date: Wed, 30 Apr 2008 15:53:26 +0000
Subject: [PATCH] Ajout d'ITK version 3.6.0

---
 Utilities/ITK/CTestConfig.cmake           |  13 +
 Utilities/ITK/Copyright.txt               |  55 ++++
 Utilities/ITK/DartConfig.cmake            |  44 +++
 Utilities/ITK/GettingStarted.txt          | 118 ++++++++
 Utilities/ITK/ITKConfig.cmake.in          |  68 +++++
 Utilities/ITK/InsightLogo.gif             | Bin 0 -> 3204 bytes
 Utilities/ITK/README.html                 | 320 ++++++++++++++++++++++
 Utilities/ITK/UseITK.cmake.in             | 113 ++++++++
 Utilities/ITK/itkConfigure.h.in           |  81 ++++++
 Utilities/ITK/itkGenerateITKConfig.cmake  |  95 +++++++
 Utilities/ITK/itkIncludeDirectories.cmake | 185 +++++++++++++
 11 files changed, 1092 insertions(+)
 create mode 100644 Utilities/ITK/CTestConfig.cmake
 create mode 100644 Utilities/ITK/Copyright.txt
 create mode 100644 Utilities/ITK/DartConfig.cmake
 create mode 100644 Utilities/ITK/GettingStarted.txt
 create mode 100644 Utilities/ITK/ITKConfig.cmake.in
 create mode 100755 Utilities/ITK/InsightLogo.gif
 create mode 100644 Utilities/ITK/README.html
 create mode 100644 Utilities/ITK/UseITK.cmake.in
 create mode 100644 Utilities/ITK/itkConfigure.h.in
 create mode 100644 Utilities/ITK/itkGenerateITKConfig.cmake
 create mode 100644 Utilities/ITK/itkIncludeDirectories.cmake

diff --git a/Utilities/ITK/CTestConfig.cmake b/Utilities/ITK/CTestConfig.cmake
new file mode 100644
index 0000000000..eaeb8c51d3
--- /dev/null
+++ b/Utilities/ITK/CTestConfig.cmake
@@ -0,0 +1,13 @@
+SET(CTEST_PROJECT_NAME "Insight")
+SET(CTEST_NIGHTLY_START_TIME "21:00:00 EDT")
+
+IF(NOT DEFINED CTEST_DROP_METHOD)
+  SET(CTEST_DROP_METHOD "http")
+ENDIF(NOT DEFINED CTEST_DROP_METHOD)
+
+IF(CTEST_DROP_METHOD STREQUAL "http")
+  SET(CTEST_DROP_SITE "public.kitware.com")
+  SET(CTEST_DROP_LOCATION "/cgi-bin/HTTPUploadDartFile.cgi")
+  #SET(CTEST_TRIGGER_SITE "http://${CTEST_DROP_SITE}/cgi-bin/Submit-Insight-TestingResults.cgi")
+  SET(CTEST_TRIGGER_SITE "http://public.kitware.com/cgi-bin/Submit-Insight-TestingResults.cgi")
+ENDIF(CTEST_DROP_METHOD STREQUAL "http")
diff --git a/Utilities/ITK/Copyright.txt b/Utilities/ITK/Copyright.txt
new file mode 100644
index 0000000000..e08a9d52a5
--- /dev/null
+++ b/Utilities/ITK/Copyright.txt
@@ -0,0 +1,55 @@
+
+Historical Note:
+
+The Insight Segmentation and Registration Toolkit (ITK) was initially developed
+under contract to the National Library of Medicine at the National Institutes
+of Health. ITK is partially derived from VTK and VXL, hence some code is
+copyrighted accordingly (see VTKCopyright.txt and VXLCopyright.txt).
+
+The copyright of most of the files in the "Utilities" subdirectory is held by
+third parties who allow to distribute this material under a license compatible
+with the one used by ITK. Please read the content of the subdirectories for
+specific details on those third-party licenses. You will also find details in
+the README.txt file under the "Copyright" subdirectory.
+
+Starting with its version ITK 3.6, The Insight Toolkit is distributed under the
+new and simplified BSD license approved by the Open Source Initiative (OSI)
+[http://www.opensource.org/licenses/bsd-license.php].
+
+
+
+
+ITK Copyright Notice:
+
+      Copyright (c) 1999-2003 Insight Software Consortium
+      All rights reserved.
+
+
+
+License:
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright notice,
+      this list of conditions and the following disclaimer.
+
+    * Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimer in the documentation
+      and/or other materials provided with the distribution.
+
+    * Neither the name of the Insight Software Consortium nor the names of its
+      contributors may be used to endorse or promote products derived from this
+      software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
diff --git a/Utilities/ITK/DartConfig.cmake b/Utilities/ITK/DartConfig.cmake
new file mode 100644
index 0000000000..052130c75e
--- /dev/null
+++ b/Utilities/ITK/DartConfig.cmake
@@ -0,0 +1,44 @@
+# Dashboard is opened for submissions for a 24 hour period starting at
+# the specified NIGHLY_START_TIME. Time is specified in 24 hour format.
+SET (NIGHTLY_START_TIME "21:00:00 EDT")
+
+# Dart server to submit results (used by client)
+IF(NOT DROP_METHOD)
+  SET (DROP_METHOD "http")
+ENDIF(NOT DROP_METHOD)
+IF(DROP_METHOD MATCHES http)
+  SET (DROP_SITE "public.kitware.com")
+  SET (DROP_LOCATION "/cgi-bin/HTTPUploadDartFile.cgi")
+ELSE(DROP_METHOD MATCHES http)
+  SET (DROP_SITE "www.itk.org")
+  SET (DROP_LOCATION "/incoming")
+  SET (DROP_SITE_USER "ftpuser")
+  SET (DROP_SITE_PASSWORD "public")
+ENDIF(DROP_METHOD MATCHES http)
+
+SET (TRIGGER_SITE 
+  "http://${DROP_SITE}/cgi-bin/Submit-Insight-TestingResults.cgi")
+
+# Project Home Page
+SET (PROJECT_URL "http://www.itk.org/")
+
+# Dart server configuration 
+SET (ROLLUP_URL "http://${DROP_SITE}/cgi-bin/insight-rollup-dashboard.sh")
+SET (CVS_WEB_URL "http://${DROP_SITE}/cgi-bin/viewcvs.cgi/")
+SET (CVS_WEB_CVSROOT "Insight")
+
+OPTION(BUILD_DOXYGEN "Build source documentation using doxygen" "Off")
+SET (DOXYGEN_CONFIG "${PROJECT_BINARY_DIR}/doxygen.config" )
+SET (USE_DOXYGEN "On")
+SET (DOXYGEN_URL "http://${DROP_SITE}/Insight/Doxygen/html/" )
+
+SET (USE_GNATS "On")
+SET (GNATS_WEB_URL "http://${DROP_SITE}/Bug")
+
+# Continuous email delivery variables
+SET (CONTINUOUS_FROM "lorensen@nycap.rr.com")
+SET (SMTP_MAILHOST "public.kitware.com")
+SET (CONTINUOUS_MONITOR_LIST "millerjv@crd.ge.com lorensen@nycap.rr.com")
+SET (CONTINUOUS_BASE_URL "http://www.itk.org/Testing")
+
+MARK_AS_ADVANCED(BUILD_DOXYGEN)
diff --git a/Utilities/ITK/GettingStarted.txt b/Utilities/ITK/GettingStarted.txt
new file mode 100644
index 0000000000..2acb22a4a8
--- /dev/null
+++ b/Utilities/ITK/GettingStarted.txt
@@ -0,0 +1,118 @@
+
+Welcome to the Insight Registration and Segmentation Toolkit (ITK)
+-----------------------------------------------------------------
+
+This is the fourth public release of ITK (Release-1-2). The ITK developer
+community appreciates any feedback that you may have regarding this
+software. Join the ITK user mailing list (instructions later) and post your
+feedback there. Warning: since the software is young, and this is an early
+release, the API to the software will likely change in the future.
+
+Here are suggested steps for the ITK beginner. Please refer to
+http://www.itk.org for more information. Another document, found in
+Insight/Documentation/InsightStart.pdf is highly recommended.
+
+1) Get the software. We strongly suggest that you obtain the pre-packaged
+   source code distributions (binaries/executables are not yet available).  
+
+     http://www.itk.org/HTML/Download.htm
+
+   You may also obtain CVS access. (This requires the CVS executable and
+   access to ITK's source code through your repository.) To check out the ITK
+   version 1.2 release, use the following procedure:
+
+     cvs -d :pserver:anonymous@www.itk.org:/cvsroot/Insight login
+         (respond with password "insight")
+     cvs -d :pserver:anonymous@www.itk.org:/cvsroot/Insight co \
+            -r Release-1-2 Insight
+
+   The current development version of ITK is available using the following
+   process. Please realize that the development version is inherently less
+   stable than official releases. If you access the development version, you
+   will want to monitor code quality at the ITK Dashboard
+   http://public.kitware.com/dashboard.php?name=itk.
+
+     cvs -d :pserver:anonymous@www.itk.org:/cvsroot/Insight login
+         (respond with password "insight")
+     cvs -d :pserver:anonymous@www.itk.org:/cvsroot/Insight co Insight
+
+
+2) The software is compiled using CMake http://www.cmake.org. CMake
+   generates Makefiles on Unix platforms, and Windows workspaces (or
+   appropriate) build files according to your compiler, operating
+   system, and other system variables.
+
+   If at all possible, obtain the pre-compiled CMake binaries. Binaries
+   for Windows and various Unix flavors are available from
+   http://www.cmake.org/CMake/HTML/Download.html. On Windows, run the
+   CMSetup.exe to install CMake. On Unix, uncompress and untar the
+   package and place the executable in a location in your path.
+
+   On Windows, run CMake by clicking on CMakeSetup.exe. You have to point
+   CMake to the source directory (e.g., Insight), a build directory (where
+   the binaries and object files go), and choose the compiler. The GUI allows
+   you to choose build options and configure the build. Rerun CMake (by
+   selecting "Configure") until all "red" entries disappear. Then select
+   "Ok". This will produce a compiler workspace in the directory that you
+   selected.
+
+   On Unix, run "ccmake". This simple, curses-based GUI to CMake allows
+   you to configure the build process. First create a build directory
+   in which to generate object code and executables. Cd into this
+   directory and specify your C and C++ compilers with the environment
+   variables
+
+        setenv CC your-c-compiler
+        setenv CXX your-c++-compiler
+
+   Next invoke "ccmake ../Insight" assuming that your build
+   directory is a sibling directory to Insight/. While running
+   ccmake, changes are made using the arrow keys to move over an
+   option, and the "Enter" key to edit it. Type "C" to configure
+   the build. As long as "*" appear next to any entries, keep
+   running CMake until none exist. Then type "G" to generate
+   makefiles and exit. Then run "make" in the build directory.
+
+   If you have difficulty with CMake, please refer to http://www.cmake.org
+   for additional instructions. It is possible to obtain CVS access and
+   compile CMake if absolutely necessary.
+
+
+3) Join the mailing list. Go to 
+   http://www.itk.org/mailman/listinfo/insight-users and follow the
+   instructions there. You may choose to receive a digest version of the
+   mail to minimize traffic.
+
+
+4) Learn the system. Start by looking at the examples found in the
+   Insight/Examples directory. Note that this code is heavily
+   commented and works with the ITK Software Guide (found at
+   http://www.itk.org/ItkSoftwareGuide.pdf).  (To build the examples,
+   make sure the CMake flag "BUILD_EXAMPLES" is on.) You may also wish
+   to peruse the many tests found in Insight/Testing/Code.
+
+   If you would like to be more ambitious, a separate checkout of ITK
+   applications is available. Please do not attempt this until ITK and
+   its examples are building correctly (as described previously). The
+   InsightApplications may be difficult to build because of their
+   dependency on external packages like VTK, FLTK, and Qt.
+
+   TO obtain the InsightApplications checkout via CVS:
+
+     cvs -d :pserver:anonymous@www.itk.org:/cvsroot/InsightApplications co \
+           -r Release-1-2 InsightApplications
+
+
+ITK resources are available at the following locations.
+  + http://www.itk.org - main web page
+  + http://www.itk.org/mailman/listinfo/insight-users - mailing list
+  + Insight/README.html - in the source code distribution
+  + Insight/Documentation/InsightStart.pdf - oriented towards developers
+    but contains useful information about compiling and building ITK.
+  + http://www.cmake.org - the CMake build environment
+  + http://public.kitware.com/dashboard.php?name=itk - the ITK software
+    quality dashboard
+  + http://public.kitware.com/Dart - what manages the testing process in ITK
+  + http://public.kitware.com/Cable - the automated C++ wrapping system
+    
+
diff --git a/Utilities/ITK/ITKConfig.cmake.in b/Utilities/ITK/ITKConfig.cmake.in
new file mode 100644
index 0000000000..02f429f7e7
--- /dev/null
+++ b/Utilities/ITK/ITKConfig.cmake.in
@@ -0,0 +1,68 @@
+#-----------------------------------------------------------------------------
+#
+# ITKConfig.cmake - ITK CMake configuration file for external projects.
+#
+# This file is configured by ITK and used by the UseITK.cmake module
+# to load ITK's settings for an external project.
+
+# The ITK include file directories.
+SET(ITK_INCLUDE_DIRS "@ITK_INCLUDE_DIRS_CONFIG@")
+
+# The ITK library directories.
+SET(ITK_LIBRARY_DIRS "@ITK_LIBRARY_DIRS_CONFIG@")
+
+# The C and C++ flags added by ITK to the cmake-configured flags.
+SET(ITK_REQUIRED_C_FLAGS "@ITK_REQUIRED_C_FLAGS@")
+SET(ITK_REQUIRED_CXX_FLAGS "@ITK_REQUIRED_CXX_FLAGS@")
+SET(ITK_REQUIRED_LINK_FLAGS "@ITK_REQUIRED_LINK_FLAGS@")
+
+# The ITK version number
+SET(ITK_VERSION_MAJOR "@ITK_VERSION_MAJOR@")
+SET(ITK_VERSION_MINOR "@ITK_VERSION_MINOR@")
+SET(ITK_VERSION_PATCH "@ITK_VERSION_PATCH@")
+
+# The location of the UseITK.cmake file.
+SET(ITK_USE_FILE "@ITK_USE_FILE@")
+
+# The build settings file.
+SET(ITK_BUILD_SETTINGS_FILE "@ITK_BUILD_SETTINGS_FILE@")
+
+# The library dependencies file.
+SET(ITK_LIBRARY_DEPENDS_FILE "@ITK_LIBRARY_DEPENDS_FILE@")
+
+# Whether ITK was built with shared libraries.
+SET(ITK_BUILD_SHARED "@BUILD_SHARED_LIBS@")
+
+# Whether ITK was built with Tcl wrapping support.
+SET(ITK_CSWIG_TCL "@ITK_CSWIG_TCL@")
+SET(ITK_CSWIG_PYTHON "@ITK_CSWIG_PYTHON@")
+SET(ITK_CSWIG_JAVA "@ITK_CSWIG_JAVA@")
+
+# Path to CableSwig configuration used by ITK.
+SET(ITK_CableSwig_DIR "@ITK_CableSwig_DIR_CONFIG@")
+
+# A list of all libraries for ITK.  Those listed here should
+# automatically pull in their dependencies.
+SET(ITK_LIBRARIES ITKAlgorithms ITKStatistics ITKFEM)
+
+# The ITK library dependencies.
+IF(NOT ITK_NO_LIBRARY_DEPENDS AND
+    EXISTS "${ITK_LIBRARY_DEPENDS_FILE}")
+  INCLUDE("${ITK_LIBRARY_DEPENDS_FILE}")
+ENDIF(NOT ITK_NO_LIBRARY_DEPENDS AND
+  EXISTS "${ITK_LIBRARY_DEPENDS_FILE}")
+
+# Whether ITK was built using a system VXL or system gdcm or review
+SET(ITK_USE_SYSTEM_VXL "@ITK_USE_SYSTEM_VXL@")
+SET(ITK_USE_SYSTEM_GDCM "@ITK_USE_SYSTEM_GDCM@")
+SET(ITK_USE_LIBXML2 "@ITK_USE_LIBXML2@")
+SET(ITK_USE_SYSTEM_LIBXML2 "@ITK_USE_SYSTEM_LIBXML2@")
+SET(ITK_USE_REVIEW "@ITK_USE_REVIEW@")
+SET(ITK_USE_TRANSFORM_IO_FACTORIES "@ITK_USE_TRANSFORM_IO_FACTORIES@")
+SET(ITK_USE_OPTIMIZED_REGISTRATION_METHODS "@ITK_USE_OPTIMIZED_REGISTRATION_METHODS@")
+SET(ITK_USE_ORIENTED_IMAGE_DIRECTION "@ITK_USE_ORIENTED_IMAGE_DIRECTION@")
+
+# The VXL_DIR setting used to build ITK.  Set if ITK_USE_SYSTEM_VXL is true.
+# same for gdcm
+SET(ITK_VXL_DIR "@ITK_VXL_DIR@")
+SET(ITK_GDCM_DIR "@ITK_GDCM_DIR@")
diff --git a/Utilities/ITK/InsightLogo.gif b/Utilities/ITK/InsightLogo.gif
new file mode 100755
index 0000000000000000000000000000000000000000..a16d5e610f66ff1dbb8a36e70101e07aee928067
GIT binary patch
literal 3204
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
T8`O_Q#j%p&a70Za0dM~YD}G=u

literal 0
HcmV?d00001

diff --git a/Utilities/ITK/README.html b/Utilities/ITK/README.html
new file mode 100644
index 0000000000..bc964eff48
--- /dev/null
+++ b/Utilities/ITK/README.html
@@ -0,0 +1,320 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+  <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
+  <title>ITK README File - Overview and further information</title>
+</head>
+<body>
+<table cellpadding="2" cellspacing="1" border="0" width="100%">
+  <tbody>
+    <tr valign="Top">
+      <td align="Center">
+      <h1>
+      <a href="http://www.itk.org">
+      <img src="./Documentation/Art/itkLogoMediumTransparentBackground.gif" 
+      alt="ITK Logo" width="200" height="128" align="Top" border=0></a>
+      </h1>
+      </td>
+      <td>
+      <h1>An Introduction to the <br>
+Insight Segmentation &amp; Registration Toolkit <br>
+      </h1>
+      <hr align="Left" width="100%" size="2"></td>
+    </tr>
+  </tbody>
+</table>
+<br>
+Welcome to the National Library of Medicine Insight Segmentation and Registration
+Toolkit (ITK).<br>
+<br>
+This document provides a brief description of the project, its history, and
+references to additional information describing how to use, develop, and
+contribute to ITK. <br>
+<h2>Introduction</h2>
+<h3>What is <a href="http://www.itk.org">ITK</a>?</h3>
+ITK is an open-source software toolkit for performing registration and segmentation.
+Segmentation is the process of identifying and classifying data found in
+a digitally sampled representation. Typically the sampled representation
+is an image acquired from such medical instrumentation as CT or MRI scanners.
+Registration is the task of aligning or developing correspondences between
+data. For example, in the medical environment, a CT scan may be aligned with
+a MRI scan in order to combine the information contained in both.<br>
+<br>
+ITK is implemented in C++. In addition, an automated wrapping process generates
+interfaces between C++ and interpreted programming languages such as Tcl,
+Java, and Python. This enables developers to create software using a variety
+of programming languages. ITK's C++ implementation style is referred to as
+generic programming. Such C++ templating means that the code is highly efficient,
+and that the many software problems are discovered at compile-time, rather
+than at run-time during program execution.<br>
+<br>
+Because ITK is an open-source project, developers from around the world can
+use, debug, maintain, and extend the software. ITK uses a model of software
+development referred to as Extreme Programming. Extreme Programming collapses
+the usual software creation methodology into a simultaneous and iterative
+process of design-implement-test-release. The key features of Extreme 
+Programming are communication and testing. Communication among the members of 
+the ITK community is what helps manage the rapid evolution of the software. 
+Testing is what keeps the software stable. In ITK, an extensive testing 
+process is in place that measures the quality on a daily basis.<br>
+
+<h3>What are ITK's origins?</h3>
+
+In 1999 the US <a href="http://www.nlm.nih.gov/nlmhome.html">National Library
+of Medicine</a> of the National Institutes of Health awarded a three-year
+contract to develop an open-source registration and segmentation toolkit,
+which eventually came to be known as the Insight Toolkit (ITK). The primary
+purpose of the project is to support the <a
+href="http://www.nlm.nih.gov/research/visible/visible_human.html"> Visible
+Human Project</a> by providing software tools to process and work with the
+project data. ITK's NLM Project Manager was Dr. Terry Yoo, who coordinated
+the six prime contractors who made up the Insight Software Consortium. These
+consortium members included the three commercial partners GE Corporate
+R&amp;D, Kitware, Inc., and MathSoft (the company name is now Insightful);
+and the three academic partners University of North Carolina (UNC),
+University of Tennessee (UT), and University of Pennsylvania (UPenn).  The
+Principle Investigators for these partners were, respectively, Bill Lorensen
+at GE CRD, Will Schroeder at Kitware, Vikram Chalana at Insightful, Stephen
+Aylward with Luis Ibanez at UNC (Luis is now at Kitware), Ross Whitaker with
+Josh Cates at UT (both now at Utah), and Dimitri Metaxas at UPenn (now at
+Rutgers). In addition, several subcontractors rounded out the consortium
+including Peter Raitu at Brigham &amp; Women's Hospital, Celina Imielinska
+and Pat Molholt at Columbia University, Jim Gee at UPenn's Grasp Lab, and
+George Stetton at University of Pittsburgh.  <br>
+
+<h3> Who are the developers?</h3>
+The best way to determine the names of developers is to view the CVS
+source code repository logs. Most of the early developers are listed in
+the following, however, many developers beyond those listed here will
+participate in the development of Insight as the code grows and becomes
+publicly accessible.<br>
+<br>
+Some of the early developers include:<br>
+<ul>
+  <li>Elsa Angelini - Columbia, segmentation algorithms</li>           
+  <li>Brian Avants - UPenn; FEM classes, registration algorithms</li>
+  <li> Stephen Aylward - UNC; architecture, algorithms</li>
+  <li>Dan Blezek - GE CRD; testing infrastructure</li>
+  <li>Josh Cates - Utah; imaging classes and filters</li>
+  <li>Ting Chen - UPenn, segmentation algorithms</li>
+  <li>Jeffrey Duda - UPenn; FEM classes, registration algorithms</li>
+  <li>James Gee - UPenn; FEM architecture, registration algorithms</li>
+  <li>Bill Hoffman - Kitware; CMake (build process); vxl/vnl numerics; 
+  infrastructure (smart pointers, object factories, 
+  callback mechanism)</li>
+  <li>Paul Hughett - UPenn; quality, algorithms</li>
+  <li>Luis Ibanez - UNC (now Kitware); imaging classes and filters</li>
+  <li>Celina Imielinska - Columbia, segmentation algorithms</li>
+  <li>Yinpeng Jin - Columbia, segmentation algorithms</li>
+  <li>Brad King - Kitware; Mesh class, autowrapping of C++ code</li>
+  <li>Bill Lorensen - GE CRD; testing, requirements, architecture</li>
+  <li>Ken Martin - Kitware; Build process, architecture, 
+  infrastructure</li>
+  <li>Dimitris Metaxas - UPenn, segmentation algorithms</li>
+  <li>Jim Miller - GE CRD; Image classes, iterators, pipeline update 
+  mechanism</li>
+  <li>Lydia Ng - Mathsoft (now Insightful); Image filters, 
+  clustering/segementation algorithms</li>
+  <li>Aljaz Noe - UPenn; FEM classes</li>
+  <li>Sayan Pathak &ndash; MathSoft (now Insightful); image 
+  clustering/segementation algorithms</li>
+  <li>Will Schroeder - Kitware; architecture, Mesh classes, documentation,
+   algorithms, core classes</li>
+  <li>Marcelo Siqueira - UPenn; FEM classes</li>
+  <li>George Stetton - Pittsburgh; image filters, algorithms</li>
+  <li>Tessa Sundaram - UPenn; FEM classes, registration algorithms</li>
+  <li>Jayaram Udupa - Upenn, segmentation algorithms</li>
+  <li>Ross Whitaker - Utah; architecture, algorithms</li>
+  <li>Ying Zhuge - UPenn, segmentation algorithms</li>
+</ul>
+
+<h3>How do I participate?</h3>
+Because ITK is an open-source system, you can participate. If you'd like
+to become involved, here are the following steps that you might consider.
+<br>
+<ol>
+  <li>Read this document and the
+  <a href="http://www.itk.org/ItkSoftwareGuide.pdf">
+  <i>ITK Software Guide</i></a>. (The book is also available for purchase from
+  <a href="http://www.kitware.com/products/index.html">
+  Kitware's estore</a>.)</li>
+  <li> Obtain access to the CVS repository (read-only, anonymous access),&nbsp;
+and obtain the distribution using the following procedure (see instructions
+in For More Information at the end of document).</li>
+  <li>Find the Insight/Documents/InsightStart.doc and read it thoroughly.</li>
+  <li>As this document suggests, join the insight-developers list.</li>
+  <li>Contribute code or fix bugs by mailing code to the list or contacting
+a developer directly.</li>
+  <li>Once you demonstrate your abilities, obtain read-write access to 
+  the CVS repository. Access can be obtained by following the procedure 
+  described in the Insight/Documents/InsightDeveloperStart.pdf file.</li>
+</ol>
+
+<h3>What are the terms of use?</h3>
+The ITK copyright is held by the Insight Software Consortium. This non-profit
+entity promotes the use of ITK for educational and research purposes. The
+<a href="http://www.itk.org/HTML/Copyright.htm">copyright</a> enables both
+commercial and non-commercial usage. There is a patented code found in the 
+Insight/Code/Patented directory. If you use any of these code in commercial 
+application, you must contact the patent holder to obtain permission.<br>
+
+<h2>TECHNICAL SUMMARY</h2>
+The following sections summarize the technical features of the NLM's Insight
+ITK toolkit.
+<h3>Design Philosophy</h3>
+The following are key features of the toolkit design philosophy.<br>
+<br>
+<ul>
+  <li>The toolkit provides data representation and algorithms for performing
+segmentation and registration. The focus is on medical applications; although
+the toolkit is capable of processing other data types.<br>
+ </li>
+  <li>The toolkit provides data representations in general form for images
+(arbitrary dimension) and (unstructured) meshes.<br>
+ </li>
+  <li>The toolkit does not address visualization or graphical user interface.
+These are left to other toolkits (such as 
+<a href="http://www.vtk.org">VTK</a>, 
+<a href="http://rolle.engr.utk.edu/~vision/vispack/">VisPack</a>, 
+<a href="http://mipgsun.mipg.upenn.edu/~Vnews/">3DViewnix</a>,
+<a href="http://caddlab.rad.unc.edu/technologies/index.html#metaObjects">
+MetaImage</a>, etc.)
+  </li>
+  <li> The toolkit provides minimal tools for file interface. Again, this
+is left to other toolkits/libraries to provide. </li>
+  <li>Multi-threaded (shared memory) parallel processing is supported. </li>
+
+  <li>The development of the toolkit is based on principles of extreme
+programming.  That is, design, implementation, and testing is performed in a
+rapid, iterative process. Testing forms the core of this process. In Insight,
+testing is performed continuously as files are checked in, and every night
+across multiple platforms and compilers. The 
+<a href="http://public.kitware.com/dashboard.php?name=itk">Insight testing 
+dashboard</a>, where testing results are posted, is central to this
+process.</li>
+
+</ul>
+<h3>Architecture </h3>
+The following are key features of the toolkit architecture.
+<ul>
+  <li>The toolkit is organized around a data-flow architecture. That is,
+data is represented using data objects which are in turn processed by process
+objects (filters). Data objects and process objects are connected together
+into pipelines. Pipelines are capable of processing the data in pieces according
+to a user-specified memory limit set on the pipeline.</li>
+  <li>Object factories are used to instantiate objects. Factories allow run-time
+extension of the system. </li>
+</ul>
+<h3>Implementation Philosophy</h3>
+The following are key features of the toolkit implementation philosophy.<br>
+<ul>
+  <li>The toolkit is implemented using generic programming principles. Such
+heavily templated C++ code challenges many compilers; hence development was
+carried out with the latest versions of the MSVC, Sun, gcc, Intel,
+and SGI compilers.</li>
+  <li>The toolkit is cross-platform (Unix, Windows and MacOSX).</li>
+  <li> The toolkit supports multiple language bindings, including such 
+  languages as Tcl, Python, and Java. These bindings are generated 
+  automatically using an auto-wrap process. 
+  <a href="http://www.itk.org/HTML/CableSwig.html">CableSwig</a> is the tool 
+  we use for wrapping the code.</li>
+  <li> The memory model depends on "smart pointers" that maintain a reference
+  count to objects. Smart pointers can be allocated on the stack, and when
+  scope is exited, the smart pointers disappear and decrement their reference
+  count to the object that they refer to. </li>
+  <li>The Command/Observer design pattern is used for invoking and processing
+  events.</li>
+</ul>
+<h3>Build Environment</h3>
+Insight uses the 
+<a href="http://www.cmake.org">CMake</a>
+(cross-platform make) build environment. CMake uses
+configure and make on Unix and generates projects and workspaces in the windows
+environment.<br>
+<h3>Testing Environment</h3>
+Insight supports an extensive testing environment. The code is tested daily
+(and even continuously) on many hardware/operating system/compiler 
+combinations and the results are posted daily on the 
+<a href="http://public.kitware.com/dashboard.php?name=itk">Insight testing 
+dashboard</a>. We use 
+<a href="http://public.kitware.com/Dart/">Dart</a> to manage the testing 
+process, and to post the results to the dashboard.
+<br>
+<h3>Background References </h3>
+<h4>C++ Patterns and Generics</h4>
+Insight uses many advanced design patterns and generic programming. You may find these references useful in understanding the design and syntax of Insight.
+<ul>
+<li><b>Design Patterns.</b> by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Grady Booch </li>
+<li><b>Generic Programming and the Stl : Using and Extending the C++ Standard Template Library</b> (Addison-Wesley Professional Computing Series)
+by Matthew H. Austern </li>
+<li><b>Advanced C++ Programming Styles and Idioms</b> by James O. Coplien</li>
+<li><b>C/C++ Users Journal</b></li>
+<li><b>C++ Report</b></li>
+</ul>
+
+
+<h2>ADDITIONAL INFORMATION</h2>
+  <h3>Resources</h3>
+  A number of resources are available to learn more about ITK.
+  <ul>
+    <li>The ITK web pages are located
+    <a href="http://www.itk.org">http://www.itk.org</a>.</li>
+    <li>The definitive guide to ITK is available from 
+    <a href="http://www.itk.org/ItkSoftwareGuide.pdf">
+    <i>ITK Software Guide</i></a>. (The book is also available for 
+    purchase from <a href="http://www.kitware.com/products/index.html">
+    Kitware's estore</a>.)</li>
+    <li>Users of the toolkit should look in the file
+    <a href="GettingStarted.txt">GettingStarted.txt</a>. This file contains 
+    information on how to obtain ITK and the basics of compilation and
+    otherwise managing the software.</li>
+    <li>Developers, or users interested in learning more, should look in the
+    document <a href="Documentation/InsightStart.pdf">InsightStart.pdf</a> or
+    InsightStart.doc found in the Insight/Documentation directory.</li>
+    <li>Developers should also look at the ITK style guide
+    <a href="Documentation/Style.pdf">Style.pdf</a>.</li>
+  </ul>
+
+  <h3>Examples</h3>
+  A great way to learn about ITK is to see how it is used. There are three
+  places to find examples.
+  <ol>
+  <li>The <a href="Examples/">Insight/Examples</a> distributed with ITK.
+  The source code is available. The examples are used in the <i>ITK
+  Software Guide</i> mentioned previously.</li>
+  <li>The <a href="http://www.itk.org/HTML/Examples.htm">Examples web pages</a>. 
+  These are extensive descriptions, with images and references, of the 
+  examples found in #1 above.</li>
+  <li>The <a href="Testing/Code/">Testing directories</a> distributed with
+  ITK are simple, mainly undocumented examples of how to use the code.</li>
+  </ol>
+
+  <h3>Data</h3>
+  <ul>
+    <li>Data is available via anonymous ftp from: 
+      <a href="ftp://public.kitware.com/pub/itk/Data/">
+      ftp://public.kitware.com/pub/itk/Data/</a>.</li>
+    <li>See also the
+      <a href="http://www.itk.org/HTML/Data.htm">ITK Data web page</a>.</li>
+  </ul>
+
+  <h3>Contacts</h3>
+  <ul>
+    <li>Terry Yoo (NLM/NIH Insight Project Manager yoo@fluorite.nlm.nih.gov)</li>
+    <li>Bill Lorensen (PI GE CRD lorensen@crd.ge.com)</li>
+    <li>Will Schroeder (PI Kitware, Inc. will.schroeder@kitware.com)</li>
+    <li>Stephen Aylward (PI UNC aylward@unc.edu).</li>
+    <li>Ross Whitaker (PI Utah whitaker@cs.utah.edu)</li>
+    <li>Lydia Ng (PI Insightful lng@insightful.com)</li>
+    <li>Dimitri Metaxas (PI Rutgers dnm@cs.rutgers.edu) </li>
+  </ul>
+  <br>
+ <br>
+  <br>
+ <br>
+  <br>
+  <h3></h3>
+  <h3> </h3>
+  <br>
+  </body>
+  </html>
diff --git a/Utilities/ITK/UseITK.cmake.in b/Utilities/ITK/UseITK.cmake.in
new file mode 100644
index 0000000000..ed04e28282
--- /dev/null
+++ b/Utilities/ITK/UseITK.cmake.in
@@ -0,0 +1,113 @@
+#
+# This file sets up include directories, link directories, and
+# compiler settings for a project to use ITK.  It should not be
+# included directly, but rather through the ITK_USE_FILE setting
+# obtained from ITKConfig.cmake.
+#
+
+IF(ITK_BUILD_SETTINGS_FILE)
+  INCLUDE(${CMAKE_ROOT}/Modules/CMakeImportBuildSettings.cmake)
+  CMAKE_IMPORT_BUILD_SETTINGS(${ITK_BUILD_SETTINGS_FILE})
+ENDIF(ITK_BUILD_SETTINGS_FILE)
+
+# Add compiler flags needed to use ITK.
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${ITK_REQUIRED_C_FLAGS}")
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ITK_REQUIRED_CXX_FLAGS}")
+SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${ITK_REQUIRED_LINK_FLAGS}")
+SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${ITK_REQUIRED_LINK_FLAGS}")
+SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${ITK_REQUIRED_LINK_FLAGS}")
+
+# Add include directories needed to use ITK.
+INCLUDE_DIRECTORIES(BEFORE ${ITK_INCLUDE_DIRS})
+
+# Add link directories needed to use ITK.
+LINK_DIRECTORIES(${ITK_LIBRARY_DIRS})
+
+# Load settings fro the system VXL with which ITK was built, if any.
+IF(ITK_USE_SYSTEM_VXL)
+  # If VXL has already been found, make sure it is the one used to
+  # build ITK.
+  IF(WIN32 OR APPLE)
+    STRING(TOLOWER "${VXL_DIR}" ITK_CHECK_VXL_DIR)
+    STRING(TOLOWER "${ITK_VXL_DIR}" ITK_CHECK_ITK_VXL_DIR)
+  ELSE(WIN32 OR APPLE)
+    SET(ITK_CHECK_VXL_DIR "${VXL_DIR}")
+    SET(ITK_CHECK_ITK_VXL_DIR "${ITK_VXL_DIR}")
+  ENDIF(WIN32 OR APPLE)
+  STRING(COMPARE EQUAL "${ITK_CHECK_VXL_DIR}" "${ITK_CHECK_ITK_VXL_DIR}"
+         ITK_VXL_DIR_MATCH)
+  IF(VXL_FOUND)
+    IF(NOT ITK_VXL_DIR_MATCH)
+      MESSAGE(FATAL_ERROR
+        "ITK was built with VXL from \"${ITK_VXL_DIR}\", "
+        "but this project is using VXL from \"${VXL_DIR}\".  "
+        "Please set VXL_DIR to match the one used to build ITK."
+        )
+    ENDIF(NOT ITK_VXL_DIR_MATCH)
+  ELSE(VXL_FOUND)
+    IF(VXL_DIR)
+      IF(NOT ITK_VXL_DIR_MATCH)
+        MESSAGE(
+          "Warning: ITK was built with VXL from \"${ITK_VXL_DIR}\", "
+          "but this project has set VXL_DIR to \"${VXL_DIR}\".  "
+          "ITK is changing VXL_DIR to match the VXL with which it was built."
+          )
+      ENDIF(NOT ITK_VXL_DIR_MATCH)
+    ENDIF(VXL_DIR)
+    SET(VXL_DIR ${ITK_VXL_DIR})
+    FIND_PACKAGE(VXL)
+    IF(VXL_FOUND)
+      INCLUDE(${VXL_CMAKE_DIR}/UseVXL.cmake)
+    ELSE(VXL_FOUND)
+      MESSAGE(FATAL_ERROR
+        "UseITK could not load VXL settings from \"${VXL_DIR}\" even through "
+        "ITK was built using VXL from this location."
+        )
+    ENDIF(VXL_FOUND)
+  ENDIF(VXL_FOUND)
+ENDIF(ITK_USE_SYSTEM_VXL)
+
+
+# Load settings from the system GDCM with which ITK was built, if any.
+IF(ITK_USE_SYSTEM_GDCM)
+  # If GDCM has already been found, make sure it is the one used to
+  # build ITK.
+  IF(WIN32 OR APPLE)
+    STRING(TOLOWER "${GDCM_DIR}" ITK_CHECK_GDCM_DIR)
+    STRING(TOLOWER "${ITK_GDCM_DIR}" ITK_CHECK_ITK_GDCM_DIR)
+  ELSE(WIN32 OR APPLE)
+    SET(ITK_CHECK_GDCM_DIR "${GDCM_DIR}")
+    SET(ITK_CHECK_ITK_GDCM_DIR "${ITK_GDCM_DIR}")
+  ENDIF(WIN32 OR APPLE)
+  STRING(COMPARE EQUAL "${ITK_CHECK_GDCM_DIR}" "${ITK_CHECK_ITK_GDCM_DIR}"
+         ITK_GDCM_DIR_MATCH)
+  IF(GDCM_FOUND)
+    IF(NOT ITK_GDCM_DIR_MATCH)
+      MESSAGE(FATAL_ERROR
+        "ITK was built with GDCM from \"${ITK_GDCM_DIR}\", "
+        "but this project is using GDCM from \"${GDCM_DIR}\".  "
+        "Please set GDCM_DIR to match the one used to build ITK."
+        )
+    ENDIF(NOT ITK_GDCM_DIR_MATCH)
+  ELSE(GDCM_FOUND)
+    IF(GDCM_DIR)
+      IF(NOT ITK_GDCM_DIR_MATCH)
+        MESSAGE(
+          "Warning: ITK was built with GDCM from \"${ITK_GDCM_DIR}\", "
+          "but this project has set GDCM_DIR to \"${GDCM_DIR}\".  "
+          "ITK is changing GDCM_DIR to match the GDCM with which it was built."
+          )
+      ENDIF(NOT ITK_GDCM_DIR_MATCH)
+    ENDIF(GDCM_DIR)
+    SET(GDCM_DIR ${ITK_GDCM_DIR})
+    FIND_PACKAGE(GDCM)
+    IF(GDCM_FOUND)
+      INCLUDE(${GDCM_USE_FILE})
+    ELSE(GDCM_FOUND)
+      MESSAGE(FATAL_ERROR
+        "UseITK could not load GDCM settings from \"${GDCM_DIR}\" even through "
+        "ITK was built using GDCM from this location."
+        )
+    ENDIF(GDCM_FOUND)
+  ENDIF(GDCM_FOUND)
+ENDIF(ITK_USE_SYSTEM_GDCM)
diff --git a/Utilities/ITK/itkConfigure.h.in b/Utilities/ITK/itkConfigure.h.in
new file mode 100644
index 0000000000..06b6b77fef
--- /dev/null
+++ b/Utilities/ITK/itkConfigure.h.in
@@ -0,0 +1,81 @@
+/*=========================================================================
+
+  Program:   Insight Segmentation & Registration Toolkit
+  Module:    $RCSfile: itkConfigure.h.in,v $
+  Language:  C++
+  Date:      $Date: 2008-04-08 19:58:50 $
+  Version:   $Revision: 1.26 $
+
+  Copyright (c) Insight Software Consortium. All rights reserved.
+  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.
+
+     This software is distributed WITHOUT ANY WARRANTY; without even
+     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+     PURPOSE.  See the above copyright notices for more information.
+
+=========================================================================*/
+
+/* 
+ * here is where system computed values get stored these values should only
+ * change when the target compile platform changes 
+ */
+
+/* what byte order */
+
+#cmakedefine CMAKE_WORDS_BIGENDIAN 
+#ifdef CMAKE_WORDS_BIGENDIAN
+   #define ITK_WORDS_BIGENDIAN 
+#endif
+
+/* what threading system are we using */
+#cmakedefine CMAKE_USE_PTHREADS
+#ifdef CMAKE_USE_PTHREADS
+#define ITK_USE_PTHREADS
+#endif
+
+#cmakedefine CMAKE_USE_SPROC
+#ifdef CMAKE_USE_SPROC
+#define ITK_USE_SPROC
+#endif
+
+#cmakedefine CMAKE_HP_PTHREADS
+#ifdef CMAKE_HP_PTHREADS
+#define ITK_HP_PTHREADS
+#endif
+
+#cmakedefine CMAKE_USE_WIN32_THREADS
+#ifdef CMAKE_USE_WIN32_THREADS
+#define ITK_USE_WIN32_THREADS
+#endif
+
+#cmakedefine ITK_BUILD_SHARED_LIBS
+#ifdef ITK_BUILD_SHARED_LIBS
+#define ITKDLL
+#else
+#define ITKSTATIC
+#endif
+
+#cmakedefine CMAKE_NO_STD_NAMESPACE
+#cmakedefine CMAKE_NO_ANSI_STREAM_HEADERS
+#cmakedefine CMAKE_NO_ANSI_STRING_STREAM
+#cmakedefine CMAKE_NO_ANSI_FOR_SCOPE
+#cmakedefine ITK_CPP_FUNCTION
+#cmakedefine ITK_LEGACY_REMOVE
+#cmakedefine ITK_LEGACY_SILENT
+#cmakedefine ITK_USE_CONCEPT_CHECKING
+#cmakedefine ITK_USE_STRICT_CONCEPT_CHECKING
+#cmakedefine ITK_EXPLICIT_INSTANTIATION
+#cmakedefine USE_FFTWF
+#cmakedefine USE_FFTWD
+#cmakedefine ITK_USE_MINC2
+#cmakedefine ITK_USE_OPTIMIZED_REGISTRATION_METHODS
+#cmakedefine ITK_USE_TRANSFORM_IO_FACTORIES
+#cmakedefine ITK_USE_ORIENTED_IMAGE_DIRECTION
+#cmakedefine ITK_USE_TEMPLATE_META_PROGRAMMING_LOOP_UNROLLING
+#cmakedefine ITK_USE_DEPRECATED_LEVELSET_INTERPOLATION
+#cmakedefine ITK_USE_REVIEW
+
+#define ITK_VERSION_MAJOR @ITK_VERSION_MAJOR@
+#define ITK_VERSION_MINOR @ITK_VERSION_MINOR@
+#define ITK_VERSION_PATCH @ITK_VERSION_PATCH@
+#define ITK_VERSION_STRING "@ITK_VERSION_STRING@"
diff --git a/Utilities/ITK/itkGenerateITKConfig.cmake b/Utilities/ITK/itkGenerateITKConfig.cmake
new file mode 100644
index 0000000000..e73017f60f
--- /dev/null
+++ b/Utilities/ITK/itkGenerateITKConfig.cmake
@@ -0,0 +1,95 @@
+# Generate the ITKConfig.cmake file in the build tree.  Also configure
+# one for installation.  The file tells external projects how to use
+# ITK.
+
+IF(ITK_USE_SYSTEM_VXL)
+  SET(ITK_VXL_DIR ${VXL_DIR})
+ELSE(ITK_USE_SYSTEM_VXL)
+  SET(ITK_VXL_DIR)
+ENDIF(ITK_USE_SYSTEM_VXL)
+
+# System GDCM
+IF(ITK_USE_SYSTEM_GDCM)
+  SET(ITK_GDCM_DIR ${GDCM_DIR})
+ELSE(ITK_USE_SYSTEM_GDCM)
+  SET(ITK_GDCM_DIR)
+ENDIF(ITK_USE_SYSTEM_GDCM)
+
+#-----------------------------------------------------------------------------
+# Settings specific to the build tree.
+
+# The "use" file.
+SET(ITK_USE_FILE ${ITK_BINARY_DIR}/UseITK.cmake)
+
+# The library dependencies file.
+SET(ITK_LIBRARY_DEPENDS_FILE ${ITK_BINARY_DIR}/ITKLibraryDepends.cmake)
+
+# The build settings file.
+SET(ITK_BUILD_SETTINGS_FILE ${ITK_BINARY_DIR}/ITKBuildSettings.cmake)
+
+# Library directory.
+SET(ITK_LIBRARY_DIRS_CONFIG ${ITK_LIBRARY_PATH})
+
+# Determine the include directories needed.
+SET(ITK_INCLUDE_DIRS_CONFIG
+  ${ITK_INCLUDE_DIRS_BUILD_TREE}
+  ${ITK_INCLUDE_DIRS_SOURCE_TREE}
+  ${ITK_INCLUDE_DIRS_SYSTEM}
+)
+
+# The CableSwig configuration directory.
+IF(ITK_NEED_CableSwig)
+  # Use the same CableSwig we used.
+  SET(ITK_CableSwig_DIR_CONFIG ${CableSwig_DIR})
+ELSE(ITK_NEED_CableSwig)
+  # No wrapping was done.  Do not provide a CableSwig setting.
+  SET(ITK_CableSwig_DIR_CONFIG "")
+ENDIF(ITK_NEED_CableSwig)
+
+#-----------------------------------------------------------------------------
+# Configure ITKConfig.cmake for the build tree.
+CONFIGURE_FILE(${ITK_SOURCE_DIR}/ITKConfig.cmake.in
+               ${ITK_BINARY_DIR}/ITKConfig.cmake @ONLY IMMEDIATE)
+
+#-----------------------------------------------------------------------------
+# Settings specific to the install tree.
+
+# The "use" file.
+SET(ITK_USE_FILE ${CMAKE_INSTALL_PREFIX}${ITK_INSTALL_LIB_DIR}/UseITK.cmake)
+
+# The library dependencies file.
+SET(ITK_LIBRARY_DEPENDS_FILE
+    ${CMAKE_INSTALL_PREFIX}${ITK_INSTALL_LIB_DIR}/ITKLibraryDepends.cmake)
+
+# The build settings file.
+SET(ITK_BUILD_SETTINGS_FILE
+    ${CMAKE_INSTALL_PREFIX}${ITK_INSTALL_LIB_DIR}/ITKBuildSettings.cmake)
+
+# Include directories.
+SET(ITK_INCLUDE_DIRS_CONFIG
+  ${ITK_INCLUDE_DIRS_INSTALL_TREE}
+  ${ITK_INCLUDE_DIRS_SYSTEM}
+)
+
+# Link directories.
+SET(ITK_LIBRARY_DIRS_CONFIG ${CMAKE_INSTALL_PREFIX}${ITK_INSTALL_LIB_DIR})
+
+# The CableSwig configuration directory.
+IF(ITK_NEED_CableSwig)
+  IF(ITK_BUILD_CABLESWIG)
+    # We built an internal CableSwig.
+    SET(ITK_CableSwig_DIR_CONFIG
+      ${CMAKE_INSTALL_PREFIX}${CableSwig_INSTALL_ROOT}/lib/CableSwig)
+  ELSE(ITK_BUILD_CABLESWIG)
+    # We built with an external CableSwig.
+    SET(ITK_CableSwig_DIR_CONFIG ${CableSwig_DIR})
+  ENDIF(ITK_BUILD_CABLESWIG)
+ELSE(ITK_NEED_CableSwig)
+  # No wrapping was done.  Do not provide a CableSwig setting.
+  SET(ITK_CableSwig_DIR_CONFIG "")
+ENDIF(ITK_NEED_CableSwig)
+
+#-----------------------------------------------------------------------------
+# Configure ITKConfig.cmake for the install tree.
+CONFIGURE_FILE(${ITK_SOURCE_DIR}/ITKConfig.cmake.in
+               ${ITK_BINARY_DIR}/Utilities/ITKConfig.cmake @ONLY IMMEDIATE)
diff --git a/Utilities/ITK/itkIncludeDirectories.cmake b/Utilities/ITK/itkIncludeDirectories.cmake
new file mode 100644
index 0000000000..78bb813aa2
--- /dev/null
+++ b/Utilities/ITK/itkIncludeDirectories.cmake
@@ -0,0 +1,185 @@
+#-----------------------------------------------------------------------------
+# Include directories for other projects installed on the system.
+SET(ITK_INCLUDE_DIRS_SYSTEM "")
+
+IF(ITK_USE_SYSTEM_VXL)
+  # System VXL include directories.
+  SET(ITK_INCLUDE_DIRS_SYSTEM ${ITK_INCLUDE_DIRS_SYSTEM}
+    ${VXL_VCL_INCLUDE_DIR} ${VXL_CORE_INCLUDE_DIR}
+    )
+ENDIF(ITK_USE_SYSTEM_VXL)
+
+IF(ITK_USE_SYSTEM_GDCM)
+  SET(ITK_INCLUDE_DIRS_SYSTEM ${GDCM_DIR})
+ENDIF(ITK_USE_SYSTEM_GDCM)
+
+#-----------------------------------------------------------------------------
+# Include directories from the build tree.
+SET(ITK_INCLUDE_DIRS_BUILD_TREE ${ITK_BINARY_DIR})
+
+# These directories are always needed.
+SET(ITK_INCLUDE_DIRS_BUILD_TREE ${ITK_INCLUDE_DIRS_BUILD_TREE}
+  ${ITK_SOURCE_DIR}/Code/Algorithms
+  ${ITK_SOURCE_DIR}/Code/BasicFilters
+  ${ITK_SOURCE_DIR}/Code/Common
+  ${ITK_SOURCE_DIR}/Code/Numerics
+  ${ITK_SOURCE_DIR}/Code/IO
+  ${ITK_SOURCE_DIR}/Code/Numerics/FEM
+  ${ITK_SOURCE_DIR}/Code/Numerics/Statistics
+  ${ITK_SOURCE_DIR}/Code/Numerics/NeuralNetworks
+  ${ITK_SOURCE_DIR}/Code/SpatialObject
+  ${ITK_SOURCE_DIR}/Utilities/MetaIO
+  ${ITK_SOURCE_DIR}/Utilities/NrrdIO
+  ${ITK_BINARY_DIR}/Utilities/NrrdIO
+  ${ITK_SOURCE_DIR}/Utilities/DICOMParser
+  ${ITK_BINARY_DIR}/Utilities/DICOMParser
+  ${ITK_BINARY_DIR}/Utilities/expat
+  ${ITK_SOURCE_DIR}/Utilities/expat
+  ${ITK_SOURCE_DIR}/Utilities/nifti/niftilib
+  ${ITK_SOURCE_DIR}/Utilities/nifti/znzlib
+  ${ITK_SOURCE_DIR}/Utilities/itkExtHdrs
+  ${ITK_BINARY_DIR}/Utilities
+  ${ITK_SOURCE_DIR}/Utilities
+)
+
+# For explicit instantiation.  Probably should make it ${ITK_BINARY_DIR}/Code/Common
+IF(ITK_EXPLICIT_INSTANTIATION)
+  SET(ITK_INCLUDE_DIRS_BUILD_TREE ${ITK_INCLUDE_DIRS_BUILD_TREE}
+    ${ITK_BINARY_DIR}/Code/Common
+    )
+ENDIF(ITK_EXPLICIT_INSTANTIATION)
+
+# Directories needed when using FFTW
+IF(USE_FFTWF OR USE_FFTWD)
+SET(ITK_INCLUDE_DIRS_BUILD_TREE ${ITK_INCLUDE_DIRS_BUILD_TREE}
+  ${FFTW_INCLUDE_PATH}
+)
+ENDIF(USE_FFTWF OR USE_FFTWD)
+
+# VXL include directories.
+IF(NOT ITK_USE_SYSTEM_VXL)
+  SET(ITK_INCLUDE_DIRS_BUILD_TREE ${ITK_INCLUDE_DIRS_BUILD_TREE}
+    ${ITK_SOURCE_DIR}/Utilities/vxl/v3p/netlib
+    ${ITK_SOURCE_DIR}/Utilities/vxl/vcl
+    ${ITK_SOURCE_DIR}/Utilities/vxl/core
+    ${ITK_BINARY_DIR}/Utilities/vxl/v3p/netlib
+    ${ITK_BINARY_DIR}/Utilities/vxl/vcl
+    ${ITK_BINARY_DIR}/Utilities/vxl/core
+    )
+ENDIF(NOT ITK_USE_SYSTEM_VXL)
+
+# GDCM include directories.
+IF(NOT ITK_USE_SYSTEM_GDCM)
+  SET(ITK_INCLUDE_DIRS_BUILD_TREE ${ITK_INCLUDE_DIRS_BUILD_TREE}
+    ${ITK_BINARY_DIR}/Utilities/gdcm
+    ${ITK_SOURCE_DIR}/Utilities/gdcm/src
+    )
+ENDIF(NOT ITK_USE_SYSTEM_GDCM)
+
+# LIBXML2 include directories.
+IF(ITK_USE_LIBXML2)
+  SET(ITK_INCLUDE_DIRS_BUILD_TREE ${ITK_INCLUDE_DIRS_BUILD_TREE}
+    ${ITK_BINARY_DIR}/Utilities/itklibxml2
+    )
+ENDIF(ITK_USE_LIBXML2)
+
+# Patended include directories added only if the user explicitly enabled the
+# ITK_USE_PATENTED option. Users are responsible for getting a license from the
+# patent holders in order to use any of those methods.
+IF(ITK_USE_PATENTED)
+  SET(ITK_INCLUDE_DIRS_BUILD_TREE ${ITK_INCLUDE_DIRS_BUILD_TREE}
+    ${ITK_SOURCE_DIR}/Code/Patented
+    )
+ENDIF(ITK_USE_PATENTED)
+
+
+# Review include directories added only if the user explicitly enabled the
+# ITK_USE_REVIEW option. Users are responsible for getting a license from the
+# copyright holders in order to use any of those methods. The methods are not
+# covered by the backward compatibility policy either.
+IF(ITK_USE_REVIEW)
+  SET(ITK_INCLUDE_DIRS_BUILD_TREE ${ITK_INCLUDE_DIRS_BUILD_TREE}
+    ${ITK_SOURCE_DIR}/Code/Review
+    )
+ENDIF(ITK_USE_REVIEW)
+
+
+#-----------------------------------------------------------------------------
+# Include directories needed for .cxx files in ITK.  These include
+# directories will NOT be available to user projects.
+SET(ITK_INCLUDE_DIRS_BUILD_TREE_CXX)
+IF(ITK_USE_SYSTEM_VXL)
+  SET(ITK_INCLUDE_DIRS_BUILD_TREE_CXX ${ITK_INCLUDE_DIRS_BUILD_TREE_CXX}
+    ${VXL_NETLIB_INCLUDE_DIR})
+ELSE(ITK_USE_SYSTEM_VXL)
+  SET(ITK_INCLUDE_DIRS_BUILD_TREE_CXX ${ITK_INCLUDE_DIRS_BUILD_TREE_CXX}
+    ${ITK_SOURCE_DIR}/Utilities/vxl/v3p/netlib)
+ENDIF(ITK_USE_SYSTEM_VXL)
+
+#-----------------------------------------------------------------------------
+# Include directories from the install tree.
+SET(ITK_INSTALL_INCLUDE_PATH "${CMAKE_INSTALL_PREFIX}${ITK_INSTALL_INCLUDE_DIR}")
+SET(ITK_INCLUDE_RELATIVE_DIRS ${ITK_INCLUDE_RELATIVE_DIRS}
+  Algorithms
+  BasicFilters
+  Common
+  Numerics
+  IO
+  Numerics/FEM
+  Numerics/Statistics
+  Numerics/NeuralNetworks
+  SpatialObject
+  Utilities/MetaIO
+  Utilities/NrrdIO
+  Utilities/DICOMParser
+  Utilities/expat
+  Utilities/nifti/niftilib
+  Utilities/nifti/znzlib
+  Utilities/itkExtHdrs
+  Utilities
+)
+
+IF(NOT ITK_USE_SYSTEM_VXL)
+  SET(ITK_INCLUDE_RELATIVE_DIRS ${ITK_INCLUDE_RELATIVE_DIRS}
+    Utilities/vxl/v3p/netlib
+    Utilities/vxl/vcl
+    Utilities/vxl/core
+    )
+ENDIF(NOT ITK_USE_SYSTEM_VXL)
+
+IF(NOT ITK_USE_SYSTEM_GDCM)
+  SET(ITK_INCLUDE_RELATIVE_DIRS ${ITK_INCLUDE_RELATIVE_DIRS}
+    gdcm
+    gdcm/src
+    )
+ENDIF(NOT ITK_USE_SYSTEM_GDCM)
+
+# Patended include directories added only if the user explicitly enabled the
+# ITK_USE_PATENTED option. Users are responsible for getting a license from the
+# patent holders in order to use any of those methods.
+IF(ITK_USE_PATENTED)
+  SET(ITK_INCLUDE_RELATIVE_DIRS ${ITK_INCLUDE_RELATIVE_DIRS}
+    Patented
+    )
+ENDIF(ITK_USE_PATENTED)
+
+# Review include directories added only if the user explicitly enabled the
+# ITK_USE_REVIEW option. Users are responsible for getting a license from the
+# copyright holders in order to use any of those methods. The methods are not
+# covered by the backward compatibility policy either.
+IF(ITK_USE_REVIEW)
+  SET(ITK_INCLUDE_RELATIVE_DIRS ${ITK_INCLUDE_RELATIVE_DIRS}
+    Review
+    )
+ENDIF(ITK_USE_REVIEW)
+
+
+#-----------------------------------------------------------------------------
+# Include directories for 3rd-party utilities provided by ITK.
+ITK_THIRD_PARTY_INCLUDE2(PNG)
+ITK_THIRD_PARTY_INCLUDE2(TIFF)
+ITK_THIRD_PARTY_INCLUDE2(ZLIB)
+IF(ITK_USE_SYSTEM_LIBXML2 OR ITK_USE_LIBXML2)
+  ITK_THIRD_PARTY_INCLUDE(LIBXML2 libxml2)
+ENDIF(ITK_USE_SYSTEM_LIBXML2 OR ITK_USE_LIBXML2)
+
-- 
GitLab