############ 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"
buildType=Release
gdcmVersion=GDCM1
ITKVersion=ITK3
-export ETC_BASHRC=~/.bashrc
+export ETC_BASHRC=`getbashrc`
function usage {
#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 ""
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
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 ..
--- /dev/null
+# ---------------------------------------------------------------------
+#
+# 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
+}
+
+