]> Creatis software - creaToolsTools.git/blobdiff - Linux/scripts/ThirdParty-install-ITK.sh
#3044 creaToolsTools Bug New Normal - Fedora 24 ThirdParty library conflict with...
[creaToolsTools.git] / Linux / scripts / ThirdParty-install-ITK.sh
index d4ef1474665ea22941dcea07a8a68e862d265b13..e6aaafa92738b467ee4c2892ca3140894595def0 100644 (file)
@@ -1,3 +1,27 @@
+# ---------------------------------------------------------------------
+#
+# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image 
+#                        pour la Santé)
+# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
+#
+#  This software is governed by the CeCILL-B license under French law and 
+#  abiding by the rules of distribution of free software. You can  use, 
+#  modify and/ or redistribute the software under the terms of the CeCILL-B 
+#  license as circulated by CEA, CNRS and INRIA at the following URL 
+#  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html 
+#  or in the file LICENSE.txt.
+#
+#  As a counterpart to the access to the source code and  rights to copy,
+#  modify and redistribute granted by the license, users are provided only
+#  with a limited warranty  and the software's author,  the holder of the
+#  economic rights,  and the successive licensors  have only  limited
+#  liability. 
+#
+#  The fact that you are presently reading this means that you have had
+#  knowledge of the CeCILL-B license and that you accept its terms.
+# ------------------------------------------------------------------------  
+
+
 #!/bin/bash
 
  echo  "in ThirdParty-install-ITK.sh, source " $PWD/scripts/CreaTools-configure.sh
@@ -48,72 +72,104 @@ source $PWD/scripts/CreaTools-configure.sh
 scriptDir=$PWD
 sourcesDir=$generationdir/thirdparty_sources
 binDir=$generationdir/thirdparty_bin
+#EED itkfile=InsightToolkit-3.20.0.patchCreatis.tar.gz
 
 if [ ! -e $generationdir ]
 then
-   mkdir $generationdir
-   chown $loginUserName  $generationdir
-   chgrp $loginGroupName $generationdir
+   mkdir -p $generationdir
+   chown -R $loginUserName  $generationdir
+   chgrp -R $loginGroupName $generationdir
 
 fi
 if [ ! -e $sourcesDir ]
 then
-   mkdir $sourcesDir
+   mkdir -p $sourcesDir
    #was : (pb on MacOS?)
-   #chown $loginUserName:$loginGroupName $sourcesDir
-   chown $loginUserName  $sourcesDir
-   chgrp $loginGroupName $sourcesDir
+   #chown -R $loginUserName:$loginGroupName $sourcesDir
+   chown -R $loginUserName  $sourcesDir
+   chgrp -R $loginGroupName $sourcesDir
 fi
 
 if [ ! -e $binDir ]
 then
-   mkdir $binDir
-   chown $loginUserName  $binDir
-   chgrp $loginGroupName $binDir
+   mkdir -p $binDir
+   chown -R $loginUserName  $binDir
+   chgrp -R $loginGroupName $binDir
 fi
 
   echo "we remove old stuff"
-  rm -rf $sourcesDir/InsightToolkit*
-  rm -rf $binDir/InsightToolkit*
-
+  if [ $ITKVersion = ITK3 ]
+  then
+     rm -rf $sourcesDir/InsightToolkit*
+     rm -rf $binDir/InsightToolkit*
+  else
+     rm -rf $sourcesDir/ITK*
+     rm -rf $binDir/ITKt*
+  fi
   cd $sourcesDir
 
  echo "we download new stuff"
- if [ $OperatingSystem = "MacOS" ]
- then
-  curl -O http://www.creatis.insa-lyon.fr/software/public/creatools/crea_ThirdParty_Libraries/source/InsightToolkit-3.20.0.tar.gz
-  # MacOS, clever enough to understand it *has* to uncompress, doesn't understand tar -z :-(
-  tar -xvf InsightToolkit-3.20.0.tar.gz
- else
-  wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_ThirdParty_Libraries/source/InsightToolkit-3.20.0.tar.gz
-  tar -xzvf InsightToolkit-3.20.0.tar.gz
- fi
-
-if [ $buildType = "Debug" ]
-then
-   debug="ON"
-else
-   debug="OFF"
-fi
+  if [ $ITKVersion = ITK3 ]
+  then
+     # deal with ITK3
+     #EED itkfile=InsightToolkit-3.20.0.patchCreatis.tar.gz
+     #EED libname=InsightToolkit-3.20.0
+
+     #EED itkfile=InsightToolkit-3.20.1.tar.gz
+     #EED libname=InsightToolkit-3.20.1
+
+     itkfile=InsightToolkit-3.20.1-patchCreatis.tgz
+     libname=InsightToolkit-3.20.1-patchCreatis
+
+  else
+    # deal with ITK4
+    itkfile=ITK4.0.tgz
+    libname=ITK
+  fi
+
+  if [ $OperatingSystem = "MacOS" ]
+    then
+      curl -O http://www.creatis.insa-lyon.fr/~davila/creatools_back_site/crea_ThirdParty_Libraries/source/$itkfile
+  else
+##EED19mai2015      wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_ThirdParty_Libraries/source/$itkfile
+      wget http://www.creatis.insa-lyon.fr/~davila/creatools_back_site/crea_ThirdParty_Libraries/source/$itkfile
+  fi
+  tar -xzvf $itkfile
+
+
+#fi # JPR ------------1
+
+#if [ $buildType = "Debug" ]
+#then
+#   debug="ON"
+#else
+#   debug="OFF"
+#fi
 
 # the following stupid test is used at debug time; Please don't remove!
 #if [ true = false ]
 if [ true = true ]
 then
-  libname=InsightToolkit-3.20.0
+
   dirInstall=$binDir/$libname-Bin
   export ITK_DIR=$installPrefixThird/lib/InsightToolkit/
-  mkdir $dirInstall
+  mkdir -p $dirInstall
   cd $dirInstall
 
   cmake -G"Unix Makefiles" -H$sourcesDir/$libname -B$dirInstall/
   ##cmake -G"CodeBlocks - Unix Makefiles" -H$sourcesDir/$libname -B$dirInstall/
-  cmake -D USE_DEBUG_LIB:BOOL=$buildType -D CMAKE_INSTALL_PREFIX:PATH=$installPrefixThird CMakeCache.txt
+  cmake -D CMAKE_BUILD_TYPE:STRING=$buildType -D CMAKE_INSTALL_PREFIX:PATH=$installPrefixThird CMakeCache.txt
   cmake -D BUILD_EXAMPLES:BOOL=OFF -D BUILD_TESTING:BOOL=OFF -D BUILD_SHARED_LIBS:BOOL=ON -D ITK_USE_REVIEW:BOOL=ON CMakeCache.txt
+  if [ $ITKVersion = ITK4 ]
+  then
+     cmake -D ITKV3_COMPATIBILITY:BOOL=ON -D ITKGroup_Nonunit:BOOL=ON -D  ITKGroup_IO:BOOL=ON  -D Module_ITK-Deprecated:BOOL=ON -D Module_ITK-Review:BOOL=ON  CMakeCache.txt        
+  fi
+  cmake -D CMAKE_CXX_FLAGS:STRING='-std=c++03' CMakeCache.txt
+
   #uncomment following line if you want to use the bleeding edge of GDCM2!
   #cmake -D ITK_USE_SYSTEM_GDCM:BOOL=ON CMakeCache.txt
   cmake CMakeCache.txt
   make -j $corenumber
-  make install
+  make -j $corenumber install
   cd ..
 fi