]> Creatis software - creaToolsTools.git/blobdiff - Linux/installscript
#2493 creaToolsTools Feature New Normal - Prepare and Install binary CreaTools...
[creaToolsTools.git] / Linux / installscript
index 562978342420a9e11ee7ad187c313af4fb9040b3..09dbd74192b1a61dda716853c2f89952d85fcfdb 100755 (executable)
@@ -23,6 +23,8 @@
 
 #!/bin/bash -e
 
+scriptDirName=$(dirname $(readlink -f $0) )
+
 #########################################################################
 ############     Local Functions  #######################################
 #########################################################################
@@ -119,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 = GIT ] ; then
-    echo "  GIT User Name                              : $gitUserName"
-    fi
     echo "  Login User Name                            : $loginUserName"
     echo "  Login Group Name                           : $loginGroupName"
     echo "  Build type                                 : $buildType"          
@@ -146,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
 
-gitUserName=
 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 "" 
@@ -173,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"
@@ -184,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"
@@ -194,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 "   "
@@ -204,7 +207,9 @@ function usage {
     echo "        -gdir <dir>           : generation directory (default $generationdir)"
     echo "        -instprefix <dir>     : creatools install prefix" 
     echo "        -instprefix3 <dir>    : 3rd party library install prefix" 
-    echo "        -git <gitusername>    : get creatools from git (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!!):"
@@ -225,7 +230,10 @@ while [ $# -ge 1 ] ; do
         -instprefix)        installPrefix=$2;                          shift 2;;
         -instprefix3)       installPrefixThird=$2;                     shift 2;;
         -doc)               docgeneration=ON;                          shift 1;;
-        -git)               sourcesFrom=GIT; gitUserName=$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;;
@@ -289,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
@@ -300,7 +308,6 @@ if [ `checkVal $command config all` == true ] ; then
     echo "installPrefixThird=$installPrefixThird" >> $configureFile
     echo "docgeneration=$docgeneration"           >> $configureFile
     echo "sourcesFrom=$sourcesFrom"               >> $configureFile
-    echo "gitUserName=$gitUserName"               >> $configureFile 
     echo "loginUserName=$loginUserName"           >> $configureFile
     echo "loginGroupName=$loginGroupName"         >> $configureFile
     echo "buildType=$buildType"                   >> $configureFile
@@ -328,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:"; 
@@ -343,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
@@ -370,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" 
@@ -378,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"
@@ -411,10 +421,18 @@ if [ `checkVal $command all creatools creatools-install` == true ] ; then
     source $ETC_BASHRC
     bash scripts/CreaTools-install.sh
     source $ETC_BASHRC
+    echo " "
+    echo " "
+    echo " "
+    echo " "
+    echo "Close this window and continue...."
+    echo " "
+    echo " "
+    echo " "
+    read -p "Press [Enter] key to continue..."
 fi
 
 ################################################################################## uninstall
-
 if [ `checkVal $command uninstall` == true ] ; then
     bigDisplay "UNINSTALL CREATOOLS"
     bash scripts/CreaTools-uninstall.sh