X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=Linux%2Fmenu.sh;h=3be1b00a10aba6ac78eaef9493114df253ca1a27;hb=8c418a79f4b2b36f681a8acc9ec28ac601ea8d3b;hp=0b0f976c4f3b378082a5c95186c2eb748faf2d32;hpb=198af0e299f7b2b161168fddbdeea684c1cf6d78;p=creaToolsTools.git diff --git a/Linux/menu.sh b/Linux/menu.sh index 0b0f976..3be1b00 100644 --- a/Linux/menu.sh +++ b/Linux/menu.sh @@ -5,6 +5,7 @@ source scripts/CreaTools-configure.sh fi +expanded="NO" i=999 while [ "$i" != 9 ] do @@ -16,19 +17,40 @@ do echo echo " Choose what you want to do :" echo - echo " Configure :........................0 " - echo " Install Third Party Libraries :....1 (as root)" - echo " Get the 'CreaTools' source files :.2 (CVS : as user!)" - echo " Compile the CreaTools :..........3 " - echo " Install the CreaTools :..........4 (as root)" - echo " Uninstall the CreaTools :..........5 (as root)" + echo " Configure :........................0" + + if [ $expanded = "YES" ] + then + echo " Get and Compile gdcm :.. ......1.1" + echo " Get and Compile itk :.. .......1.2" + echo " Get and Compile vtk :.. .......1.3" + else + echo " Install Third Party Libraries :....1 (as root)" + fi + + if [ $expanded = "YES" ] + then + echo " Get the 'CreaTools' source files :.2.1 (CVS : 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 + echo + echo echo "Type in your choice :" read i @@ -41,7 +63,11 @@ do if [ -f scripts/CreaTools-configure.sh ] then while [[ "$suitable" != "YES" && \ - "$suitable" != "NO" ]] + "$suitable" != "yes" && \ + "$suitable" != "Y" && \ + "$suitable" != "y" && \ + "$suitable" != "NO" && \ + "$suitable" != "no" ]] do echo "'Configure' already done : " echo "------------------------" @@ -51,16 +77,27 @@ do # 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 +# Install creatools as user (no longer as root) // JPR 2/5/2011 + #if [ ! -f /etc/bashrc ] + #then + # export ETC_BASHRC="/etc/bash.bashrc" + #else + # export ETC_BASHRC="/etc/bashrc" + #fi + export ETC_BASHRC=$HOME/.bashrc 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)" + + 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)" @@ -74,26 +111,23 @@ do suitable="NO" fi - if [ "$suitable" = "YES" ] + 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" ] + if [[ "$suitable" = "NO" || "$suitable" = "N" || "$suitable" = "no" || "$suitable" = "n" ]] + #if [ "$suitable" = "NO" ] then - echo echo confirm="NO" while [ "$confirm" != "YES" ] do - OperatingSystem="XXX" while [[ "$OperatingSystem" != "Fedora" && \ "$OperatingSystem" != "Ubuntu" && \ - "$OperatingSystem" != "MacOS" ]] do echo "Operating System : Fedora/Ubuntu/MacOS (default : Fedora)" @@ -106,13 +140,25 @@ do 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 # ------------------ - echo "Name of the Generation Directory (default is /tmp/myGenerationDir)" + echo "Name of the Generation Directory (default is ~/creaToolsGenerationDir)" read generationdir if [ "$generationdir" = "" ] then - generationdir="/tmp/myGenerationDir" + generationdir="~/creaToolsGenerationDir" fi echo "you said : [" $generationdir "]" @@ -131,7 +177,6 @@ do echo # ------------------ - installPrefix="___" echo "Install Prefix for CreaTools : '$generationdir/creatools_install' / '/usr/local' (default is '$generationdir/creatools_install')" read installPrefix @@ -144,6 +189,8 @@ do echo # ------------------ +if [ false ] +then docgeneration="___" while [[ "$docgeneration" != "ON" && "$docgeneration" != "OFF" ]] do @@ -157,12 +204,15 @@ do done echo echo +fi +docgeneration="OFF" + # ------------------ sourcesFrom="___" while [[ "$sourcesFrom" != "CVS" && "$sourcesFrom" != "HTML" ]] do - echo "Where do you want to get source files from : CVS/HTML (default is CVS)" + echo "Where do you want to get source files from : CVS/HTML ( CVS : for registered CREATIS users only! )" read sourcesFrom if [ "$sourcesFrom" = "" ] then @@ -179,7 +229,7 @@ do then while [ "$cvsUserName" == "" ] do - echo "CVS User Name (mandatory!)" + echo "CVS User Name ( registered CREATIS user : mandatory!)" read cvsUserName done echo "you said : [" $cvsUserName "]" @@ -217,7 +267,7 @@ do # ------------------ buildType="___" - while [[ "$buildType" != "Release" && "$Debug " != "HTML" ]] + while [[ "$buildType" != "Release" && "$buildType" != "Debug" ]] do echo "Build type : Release/Debug (default is Release)" read buildType @@ -248,6 +298,7 @@ do 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" @@ -276,17 +327,19 @@ do # dans $generationdir/creatools_bin ? # -> il n'est pas encore cree ! # dans ./Linux/scripts? - # -> ? + # ==> On le genere chez l'utilisateur (no choice!)... + # configureFile="scripts/CreaTools-configure.sh" touch $configureFile - echo "#!/bin/sh" > $configureFile + echo "#!/bin/bash" > $configureFile echo >> $configureFile echo "#File generated by 'menu.sh'" >> $configureFile echo "#DO NOT edit !" >> $configureFile - echo "#(except if you *know* what you do)" >> $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 @@ -298,7 +351,6 @@ do echo "buildType=$buildType" >> $configureFile echo "gdcmVersion=$gdcmVersion" >> $configureFile - # ------------------ # endif 'suitable' fi @@ -307,130 +359,138 @@ do 1) echo "========================== 1 " source scripts/Check-if-root.sh - sh scripts/ThirdParty-install.sh - -# vtkdirVariable="" -# while [ "$vtkdirVariable" = "" ] -# do -# while [ ! -e "$vtkdirVariable" ] -# do -# echo -# echo " --------------------------------" -# echo " Set VTK_DIR environment variable" -# echo " --------------------------------" -# echo -# # #read vtkdirVariable -# if [ ! -e "$vtkdirVariable" ] -# then -# # echo $vtkdirVariable is NOT a valid directory -# fi -# done -# done -# echo "you said [" $vtkdirVariable "]" - - #vtkdirVariable="" - #while [ "$vtkdirVariable" = "" ] - #do - # echo " Set VTK_DIR environment variable" - # read vtkdirVariable - #done - #echo "you said [" $vtkdirVariable "]" - -# latexCompilerVariable="" -# while [ "$latexCompilerVariable" = "" ] -# do -# while [ ! -f "$latexCompilerVariable" ] -# do -# echo -# # echo " ---------------------------------------" -# echo " Set LATEX_COMPILER environment variable" -# # echo " ---------------------------------------" -# echo -# read latexCompilerVariable -# if [ ! -e "$latexCompilerVariable" ] -# then -# echo $latexCompilerVariable is NOT a valid file -# fi -# # done -# done -# echo "you said [" $latexCompilerVariable "]" - -# sed -i -e '/.*VTK_DIR*/ d' /etc/bashrc -# sed -i -e '/.*LATEX_COMPILER*/ d' /etc/bashrc -# echo "export VTK_DIR=$vtkdirVariable" >> /etc/bashrc -# echo "export LATEX_COMPILER=$latexCompilerVariable" >> /etc/bashrc + bash scripts/ThirdParty-install.sh if [ "$sourcesFrom" = "CVS" ] then echo "----------------------------------------------------------------------" echo OK - echo "To go on, run again 'sh menu.sh' as '$loginUserName', in a new window" + 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 'sh menu.sh' in a new window" + echo "To go on, run again 'bash menu.sh' in a new window" echo "---------------------------------------------------------------------" fi echo - echo "==> Hit any key to exit close current window" + echo "==> You HAVE to leave current window to continue!" read a kill $PPID ;; + + 1.1) + echo "========================== 1.1 " + source scripts/Check-if-root.sh + bash scripts/ThirdParty-install-gdcm.sh + ;; + + 1.2) + echo "========================== 1.2 " + echo "sorry, not yet available" + read a + ;; + + 1.3) + echo "========================== 1.3 " + echo "sorry, not yet available" + read a + + ;; 2) - - - echo "========================== 2" - sh scripts/CreaTools-load.sh + #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 "You HAVE to leave current window to continue!" + read a + kill $PPID ;; - - 3) - echo "========================== 3" + + 2.1) + echo "========================== 2.1" + bash scripts/CreaTools-load.sh + ;; + + 2.2) + echo "========================== 2.2" source scripts/CreaTools-configure.sh - sh scripts/CreaTools-compile.sh + bash scripts/CreaTools-compile.sh + # To allow (*very* aware) user to patch code, later - - chown -R $loginUserName $generationdir/creatools_source - chgrp -R $loginGroupName $generationdir/creatools_source - # Too much time consuming - #chown -R $loginUserName $generationdir/creatools_source - #chgrp -R $loginGroupName $generationdir/creatools_source + 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 + # Too much time consuming + #chown -R $loginUserName $generationdir/creatools_source + #chgrp -R $loginGroupName $generationdir/creatools_source + fi ;; - 4) - if [ $UID != 0 ] - then - echo - echo "..ERROR.." - echo "===================================================" - echo "REMEMBER !" - echo "" - echo "YOU NEED TO RUN THIS ONE AS root" - echo "===================================================" - echo - echo - exit 0 - fi + 2.3) + +# if [ $UID != 0 ] +# then +# echo +# echo "..ERROR.." +# echo "===================================================" +# echo "REMEMBER !" +# echo "" +# echo "YOU NEED TO RUN THIS ONE AS root" +# echo "===================================================" +# echo +# echo +# exit 0 +# fi + echo "========================= 4" - sh scripts/CreaTools-install.sh - echo - echo "==> Hit any key to close current window" - read a - kill $PPID + + 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 ;; - + + 5) + if [ $expanded = "NO" ] + then + expanded="YES" + else + expanded="NO" + fi + ;; + + 6) echo "========================= 5" - sh scripts/CreaTools-uninstall.sh + bash scripts/CreaTools-uninstall.sh + echo + echo "==> Hit any key to go on" + read a ;; 7) clear echo "===================================" more README.txt - echo + echo echo "==> Hit any key to go on" read a ;; @@ -446,18 +506,20 @@ do 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 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 $installPrefixThird/share/creatools_third_party_library_config.sh + echo "Third party config file : " $installPrefixThird/share/creatools_third_party_library_config.sh echo ------ more $installPrefixThird/share/creatools_third_party_library_config.sh echo ------ @@ -467,24 +529,53 @@ do if [ -f $installPrefix/share/creatools_base_library_config.sh ] then - echo $installPrefix/share/creatools_base_library_config.sh + echo "Creatools base library config file : " $installPrefix/share/creatools_base_library_config.sh echo ------ more $installPrefix/share/creatools_base_library_config.sh echo ------ - fi - echo "===================================" - echo - echo "Press any key to continue" - read a + 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 "===================================" + echo + echo "Press any key to continue" + read a ;; - + 9) - echo - exit 0 - ;; - + echo + exit 0 + ;; + + 10) + # Hiden option, usefull at debug time + bash scripts/ThirdParty-install_no_compile.sh + ;; + *) - echo "Your answer must be in {0, 1, 2, 3, 4, 5, 9} (was [ $i ])" + + 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