]> Creatis software - creaToolsTools.git/blobdiff - Linux/scripts/ThirdParty-install.sh
export packages as well!
[creaToolsTools.git] / Linux / scripts / ThirdParty-install.sh
index 54121053283e73a0428620591623df37ceb13de2..2f4fdaf100511aea6d2ee18279b0b49e773c2196 100644 (file)
@@ -1,39 +1,70 @@
-#!/bin/sh
+#!/bin/bash
+ if [ ! -f $PWD/scripts/CreaTools-configure.sh ]
+ then 
+   echo
+   echo "..ERROR.."
+   echo "==================================================="
+   echo "REMEMBER !"
+   echo ""
+   echo "YOU NEED TO RUN 'Configure' (0) First !"
+   echo "==================================================="
+   echo
+   echo
+   exit 0
+fi 
 
 source $PWD/scripts/CreaTools-configure.sh
 
-echo "------"
-echo $PWD/scripts/CreaTools-configure.sh
-echo generationdir
-echo $generationdir
-echo docgeneration
-echo $docgeneration
-echo installPrefix
-echo $installPrefix
-echo buildType
-echo $buildType
-echo gdcmVersion
-echo $gdcmVersion
-echo sourcesFrom
-echo $sourcesFrom
-echo scriptDir
-echo $scriptDir
-echo start_point
-echo $start_point
-echo "------"
+   echo "------"
+   echo $PWD/scripts/CreaTools-configure.sh
+   echo --generationdir--
+   echo $generationdir
+   echo --corenumber--
+   echo $corenumber   
+   echo --docgeneration--
+   echo $docgeneration
+   echo --installPrefix--
+   echo $installPrefix
+   echo --installPrefixThird--
+   echo $installPrefixThird
+   echo --buildType--
+   echo $buildType
+   echo --gdcmVersion--
+   echo $gdcmVersion
+#   echo --sourcesFrom--
+#   echo $sourcesFrom
+#   echo --scriptDir--
+#   echo $scriptDir
+#   echo --start_point--
+#   echo $start_point
+   echo "------"
+
 
 scriptDir=$PWD
 sourcesDir=$generationdir/thirdparty_sources
 binDir=$generationdir/thirdparty_bin
 
-mkdir $generationdir
-mkdir $sourcesDir
-mkdir $binDir
+if [ ! -e $generationdir ]
+then
+   mkdir $generationdir
+   chown $loginUserName:$loginGroupName $generationdir
+fi
+if [ ! -e $sourcesDir ]
+then
+   mkdir $sourcesDir
+   chown $loginUserName:$loginGroupName $sourcesDir   
+fi
+
+if [ ! -e $binDir ]
+then
+   mkdir $binDir
+   chown $loginUserName:$loginGroupName $binDir     
+fi
 
-rm $installPrefix/share/creatools_third_party_library_config.sh
 
 # the following stupid test is used at debug time; Please don't remove!
 if [ true = true ]
+#if [ true = false ]
 then
 
   case "$OperatingSystem" in
@@ -97,6 +128,7 @@ fi
 
 
 # the following stupid test is used at debug time; Please don't remove!
+#if [ true = false ]
 if [ true = true ]
 then
   rm -rf $sourcesDir/VTK*
@@ -104,53 +136,63 @@ then
   rm -rf $sourcesDir/InsightToolkit*
   rm -rf $sourcesDir/gdcm*
   rm -rf $sourcesDir/tth*
+
+  rm -rf $binDir/gdcm*
+  rm -rf $binDir/InsightToolkit*
+  rm -rf $binDir/VTK*
   cd $sourcesDir
-  wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_ThirdParty_Libraries/source/vtk-5.6.1.tar.gz
-  wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_ThirdParty_Libraries/source/gdcm_08_Dic_2009.tar.gz
+  wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_ThirdParty_Libraries/source/VTK-5.6.1.patchCreatis.tar.gz
+  wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_ThirdParty_Libraries/source/gdcm_05_Mai_2011.tar.gz
   wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_ThirdParty_Libraries/source/InsightToolkit-3.20.0.tar.gz
   wget http://www.creatis.insa-lyon.fr/software/public/creatools/crea_Developer_Tools/All_Versions/tth/tth_linux/tth
 
-  tar -xvzf vtk-5.6.1.tar.gz
-  tar -xvzf gdcm_08_Dic_2009.tar.gz
+  tar -xvzf VTK-5.6.1.patchCreatis.tar.gz
+  tar -xvzf gdcm_05_Mai_2011.tar.gz
   tar -xvzf InsightToolkit-3.20.0.tar.gz
 fi
 
 
-
 if [ $buildType = "Debug" ]
 then
-debug="ON"
+   debug="ON"
 else
-debug="OFF"
+   debug="OFF"
 fi
 
 
+# the following stupid test is used at debug time; Please don't remove!
+#if [ true = false ]
 if [ true = true ]
 then
   libname=VTK
   dirInstall=$binDir/$libname-Bin
   dirInstallVTK=$dirInstall
-  VTK_DIR=$installPrefix/lib/vtk-5.6/
+  export VTK_DIR=$installPrefixThird/lib/vtk-5.6/
+  mkdir $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=$installPrefix CMakeCache.txt
+  cmake -D USE_DEBUG_LIB:BOOL=$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 VTK_USE_QT:BOOL=ON CMakeCache.txt
-  make -j 2
+  make -j $corenumber
   make install
   cd ..
 fi
 
+
+# the following stupid test is used at debug time; Please don't remove!
+#if [ true = false ]
 if [ true = true ]
 then
   libname=gdcm
   dirInstall=$binDir/$libname-Bin
-  GDCM_DIR=$installPrefix/lib/gdcm/
+  export GDCM_DIR=$installPrefixThird/lib/gdcm/
   mkdir $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=$installPrefix CMakeCache.txt
+  cmake -D USE_DEBUG_LIB:BOOL=$buildType -D CMAKE_INSTALL_PREFIX:PATH=$installPrefixThird CMakeCache.txt
   cmake -D VTK_DIR:PATH=$dirInstallVTK CMakeCache.txt
   cmake -D GDCM_VTK:BOOL=ON -D GDCM_NAME_SPACE:STRING=gdcm13 CMakeCache.txt
   make -j 2
@@ -158,49 +200,80 @@ then
   cd ..
 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
-  ITK_DIR=$installPrefix/lib/InsightToolkit/
+  export ITK_DIR=$installPrefixThird/lib/InsightToolkit/
   mkdir $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=$installPrefix CMakeCache.txt
+  cmake -D USE_DEBUG_LIB:BOOL=$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
+  #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 2
   make install
   cd ..
 fi
 
-
+#if [ true = false ]
 if [ true = true ]
 then
   cd $sourcesDir
-  cp tth $installPrefix/bin
+  cp tth $installPrefixThird/bin
 fi
 
+
 #deal with create creatools_third_party_libraries_config.sh
 
-touch     $installPrefix/share/creatools_third_party_library_config.sh
-chmod 755 $installPrefix/share/creatools_third_party_library_config.sh
+if [ -f $installPrefixThird/share/creatools_third_party_library_config.sh ]
+then
+   rm $installPrefixThird/share/creatools_third_party_library_config.sh
+fi
+
+if [ ! -e $installPrefixThird/share ]
+then
+   mkdir $installPrefixThird/share
+fi
+touch     $installPrefixThird/share/creatools_third_party_library_config.sh
+chmod 755 $installPrefixThird/share/creatools_third_party_library_config.sh
 
-echo export PATH='$'PATH:$installPrefix/bin                            >> $installPrefix/share/creatools_third_party_library_config.sh
-echo export VTK_DIR=$installPrefix/lib/vtk-5.6                         >> $installPrefix/share/creatools_third_party_library_config.sh
-echo export ITK_DIR=$installPrefix/lib/InsightToolkit                  >> $installPrefix/share/creatools_third_party_library_config.sh
-echo export GDCM_DIR=$installPrefix/lib/gdcm                   >> $installPrefix/share/creatools_third_party_library_config.sh
-echo export TTH=$installPrefix/bin/tth                         >> $installPrefix/share/creatools_third_party_library_config.sh
-echo export LD_LIBRARY_PATH='$'LD_LIBRARY_PATH:$GDCM_DIR       >> $installPrefix/share/creatools_third_party_library_config.sh
-echo export LD_LIBRARY_PATH='$'LD_LIBRARY_PATH:$ITK_DIR        >> $installPrefix/share/creatools_third_party_library_config.sh
-echo export LD_LIBRARY_PATH='$'LD_LIBRARY_PATH:$VTK_DIR        >> $installPrefix/share/creatools_third_party_library_config.sh
+echo export PATH='$'PATH:$installPrefixThird/bin           >> $installPrefixThird/share/creatools_third_party_library_config.sh
+echo export VTK_DIR=$installPrefixThird/lib/vtk-5.6        >> $installPrefixThird/share/creatools_third_party_library_config.sh
+echo export ITK_DIR=$installPrefixThird/lib/InsightToolkit >> $installPrefixThird/share/creatools_third_party_library_config.sh
+echo export GDCM_DIR=$installPrefixThird/lib/gdcm          >> $installPrefixThird/share/creatools_third_party_library_config.sh
+echo export TTH=$installPrefixThird/bin/tth                >> $installPrefixThird/share/creatools_third_party_library_config.sh
+echo export LD_LIBRARY_PATH='$'LD_LIBRARY_PATH:$GDCM_DIR   >> $installPrefixThird/share/creatools_third_party_library_config.sh
+echo export LD_LIBRARY_PATH='$'LD_LIBRARY_PATH:$ITK_DIR    >> $installPrefixThird/share/creatools_third_party_library_config.sh
+echo export LD_LIBRARY_PATH='$'LD_LIBRARY_PATH:$VTK_DIR    >> $installPrefixThird/share/creatools_third_party_library_config.sh
 
 #  modify .bashrc
-# - remove line 'sh $installPrefix/share/creatools_third_party_library_config.sh' if any (with accurate value for ???)
-sed -i -e '/.*creatools_third_party_library_config.*/ d' /etc/bashrc
+# - remove line 'bash $installPrefixThird/share/creatools_third_party_library_config.sh' if any (with accurate value for ???)
+
+# Install creatools as user (no longer as root) // JPR 2/5/2011
+#if [ ! -f /etc/bashrc ]
+#then
+#    export ETC_BASHRC="/etc/bash.bashrc"
+#else
+#    export ETC_BASHRC="/etc/bashrc"
+#fi
+
+export ETC_BASHRC=$HOME/.bashrc
+
+   sed -i -e '/.*installPrefixThird*/ d' $ETC_BASHRC
+   sed -i -e '/.*creatools_third_party_library_config.*/ d' $ETC_BASHRC
+
+
+# - add line 'bash $installPrefixThird/share/creatools_third_party_library_config.sh' (with accurate value for ???)
+echo installPrefixThird=$installPrefixThird >> $ETC_BASHRC
+echo '[ -f "$installPrefixThird/share/creatools_third_party_library_config.sh" ] &&  source $installPrefixThird/share/creatools_third_party_library_config.sh' >> $ETC_BASHRC 
+
 
-# - add line 'sh $installPrefix/share/creatools_third_party_library_config.sh' (with accurate value for ???)
-echo source $installPrefix/share/creatools_third_party_library_config.sh >> /etc/bashrc 
 
+ chown -R $loginUserName:$loginGroupName $generationdir