X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=Linux%2Finstallscript;h=b7c2f492c9209ee9dd3f42ab0e1f1a398675e40a;hb=86c5583aab988649d3987a15fcd17da4739baff3;hp=9c2ef2b2570bb93d6a159b9048ea09e95964fca9;hpb=96ba0c7c5b92d1d728f1f786282a198c0d7f001e;p=creaToolsTools.git diff --git a/Linux/installscript b/Linux/installscript index 9c2ef2b..b7c2f49 100755 --- a/Linux/installscript +++ b/Linux/installscript @@ -29,115 +29,8 @@ scriptDirName=$(dirname $(readlink -f $0) ) ############ 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" @@ -156,10 +49,7 @@ loginGroupName=`groups | awk '{print $1}'` buildType=Release gdcmVersion=GDCM1 ITKVersion=ITK3 -export ETC_BASHRC=~/.bashrc - - - +export ETC_BASHRC=`getbashrc` function usage { @@ -182,6 +72,7 @@ function usage { echo " 3rd-itk : Get, Compile, Install itk" echo " 3rd-gdcm : Get, Compile, Install gdcm" echo " 3rd-wx : Get, Compile, Install wx widget (for Mac Users)" + echo " 3rd-wt : Get, Compile, Install wt" echo " " echo " as a normal user:" echo " creatools : Get Compile and Install the CreaTools" @@ -248,7 +139,7 @@ if [ $# -le 0 ] ; then usage; fi command=$1 # check that command is valid -if [ `checkVal $command all config 3rd 3rd-base 3rd-vtk 3rd-itk 3rd-gdcm 3rd-wx creatools creatools-get creatools-cmp creatools-install creatools-generateBinTGZ uninstall printconfig help env` == "false" ] ; then +if [ `checkVal $command all config 3rd 3rd-base 3rd-vtk 3rd-itk 3rd-gdcm 3rd-wx 3rd-wt creatools creatools-get creatools-cmp creatools-install creatools-generateBinTGZ uninstall printconfig help env` == "false" ] ; then echo "Unrecognized command: $command" echo "" usage @@ -263,7 +154,7 @@ if [ `checkVal $command config all` == false ] ; then exit fi source $configureFile - if [ ! -f $installPrefixThird/share/creatools_third_party_library_config.sh ] ; then + if [ ! -f $installPrefixThird/share/creatools/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 @@ -283,8 +174,8 @@ fi checkDistrib $OperatingSystem # complete default install prefix -if [ -z "$installPrefix" ] ; then installPrefix=$generationdir/creatools_install; fi -if [ -z "$installPrefixThird" ] ; then installPrefixThird=$generationdir/thirdparty_install; fi +if [ -z "$installPrefix" ] ; then installPrefix=$generationdir/ci; fi +if [ -z "$installPrefixThird" ] ; then installPrefixThird=$generationdir/tpli; fi # check build type if [ `checkVal $buildType Release Debug RelWithDebug` == "false" ] ; then @@ -348,19 +239,13 @@ fi # install packaged dependencies as root if [ `checkVal $command all 3rd 3rd-base` == true ] ; then bigDisplay "INSTALL PACKAGES DEPENDENCIES" - if [ "`whoami`" == root ] ; then - 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:"; - su -c "bash scripts/ThirdParty-install-Base-Stuff.sh" - fi + source scripts/CreaTools-configure.sh + cd scripts + source ThirdParty-install-Base-Stuff.sh $OperatingSystem + cd .. bash scripts/ThirdParty-install.sh fi - - # vtk if [ `checkVal $command all 3rd 3rd-vtk` == true ] ; then bigDisplay "INSTALL VTK" @@ -379,15 +264,18 @@ fi if [ `checkVal $command all 3rd 3rd-itk` == true ] ; then bigDisplay "INSTALL $ITKVersion" bash scripts/ThirdParty-install-ITK.sh + cd $scriptDirName fi -## ?? -#if [ `checkVal $command all 3rd` == true ] ; then -# bash scripts/ThirdParty-install.sh -#fi +# wt +if [ `checkVal $command all 3rd 3rd-wt` == true ] ; then + bigDisplay "INSTALL WT" + source scripts/ThirdParty-install-WT.sh + cd $scriptDirName +fi # Setup the user .bashrc correctly -if [ `checkVal $command all 3rd 3rd-vtk 3rd-itk 3rd-gdcm 3rd-wx ` == true ] ; then +if [ `checkVal $command all 3rd 3rd-vtk 3rd-itk 3rd-gdcm 3rd-wx 3rd-wt ` == true ] ; then bigDisplay "FINALIZE 3RD PARTY LIBRARY INSTALLATION" bash scripts/ThirdParty-install-Finalize.sh if [ `checkVal $command 3rd 3rd-vtk 3rd-itk 3rd-gdcm 3rd-wx ` == true ] ; then @@ -400,6 +288,8 @@ fi # compile creatools if [ `checkVal $command all creatools creatools-cmp` == true ] ; then bigDisplay "COMPILE CREATOOLS" +echo "EED installscript compile creatools" +echo $ETC_BASHRC source $ETC_BASHRC bash -x scripts/CreaTools-compile.sh @@ -431,7 +321,7 @@ if [ `checkVal $command all creatools creatools-install` == true ] ; then echo "(Close this window and continue....) " echo " " echo " " - read -p "Press [Enter] key to continue..." + ##EED read -p "Press [Enter] key to continue..." fi #generate TGZ version of the bin (Creatools and ThirdParty)