X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=Linux%2Finstallscript;h=51cd51b6489a0c5d36b8f1057af18b60a2c99cbd;hb=af5c3e4b663ae6b439603680bcccd42182fc2adf;hp=c5611a751a7debbf2677f9c4b877a6aa412fd4b2;hpb=6a4393e29e2ad4c755ff2d31d53e0f9823ddd1bd;p=creaToolsTools.git
diff --git a/Linux/installscript b/Linux/installscript
index c5611a7..51cd51b 100755
--- a/Linux/installscript
+++ b/Linux/installscript
@@ -1,5 +1,30 @@
+# ---------------------------------------------------------------------
+#
+# 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
+scriptDirName=$(dirname $(readlink -f $0) )
+
#########################################################################
############ Local Functions #######################################
#########################################################################
@@ -96,9 +121,6 @@ function printconfig {
echo " Install Prefix for CreaTools : $installPrefix"
echo " Boolean for Doc Generation : $docgeneration"
echo " Where do you want to get source files from : $sourcesFrom"
- if [ $sourcesFrom = CVS ] ; then
- echo " CVS User Name : $cvsUserName"
- fi
echo " Login User Name : $loginUserName"
echo " Login Group Name : $loginGroupName"
echo " Build type : $buildType"
@@ -123,26 +145,25 @@ configureFile="scripts/CreaTools-configure.sh"
# default configuration parameters
OperatingSystem=`getDistrib`
corenumber=`getncore`
-generationdir=$HOME/CreatoolsGenerationDir
+generationdir=$HOME/Creatis/creaTools
installPrefixThird=
installPrefix=
docgeneration=OFF
-sourcesFrom=HTML
+sourcesFrom=GIT
-cvsUserName=
loginUserName=$USER
loginGroupName=`groups | awk '{print $1}'`
-buildType=RelWithDebug
+buildType=Release
gdcmVersion=GDCM1
ITKVersion=ITK3
-export ETC_BASHRC=`getbashrc`
+export ETC_BASHRC=~/.bashrc
function usage {
- echo "menu.sh [options] command"
+ echo "installscript [options] command"
echo "creatools configure/compile/install script"
echo ""
echo ""
@@ -150,10 +171,11 @@ function usage {
echo ""
echo ""
echo " command:"
- echo " all : configure / compile / install"
- echo " "
+ echo ""
+ echo " as a normal user:"
echo " config : set the configuration parameters only"
echo " "
+ echo " need root password:"
echo " 3rd : Get, Compile, Install all 3rd party library "
echo " 3rd-base : Install basic tools (cmake, doxygen...)"
echo " 3rd-vtk : Get, Compile, Install vtk"
@@ -161,6 +183,7 @@ function usage {
echo " 3rd-gdcm : Get, Compile, Install gdcm"
echo " 3rd-wx : Get, Compile, Install wx widget (for Mac Users)"
echo " "
+ echo " as a normal user:"
echo " creatools : Get Compile and Install the CreaTools"
echo " creatools-get : Get the CreaTools"
echo " creatools-cmp : Compile the CreaTools"
@@ -171,6 +194,9 @@ function usage {
echo " printconfig : print the configuration"
echo " help : print help"
echo " env : print some environnement variables"
+ echo ""
+ echo " all : configure / compile / install"
+ echo " "
echo " "
echo " "
echo " "
@@ -181,7 +207,9 @@ function usage {
echo " -gdir
: generation directory (default $generationdir)"
echo " -instprefix : creatools install prefix"
echo " -instprefix3 : 3rd party library install prefix"
- echo " -cvs : get creatools from cvs (CREATIS user only)"
+ echo " -html : get creatools from HTML"
+ echo " -git : get creatools from git (CREATIS user only)"
+ echo " -git-read-only : get creatools from git (anonymously, no write access)"
echo " -build : build type Release, RelWithDebug or Debug (default RelWithDebug)"
echo ""
echo " experimental configure options (use at your own risk!!):"
@@ -202,7 +230,10 @@ while [ $# -ge 1 ] ; do
-instprefix) installPrefix=$2; shift 2;;
-instprefix3) installPrefixThird=$2; shift 2;;
-doc) docgeneration=ON; shift 1;;
- -cvs) sourcesFrom=CVS; cvsUserName=$2; shift 2;;
+ -html) sourcesFrom=HTML; shift 1;;
+ -git) sourcesFrom=GIT; shift 1;;
+ -git-read-only) sourcesFrom=GIT-READ-ONLY;
+shift 1;;
-gdcm2) gdcmVersion=GDCM2; shift 1;;
-itk4) ITKVersion=ITK4; shift 1;;
-build) buildType=$2; shift 2;;
@@ -266,7 +297,7 @@ fi
if [ `checkVal $command config all` == true ] ; then
echo "#!/bin/bash" > $configureFile
echo >> $configureFile
- echo "#File generated by 'menu.sh'" >> $configureFile
+ echo "#File generated by 'installscript'" >> $configureFile
echo "#DO NOT edit !" >> $configureFile
echo "#(except if you *do* know what you do)" >> $configureFile
echo >> $configureFile
@@ -277,7 +308,6 @@ if [ `checkVal $command config all` == true ] ; then
echo "installPrefixThird=$installPrefixThird" >> $configureFile
echo "docgeneration=$docgeneration" >> $configureFile
echo "sourcesFrom=$sourcesFrom" >> $configureFile
- echo "cvsUserName=$cvsUserName" >> $configureFile
echo "loginUserName=$loginUserName" >> $configureFile
echo "loginGroupName=$loginGroupName" >> $configureFile
echo "buildType=$buildType" >> $configureFile
@@ -305,13 +335,20 @@ if [ `checkVal $command config printconfig` == true ] ; then
exit
fi
+################################################################################## creatools
+# download creatools
+if [ `checkVal $command all creatools creatools-get` == true ] ; then
+ bigDisplay "DOWNLOAD CREATOOLS"
+ bash scripts/CreaTools-load.sh
+fi
################################################################################## 3rd library
# install packaged dependencies as root
if [ `checkVal $command all 3rd 3rd-base` == true ] ; then
bigDisplay "INSTALL PACKAGES DEPENDENCIES"
if [ "`whoami`" == root ] ; then
- bash scripts/ThirdParty-install-Base-Stuff.sh
+ echo ThirdParty-install-Base-Stuff
+ bash scripts/ThirdParty-install-Base-Stuff.sh
else
# must log as root
echo "Please enter the root passwd to add necessary packages:";
@@ -320,16 +357,20 @@ if [ `checkVal $command all 3rd 3rd-base` == true ] ; then
bash scripts/ThirdParty-install.sh
fi
+
+
# vtk
if [ `checkVal $command all 3rd 3rd-vtk` == true ] ; then
bigDisplay "INSTALL VTK"
- bash scripts/ThirdParty-install-VTK.sh
+ source scripts/ThirdParty-install-VTK.sh
+ cd $scriptDirName
fi
# gdcm
if [ `checkVal $command all 3rd 3rd-gdcm` == true ] ; then
bigDisplay "INSTALL $gdcmVersion"
- bash scripts/ThirdParty-install-gdcm.sh
+ source scripts/ThirdParty-install-gdcm.sh
+ cd $scriptDirName
fi
# itk
@@ -347,7 +388,6 @@ fi
if [ `checkVal $command all 3rd 3rd-vtk 3rd-itk 3rd-gdcm 3rd-wx ` == true ] ; then
bigDisplay "FINALIZE 3RD PARTY LIBRARY INSTALLATION"
bash scripts/ThirdParty-install-Finalize.sh
- source $ETC_BASHRC
if [ `checkVal $command 3rd 3rd-vtk 3rd-itk 3rd-gdcm 3rd-wx ` == true ] ; then
bigDisplay "Third Party Install Done"
bigDisplay "Please copy paste the following command or open a new terminal: source ~/.bashrc"
@@ -355,13 +395,6 @@ if [ `checkVal $command all 3rd 3rd-vtk 3rd-itk 3rd-gdcm 3rd-wx ` == true ] ; th
fi
################################################################################## creatools
-
-# download creatools
-if [ `checkVal $command all creatools creatools-get` == true ] ; then
- bigDisplay "DOWNLOAD CREATOOLS"
- bash scripts/CreaTools-load.sh
-fi
-
# compile creatools
if [ `checkVal $command all creatools creatools-cmp` == true ] ; then
bigDisplay "COMPILE CREATOOLS"
@@ -391,7 +424,6 @@ if [ `checkVal $command all creatools creatools-install` == true ] ; then
fi
################################################################################## uninstall
-
if [ `checkVal $command uninstall` == true ] ; then
bigDisplay "UNINSTALL CREATOOLS"
bash scripts/CreaTools-uninstall.sh