--- /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
+
+ if [ -f scripts/CreaTools-configure.sh ]
+ then
+ source scripts/CreaTools-configure.sh
+ fi
+
+expanded="NO"
+i=999
+while [ "$i" != 9 ]
+do
+ clear
+ echo
+ echo
+ echo
+ echo " MENU"
+ echo
+ echo " This MENU is deprecated."
+ echo " Please use installscipt instead."
+ echo
+ echo " Choose what you want to do :"
+ echo
+ echo " Configure :........................0"
+
+ if [ $expanded = "YES" ]
+ then
+ echo " Install all base stuff :..........1.0"
+ echo " (cmake, doxygen, graphviz, ...)"
+ echo " Get, Compile, Install vtk .......1.1"
+ echo " Get, Compile, Install gdcm :.. . .1.2"
+ echo " Get, Compile, Install itk :.......1.3"
+ echo " Get, Compile, Install Wx (for Mac Users) :…....1.4"
+
+ else
+ echo " Install Third Party Libraries :....1 (as root)"
+ fi
+
+ if [ $expanded = "YES" ]
+ then
+ echo " Get the 'CreaTools' source files :.2.1 (GIT : as user!)"
+ echo " Compile the CreaTools :..........2.2"
+ # Install creatools as user (no longer as root) // JPR 2/5/2011
+ echo " Install the CreaTools :..........2.3"
+ else
+ echo " Get and Install the 'CreaTools':...2"
+ fi
+ echo
+ if [ $expanded = "NO" ]
+ then
+ echo " Use Expanded menu :................5 "
+ else
+ echo " Use compact menu :.................5 "
+ fi
+ echo " Uninstall the CreaTools :..........6 "
+ echo " Help ..............................7 Help about this menu"
+ echo " Show some Environment Variables ...8"
+ echo " Exit :.............................9"
+ echo
+ echo
+ echo
+
+ echo "Type in your choice :"
+ read i
+
+ case $i in
+ 0)
+
+ # Do it, while we are under user, not under root! # JPR
+ if [ -f $HOME/.bashrc ]
+ then
+ export ETC_BASHRC=$HOME/.bashrc
+ else
+ if [ -f $HOME/.profile ]
+ then
+ export ETC_BASHRC=$HOME/.profile
+ else
+ echo "======================== BIG TROUBLE : neither $HOME/.bashrc nor $HOME/.profile file found"
+ echo "======================== You'd better to abort the program and (try to) fix the issue"
+ read a # just to let the user time enough to read the message...
+ fi
+ fi
+
+ clear
+ suitable=XXX
+ #ls -l scripts/CreaTools-configure.sh
+ if [ -f scripts/CreaTools-configure.sh ]
+ then
+ while [[ "$suitable" != "YES" && \
+ "$suitable" != "yes" && \
+ "$suitable" != "Y" && \
+ "$suitable" != "y" && \
+ "$suitable" != "NO" && \
+ "$suitable" != "no" ]]
+ do
+ echo "'Configure' already done; Content of scripts/CreaTools-configure.sh :"
+ echo "------------------------"
+ more scripts/CreaTools-configure.sh
+ echo "------------------------"
+
+ # WARNING : $installPrefixThird is taken from CreaTools-configure.sh
+ # If user configured without installing third party library,
+ # last third party library is still in use! JPR
+
+ if [ ! -f $installPrefixThird/share/creatools_third_party_library_config.sh ]
+ then
+ echo WARNING
+ echo "the curently used Third Party libraries are NOT in $installPrefixThird but ... in :"
+ grep "installPrefixThird=" $ETC_BASHRC
+ echo "VTK_DIR : " $VTK_DIR
+ echo "ITK_DIR : " $ITK_DIR
+ echo "GDCM_DIR : " $GDCM_DIR
+ echo "(Have a look at $ETC_BASHRC=, edit it or run again Install Third Party Libraries if you disagree)"
+ fi
+ echo
+ echo "Are these values suitable for you : YES/NO? (default is YES)"
+ read suitable
+ if [ "$suitable" = "" ]
+ then
+ suitable="YES"
+ fi
+ done
+ else
+ suitable="NO"
+ fi
+
+ if [[ "$suitable" = "YES" || "$suitable" = "Y" || "$suitable" = "yes" || "$suitable" = "y" ]]
+ then
+ source scripts/CreaTools-configure.sh
+ fi
+
+ if [[ "$suitable" = "NO" || "$suitable" = "N" || "$suitable" = "no" || "$suitable" = "n" ]]
+ #if [ "$suitable" = "NO" ]
+ then
+ echo
+ echo
+ confirm="NO"
+ while [ "$confirm" != "YES" ]
+ do
+ # ///\TODO what about SuSE? Debian? Mandriva? Gentoo?
+ OperatingSystem="XXX"
+ while [[ "$OperatingSystem" != "Fedora" && \
+ "$OperatingSystem" != "Ubuntu" && \
+ "$OperatingSystem" != "MacOS" ]]
+ do
+ echo "Operating System : Fedora/Ubuntu/MacOS (default : Fedora)"
+ read OperatingSystem
+ if [ "$OperatingSystem" = "" ]
+ then
+ OperatingSystem="Fedora"
+ fi
+ done
+ echo "you said : [" $OperatingSystem "]"
+ echo
+ echo
+
+ # ------------------
+ echo "How many cores on your computer 2 (default is 2)"
+ read corenumber
+ if [ "$corenumber" = "" ]
+ then
+ corenumber="2"
+ fi
+ echo "you said : [" $corenumber "]"
+
+ echo
+ echo
+
+ racine=$HOME/myDefaultCreatoolsGenerationDir
+ # ------------------
+ echo "Name of the Generation Directory (default is $racine)"
+ read generationdir
+ if [ "$generationdir" = "" ]
+ then
+ generationdir=$racine
+ fi
+ echo "you said : [" $generationdir "]"
+
+ echo
+ echo
+ # ------------------
+ installPrefixThird="___"
+ echo "Install Prefix For Third Party Library : '$generationdir/thirdparty_install' / '/usr/local' (default is '$generationdir/thirdparty_install')"
+ read installPrefixThird
+ if [ "$installPrefixThird" = "" ]
+ then
+ installPrefixThird="$generationdir/thirdparty_install"
+ fi
+ echo "you said : [" $installPrefixThird "]"
+ echo
+ echo
+ # ------------------
+
+ installPrefix="___"
+ echo "Install Prefix for CreaTools : '$generationdir/creatools_install' / '/usr/local' (default is '$generationdir/creatools_install')"
+ read installPrefix
+ if [ "$installPrefix" = "" ]
+ then
+ installPrefix="$generationdir/creatools_install"
+ fi
+ echo "you said : [" $installPrefix "]"
+ echo
+ echo
+ # ------------------
+
+if [ false ]
+then
+ docgeneration="___"
+ while [[ "$docgeneration" != "ON" && "$docgeneration" != "OFF" ]]
+ do
+ echo "Boolean For Doc Generation : ON/OFF (default is OFF)"
+ read docgeneration
+ if [ "$docgeneration" = "" ]
+ then
+ docgeneration="OFF"
+ fi
+ echo "you said : [" $docgeneration "]"
+ done
+ echo
+ echo
+fi
+
+docgeneration="OFF"
+
+ # ------------------
+
+ sourcesFrom="___"
+ while [[ "$sourcesFrom" != "GIT" && "$sourcesFrom" != "HTML" ]]
+ do
+ echo "Where do you want to get source files from : GIT/HTML ( GIT : for registered CREATIS users only! )"
+ read sourcesFrom
+ if [ "$sourcesFrom" = "" ]
+ then
+ sourcesFrom="GIT"
+ fi
+ echo "you said : [" $sourcesFrom "]"
+ done
+ echo
+ echo
+ # ------------------
+
+ gitUserName=""
+ if [ "$sourcesFrom" = "GIT" ]
+ then
+ while [ "$gitUserName" == "" ]
+ do
+ echo "GIT User Name ( registered CREATIS user : mandatory!)"
+ read gitUserName
+ done
+ echo "you said : [" $gitUserName "]"
+ else
+ gitUserName="ForgetThisOne"
+ fi
+ echo
+ echo
+ # ------------------
+
+
+ #loginUserName=""
+ loginUserName=$USER
+ #while [ "$loginUserName" == "" ]
+ #do
+ echo "Have a look at the following line to know 'Login User Name'/'Login Group Name'"
+ ls -l menu.sh
+ # echo "Login User Name (mandatory!)"
+ # read loginUserName
+ # echo "you said : [" $loginUserName "]"
+ #done
+ echo
+ echo
+
+ loginGroupName=""
+ while [ "$loginGroupName" == "" ]
+ do
+ echo "Have a look at the following line to know 'Login User Name'/'Login Group Name'"
+ echo "Login Group Name (mandatory!)"
+ read loginGroupName
+ echo "you said : [" $loginGroupName "]"
+ done
+ echo
+ echo
+ # ------------------
+
+ buildType="___"
+ while [[ "$buildType" != "Release" && "$buildType" != "Debug" ]]
+ do
+ echo "Build type : Release/Debug (default is Release)"
+ read buildType
+ if [ "$buildType" = "" ]
+ then
+ buildType="Release"
+ fi
+ echo "you said : [" $buildType "]"
+ done
+ echo
+ echo
+ # ------------------
+
+ gdcmVersion="___"
+ while [[ "$gdcmVersion" != "GDCM1" && "$gdcmVersion" != "GDCM2" ]]
+ do
+ echo "Gdcm version : GDCM1/GDCM2 (default is GDCM1)"
+ read gdcmVersion
+ if [ "$gdcmVersion" = "" ]
+ then
+ gdcmVersion="GDCM1"
+ fi
+ echo "you said : [" $gdcmVersion "]"
+ done
+
+# NOT YET CHECKED ! JPR
+ ITKVersion="___"
+ while [[ "$ITKVersion" != "ITK3" && "$ITKVersion" != "ITK4" ]]
+ do
+ echo "ITK version : ITK3/ITK4 (default is ITK3)"
+ read ITKVersion
+ if [ "$ITKVersion" = "" ]
+ then
+ ITKVersion="ITK3"
+ fi
+ echo "you said : [" $ITKVersion "]"
+ done
+
+ echo
+ echo
+ echo
+ echo
+ echo "You said :"
+ 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"
+ if [ $sourcesFrom = GIT ]
+ then
+ echo " GIT User Name : $gitUserName"
+ fi
+ echo " Login User Name : $loginUserName"
+ echo " Login Group Name : $loginGroupName"
+ echo " Build type : $buildType"
+ echo " Gdcm version : $gdcmVersion"
+ echo " ITK version : $ITKVersion"
+ echo
+ echo
+
+ echo "Do you confirm your choices : YES/NO ? (default is YES)"
+ read confirm
+ if [ "$confirm" = "" ]
+ then
+ confirm=YES
+ fi
+ done
+
+ # ==> On genere le fichier CreaTools-configure.sh genere chez l'utilisateur (no choice!)...
+ #
+
+ configureFile="scripts/CreaTools-configure.sh"
+ touch $configureFile
+ echo "#!/bin/bash" > $configureFile
+ echo >> $configureFile
+ echo "#File generated by 'menu.sh'" >> $configureFile
+ echo "#DO NOT edit !" >> $configureFile
+ echo "#(except if you *do* know what you do)" >> $configureFile
+ echo >> $configureFile
+ echo "OperatingSystem=$OperatingSystem" >> $configureFile
+ echo "corenumber=$corenumber" >> $configureFile
+ echo "generationdir=$generationdir" >> $configureFile
+ echo "installPrefix=$installPrefix" >> $configureFile
+ 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
+ echo "gdcmVersion=$gdcmVersion" >> $configureFile
+ echo "ITKVersion=$ITKVersion" >> $configureFile
+ echo "ETC_BASHRC=$ETC_BASHRC" >> $configureFile
+
+ # ------------------
+ # endif 'suitable'
+ fi
+ ;;
+
+ 1)
+ echo "========================== 1 "
+ source scripts/Check-if-root.sh
+ bash scripts/ThirdParty-install-Base-Stuff.sh
+ bash scripts/ThirdParty-install-VTK.sh
+ bash scripts/ThirdParty-install-gdcm.sh
+ bash scripts/ThirdParty-install-ITK.sh
+ bash scripts/ThirdParty-install.sh
+ bash scripts/ThirdParty-install-Finalize.sh
+
+ if [ "$sourcesFrom" = "GIT" ]
+ then
+ echo "----------------------------------------------------------------------"
+ echo OK
+ echo "To go on, run again 'bash menu.sh' as '$loginUserName', in a new window"
+ echo "----------------------------------------------------------------------"
+ else
+ echo "----------------------------------------------------------------------"
+ echo OK
+ echo "To go on, run again 'bash menu.sh' in a new window"
+ echo "----------------------------------------------------------------------"
+ fi
+ echo
+ echo "==>"
+ echo "==> You HAVE to leave current window to continue!"
+ echo "==>"
+ source $ETC_BASHRC
+ read a
+ ;;
+
+ 1.0)
+ echo "========================== 1.0 "
+ source scripts/Check-if-root.sh
+ bash scripts/ThirdParty-install-Base-Stuff.sh
+ bash scripts/ThirdParty-install-Finalize.sh
+ ;;
+
+ 1.1)
+ echo "========================== 1.1 "
+ #source scripts/Check-if-root.sh
+ bash scripts/ThirdParty-install-VTK.sh
+ bash scripts/ThirdParty-install-Finalize.sh
+ ;;
+
+ 1.2)
+ echo "========================== 1.2 "
+ #source scripts/Check-if-root.sh
+ bash scripts/ThirdParty-install-gdcm.sh
+ bash scripts/ThirdParty-install-Finalize.sh
+ ;;
+
+ 1.3)
+ echo "========================== 1.3 "
+ #source scripts/Check-if-root.sh
+ bash scripts/ThirdParty-install-ITK.sh
+ bash scripts/ThirdParty-install-Finalize.sh
+ ;;
+ 1.4)
+ echo "========================== 1.4 "
+ #source scripts/Check-if-root.sh
+ bash scripts/ThirdParty-install-WX.sh
+ bash scripts/ThirdParty-install-Finalize.sh
+ read a
+ ;;
+
+ 2)
+ #2.1
+ bash scripts/CreaTools-load.sh
+ #2.2
+ source scripts/CreaTools-configure.sh
+ bash scripts/CreaTools-compile.sh
+ #2.3
+ bash scripts/CreaTools-install.sh
+ echo "==>"
+ echo "==> You HAVE to leave current window to continue!"
+ echo "==>"
+ source $ETC_BASHRC
+ read a
+ kill -9 $PPID
+ ;;
+
+ 2.1)
+ echo "========================== 2.1"
+ bash scripts/CreaTools-load.sh
+ ;;
+
+ 2.2)
+ echo "========================== 2.2"
+ source scripts/CreaTools-configure.sh
+
+ bash scripts/CreaTools-compile.sh
+
+ # To allow (*very* aware) user to patch code, later
+ if [ ! -e $generationdir/creatools_source ]
+ then
+ echo "You probabely made a mistake : "
+ echo "Directory $loginUserName $generationdir/creatools_source not found"
+ echo "Make sure you know the mistake"
+ echo "Hit any key to continue"
+ echo "Fix the mistake!"
+ read a
+ else
+ chown -R $loginUserName $generationdir/creatools_source
+ chgrp -R $loginGroupName $generationdir/creatools_source
+ fi
+ ;;
+
+ 2.3)
+
+ echo "========================= 4"
+
+ bash scripts/CreaTools-install.sh
+
+# if [ $UID != 0 ]
+# then
+# echo "You HAVE to leave current window to continue!"
+# else
+# echo "==> Hit any key to close current window"
+# fi
+ source $ETC_BASHRC
+ ;;
+
+ 5)
+ if [ $expanded = "NO" ]
+ then
+ expanded="YES"
+ else
+ expanded="NO"
+ fi
+ ;;
+
+ 6)
+ echo "========================= 5"
+ bash scripts/CreaTools-uninstall.sh
+ echo
+ echo "==> Hit any key to go on"
+ read a
+ ;;
+
+ 7)
+ clear
+ echo "==================================="
+ more README.txt
+ echo
+ echo "==> Hit any key to go on"
+ read a
+ ;;
+
+ 8)
+ clear
+ echo "==================================="
+
+ # WARNING : $installPrefixThird is taken from CreaTools-configure.sh
+ # If user configured without installing third party library,
+ # last third party library is still in use! JPR
+
+
+ if [ ! -f $installPrefixThird/share/creatools_third_party_library_config.sh ]
+ then
+ echo WARNING
+ echo
+ echo "the curently used Third Party libraries are NOT in $installPrefixThird but in :"
+ grep "installPrefixThird=" $ETC_BASHRC
+ echo "VTK_DIR : " $VTK_DIR
+ echo "ITK_DIR : " $ITK_DIR
+ echo "GDCM_DIR : " $GDCM_DIR
+ echo
+ echo "installPrefixThird ... " $installPrefixThird
+ fi
+
+ if [ -f $installPrefixThird/share/creatools_third_party_library_config.sh ]
+ then
+ echo "Third party config file : " $installPrefixThird/share/creatools_third_party_library_config.sh
+ echo ------
+ more $installPrefixThird/share/creatools_third_party_library_config.sh
+ echo ------
+ fi
+
+ echo
+
+ if [ -f $installPrefix/share/creatools_base_library_config.sh ]
+ then
+ echo "Creatools base library config file : " $installPrefix/share/creatools_base_library_config.sh
+ echo ------
+ more $installPrefix/share/creatools_base_library_config.sh
+ echo ------
+ echo
+ echo "installPrefix ... " $installPrefix
+ fi
+ echo ------
+ echo "VTK_DIR : " $VTK_DIR
+ echo "ITK_DIR : " $ITK_DIR
+ echo "GDCM_DIR : " $GDCM_DIR
+ echo
+ echo "crea_DIR : " $crea_DIR
+ echo "BBTK_DIR : " $BBTK_DIR
+ echo "creaMaracasVisu_DIR : " $creaMaracasVisu_DIR
+ echo "creaEnvironment_DIR : " $creaEnvironment_DIR
+ echo "creaBruker_DIR : " $creaBruker_DIR
+ echo "creaImageIO_DIR : " $creaImageIO_DIR
+ echo "creaContours_DIR : " $creaContours_DIR
+ echo "creaRigidRegistration_DIR :" $creaRigidRegistration_DIR
+ echo "bbtkGEditor_DIR : " $bbtkGEditor_DIR
+ echo "creaTools_DIR : " $creaTools_DIR
+ echo "creaMiniTools_DIR : " $creaMiniTools_DIR
+ echo "Ido_DIR : " $Ido_DIR
+ echo "==================================="
+ echo
+ echo "Press any key to continue"
+ read a
+ ;;
+
+ 9)
+ echo
+ exit 0
+ ;;
+
+ 10)
+ # Hiden option, usefull at debug time
+ bash scripts/ThirdParty-install_no_compile.sh
+ ;;
+
+ *)
+
+ if [ expanded="NO" ]
+ then
+ echo "Your answer must be in {0, 1, 2, 5, 6, 7, 8, 9} (was [ $i ])"
+ else
+ echo "Your answer must be in {0, 1, 2.1, 2.2, 2.3, 5, 6, 7, 8, 9} (was [ $i ])"
+ fi
+ ;;
+ esac
+
+done
+
+