]> Creatis software - creaToolsTools.git/commitdiff
#2493 creaToolsTools Feature New - NormalPrepare and Install binary CreaTools versi...
authordavila <eduardo.davila@creatis.insa-lyon.fr>
Mon, 5 Jan 2015 16:15:43 +0000 (17:15 +0100)
committerdavila <eduardo.davila@creatis.insa-lyon.fr>
Mon, 5 Jan 2015 16:15:43 +0000 (17:15 +0100)
Linux/installscript
Linux/scripts/CreaTools-GenerateBinTGZ.sh
Linux/scripts/CreaTools-install.sh
Linux/scripts/Install-Creatools-Bin.sh
Linux/scripts/LocalFunctions.sh [new file with mode: 0644]

index c8112ea419f088a586410ff75110cdebe057230c..b5209a52ddd30bd02a296e05f943fdd2e44ce87c 100755 (executable)
@@ -29,115 +29,8 @@ scriptDirName=$(dirname $(readlink -f $0) )
 ############     Local Functions  #######################################
 #########################################################################
 
-##########################################
-# check that $1 is one of $2, $3, ...
-function checkVal  {
-    local val=$1
-    shift
-    for x in $* ; do
-        if [ "$val" == "$x" ] ; then
-            echo "true"
-            return
-        fi
-    done
-    echo "false"
-}
-
-###########################################
-function bigDisplay {
-    echo " ================================================================================================"
-    echo " ================================================================================================"
-    echo " ======= $1"                                       
-    echo " ================================================================================================"
-    echo " ================================================================================================"
-}
-
-###########################################
-function checkDistrib {
-    local OS=$1
-
-    if [ "`checkVal $OS MacOS Fedora Ubuntu Mandriva`" == "false" ] ; then
-        echo "Operating System not supported: $OS"
-        echo "Currently supported system: Fedora Ubuntu MacOS"
-        exit 1
-    fi
-}
-
-###########################################
-function getDistrib {
-    local OS=`uname`
-
-      if [ "$OS" == Darwin ] ; then OS=MacOS;
-    elif [ "$OS" == Linux  ] ; then OS=`awk 'NR==1{print $1}' /etc/issue`
-    else OS=""
-    fi
-
-#    checkDistrib $OS
-
-    echo $OS
-}
-
-###########################################
-function getncore {
-    if [ `uname` == Darwin ] ; then # MacOS
-        system_profiler | grep Processor | awk '$1=="Number" {print $4}'
-    else
-        cat /proc/cpuinfo | grep processor | wc -l
-    fi
-}
-
-###########################################
-function getbashrc {
-    if [ ! -f $HOME/.bashrc ] ; then
-        touch $HOME/.bashrc
-    fi
-    echo $HOME/.bashrc
-
-
-#    # Do it, while we are under user, not under root! # JPR
-#    if [ -f $HOME/.bashrc ] ; then
-#        echo $HOME/.bashrc
-#    else
-#        if [ -f $HOME/.profile ] ; then
-#            echo $HOME/.profile
-#        else
-#            echo "=============== BIG TROUBLE : neither $HOME/.bashrc nor $HOME/.profile file found" > /dev/stderr
-#            echo "=============== You'd better abort the program and (try to) fix the issue" > /dec/stderr
-#            read a # just to let the user time enough to read the message...
-#        fi
-#    fi
-}
-
-
-###########################################
-function printconfig {
-
-    echo
-    echo "Current Configuration:"
-    echo "  Operating System                           : $OperatingSystem"
-    echo "  Number of Cores                            : $corenumber"  
-    echo "  Name of the Generation Directory           : $generationdir"
-    echo "  Install Prefix for Third Party Libraries   : $installPrefixThird"  
-    echo "  Install Prefix for CreaTools               : $installPrefix"
-    echo "  Boolean for Doc Generation                 : $docgeneration"
-    echo "  Where do you want to get source files from : $sourcesFrom"
-    echo "  Login User Name                            : $loginUserName"
-    echo "  Login Group Name                           : $loginGroupName"
-    echo "  Build type                                 : $buildType"          
-    echo "  Gdcm version                               : $gdcmVersion"
-    echo "  ITK version                                : $ITKVersion"
-    echo
-
-}
-
-
 
-##################################################################################################
-##################################################################################################
-##################################################################################################
-##################################################################################################
-##################################################################################################
-##################################################################################################
+source scripts/LocalFunctions.sh
 
 configureFile="scripts/CreaTools-configure.sh"
 
@@ -156,7 +49,7 @@ loginGroupName=`groups | awk '{print $1}'`
 buildType=Release
 gdcmVersion=GDCM1
 ITKVersion=ITK3
-export ETC_BASHRC=~/.bashrc
+export ETC_BASHRC=`getbashrc`
 
 
 function usage {
index 2b12aa41473a35cb2c320dfeead77474515ed2df..efcd59afc30eef66cba0a0d3b089b05f4fb70ab0 100644 (file)
 #if [ $UID = 0 ] 
 #then
   # Set all local variables
+  source $PWD/scripts/LocalFunctions.sh
   source $PWD/scripts/CreaTools-configure.sh
   if [ -e $generationdir ]
   then
 
          cd $generationdir
          source creatools_install/share/creatools/Version.sh 
-     fileTGZ=CreaTools-Release-$creatoolsMajorVersion.$creatoolsMinorVersion.$creatoolsBuildVersion-Linux.tgz
+     fileTGZ=CreaTools-Release-$creatoolsMajorVersion.$creatoolsMinorVersion.$creatoolsBuildVersion-`getDistrib`-`getDistribVersion`.tgz
 
      tar -cvzf $fileTGZ creatools_install thirdparty_install
+         echo ---------
+     echo        scp $fileTGZ tux.creatis.insa-lyon.fr:creatools/creaTools/v$creatoolsMajorVersion.$creatoolsMinorVersion.x/$fileTGZ 
+
          scp $fileTGZ tux.creatis.insa-lyon.fr:creatools/creaTools/v$creatoolsMajorVersion.$creatoolsMinorVersion.x/$fileTGZ 
 
+         echo "##" > creatools-Linux-BinVersion.sh
+         echo "## Generated by CreaTools-GeneratedBinTGZ.sh" >> creatools-Linux-BinVersion.sh
+         echo "##" >> creatools-Linux-BinVersion.sh
+
+         echo "wget http://www.creatis.insa-lyon.fr/software/public/creatools/creaTools/v$creatoolsMajorVersion.$creatoolsMinorVersion.x/$fileTGZ" >> creatools-DownloadLastVersion.sh 
+         echo "tar -xvzf $fileTGZ" >>  creatools-Linux-BinVersion.sh
+
+
+     echo "source creatools_install/share/creatools/LocalFunctions.sh"  >>  creatools-Linux-BinVersion.sh
+     echo "ETC_BASHRC=\`getbashrc\`" >>  creatools-Linux-BinVersion.sh
+     echo "installPrefix=$(pwd)/creatools_install" >>  creatools-Linux-BinVersion.sh
+     echo "installPrefixThird=$(pwd)/thirdparty_install" >>  creatools-Linux-BinVersion.sh
+     echo "OperatingSystem=\`getDistrib\`" >>  creatools-Linux-BinVersion.sh
 
-         echo "wget http://www.creatis.insa-lyon.fr/software/public/creatools/creaTools/v$creatoolsMajorVersion.$creatoolsMinorVersion.x/$fileTGZ" > creatools-DownloadLastVersion.sh 
-         echo "tar -xvzf $fileTGZ" >>  creatools-DownloadLastVersion.sh
+     echo "source thirdparty_install/share/creatools/ThirdParty-install-Base-Stuff.sh $OperatingSystem"  >>  creatools-Linux-BinVersion.sh
+     echo "source thirdparty_install/share/creatools/ThirdParty-bashrc.sh"  >>  creatools-Linux-BinVersion.sh
+     echo "source creatools_install/share/creatools/CreaTools-bashrc.sh"  >>  creatools-Linux-BinVersion.sh
 
-     scp creatools-DownloadLastVersion.sh tux.creatis.insa-lyon.fr:creatools/creaTools/creatools-DownloadLastVersion.sh 
+     scp creatools-Linux-BinVersion.sh tux.creatis.insa-lyon.fr:creatools/creaTools/. 
 
      echo ""
      echo ""
index a9516cc281ace4605f01dc3d7a5c2a23e41cdabe..c75afa726d94204169b3977213b82c5d7ea7efed 100644 (file)
@@ -55,6 +55,7 @@
   export baseLibraryCreatoolsDir=$installPrefix/share/creatools
   mkdir -p $baseLibraryCreatoolsDir
   cp CreaTools-bashrc.sh $baseLibraryCreatoolsDir/.
+  cp LocalFunctions.sh $baseLibraryCreatoolsDir/.
 
   #create creatools_base_library_config.sh  at the very begining, so we can write "export xxx_BIN=..." inside installmod.sh. JPRx 3 mars 2011
   echo '## This file is call from .bashrc' > $baseLibraryCreatoolsDir/creatools_base_library_config.sh
index e5698e6a7fb91f512d3dee88d5991119ed6b637f..38040b1827f0439b5b486e7d4fe46ce33dd301d6 100755 (executable)
 rm -rf Creatools
 mkdir Creatools
 cd Creatools
-wget http://www.creatis.insa-lyon.fr/software/public/creatools/creaTools/creatools-DownloadLastVersion.sh
-source creatools-DownloadLastVersion.sh
-
-ETC_BASHRC=~/.bashrc
-installPrefix=$(pwd)/creatools_install
-installPrefixThird=$(pwd)/thirdparty_install
-OperatingSystem=`getDistrib`
-
-source thirdparty_install/share/creatools/ThirdParty-install-Base-Stuff.sh $OperatingSystem
-source thirdparty_install/share/creatools/ThirdParty-bashrc.sh
-source creatools_install/share/creatools/CreaTools-bashrc.sh
-
+wget http://www.creatis.insa-lyon.fr/software/public/creatools/creaTools/creatools-Linux-BinVersion.sh
+source creatools-Linux-BinVersion.sh
 cd ..
 
diff --git a/Linux/scripts/LocalFunctions.sh b/Linux/scripts/LocalFunctions.sh
new file mode 100644 (file)
index 0000000..8d61359
--- /dev/null
@@ -0,0 +1,134 @@
+# ---------------------------------------------------------------------
+#
+# 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 -e
+
+
+
+##########################################
+# check that $1 is one of $2, $3, ...
+function checkVal  {
+    local val=$1
+    shift
+    for x in $* ; do
+        if [ "$val" == "$x" ] ; then
+            echo "true"
+            return
+        fi
+    done
+    echo "false"
+}
+
+###########################################
+function bigDisplay {
+    echo " ================================================================================================"
+    echo " ================================================================================================"
+    echo " ======= $1"                                       
+    echo " ================================================================================================"
+    echo " ================================================================================================"
+}
+
+###########################################
+function checkDistrib {
+    local OS=$1
+    if [ "`checkVal $OS MacOS Fedora Ubuntu Mandriva`" == "false" ] ; then
+        echo "Operating System not supported: $OS"
+        echo "Currently supported system: Fedora Ubuntu MacOS"
+        exit 1
+    fi
+}
+
+###########################################
+function getDistrib {
+    local OS=`uname`
+
+      if [ "$OS" == Darwin ] ; then OS=MacOS;
+    elif [ "$OS" == Linux  ] ; then OS=`awk 'NR==1{print $1}' /etc/issue`
+    else OS=""
+    fi
+# checkDistrib $OS
+    echo $OS
+}
+
+###########################################
+function getDistribVersion {
+    local OS=`uname`
+
+      if [ "$OS" == Darwin ] ; then OSVesion=VOID_Darwin_EED;
+    elif [ "$OS" == Linux  ] ; then OSVersion=`awk 'NR==1{print $3}' /etc/issue`
+    else OSVersion="VOID_EED"
+    fi
+    echo $OSVersion
+}
+
+###########################################
+function getncore {
+    if [ `uname` == Darwin ] ; then # MacOS
+        system_profiler | grep Processor | awk '$1=="Number" {print $4}'
+    else
+        cat /proc/cpuinfo | grep processor | wc -l
+    fi
+}
+
+###########################################
+function getbashrc {
+    if [ ! -f $HOME/.bashrc ] ; then
+        touch $HOME/.bashrc
+    fi
+    echo $HOME/.bashrc
+
+
+#    # Do it, while we are under user, not under root! # JPR
+#    if [ -f $HOME/.bashrc ] ; then
+#        echo $HOME/.bashrc
+#    else
+#        if [ -f $HOME/.profile ] ; then
+#            echo $HOME/.profile
+#        else
+#            echo "=============== BIG TROUBLE : neither $HOME/.bashrc nor $HOME/.profile file found" > /dev/stderr
+#            echo "=============== You'd better abort the program and (try to) fix the issue" > /dec/stderr
+#            read a # just to let the user time enough to read the message...
+#        fi
+#    fi
+}
+
+###########################################
+function printconfig {
+    echo
+    echo "Current Configuration:"
+    echo "  Operating System                           : $OperatingSystem"
+    echo "  Number of Cores                            : $corenumber"  
+    echo "  Name of the Generation Directory           : $generationdir"
+    echo "  Install Prefix for Third Party Libraries   : $installPrefixThird"  
+    echo "  Install Prefix for CreaTools               : $installPrefix"
+    echo "  Boolean for Doc Generation                 : $docgeneration"
+    echo "  Where do you want to get source files from : $sourcesFrom"
+    echo "  Login User Name                            : $loginUserName"
+    echo "  Login Group Name                           : $loginGroupName"
+    echo "  Build type                                 : $buildType"          
+    echo "  Gdcm version                               : $gdcmVersion"
+    echo "  ITK version                                : $ITKVersion"
+    echo
+}
+
+