clone_and_install_blaar_ubuntu.sh 3.96 KB
Newer Older
1
#!/usr/bin/env bash
2
3
# Basic Libraries And Applications for Robotics (BLAAR)
# Copyright  ETIS — ENSEA, University of Cergy-Pontoise, CNRS (2011 - 2017)
4
# Author: Arnaud Blanchard
5
#
6
7
8
9
10
11
# This software is governed by the CeCILL v2.1 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 v2.1 license as circulated by CEA, CNRS and INRIA at the following URL "http://www.cecill.info".
# 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.
# In this respect, the user's attention is drawn to the risks associated with loading, using, modifying and/or developing or reproducing the software by the user in light of its specific status of free software,
# that may mean  that it is complicated to manipulate, and that also therefore means that it is reserved for developers and experienced professionals having in-depth computer knowledge.
12
# Users are therefore encouraged to load and test the software's suitability as regards their requirements in conditions enabling the security of their systems and/or data to be ensured  and, more generally, to use and operate it in the same conditions as regards security.
13
14
# The fact that you are presently reading this means that you have had knowledge of the CeCILL v2.1 license and that you accept its terms.

15
{ #Bracket to be sure the file is fully loaded before excuting
16
17
18
19
set -o errexit  #Exit on first error
set -o nounset  #Error if a variable is used but nont defined
set -o pipefail #Error if a pipe fail

20
set_bash_profile_and_refresh(){
21
	echo "We create or update your $HOME/.bashrc redefining env variables 'BLAAR_DIR' and 'PATH'"
22
23
	{	echo "#Definitions for blaar (http://blaar.org)" 
		echo "export BLAAR_DIR=$PWD"
24
		echo 'export PATH=$PATH:$BLAAR_DIR/bin:$BLAAR_DIR/scripts'
25
26
27
28
		echo 
	} >> $HOME/.bashrc
	source $HOME/.bashrc
}
29

30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
echo
echo "Standard blaar install"
echo "======================"
echo 
echo "Check that there is no conflicting directories"
echo "----------------------------------------------"
echo
[ -d blaar ] && { echo "blaar directory already exist. Remove it or change the current install directory."; exit 1; }
[ -d blaar_build ] && { echo "blaar_build directory already exist. Remove it or change the current install directory."; exit 1; }
echo
echo
echo "Install required packages"
echo "-------------------------"
echo
echo "### Minimum packages:"
echo
46
sudo apt-get install git g++ cmake ninja-build 
47
48
49
echo
echo "### Standards packages: "
echo
50
sudo apt-get install doxygen libpng12-dev libjpeg-dev #pkg-config libgtk-3-dev|| { echo "### Fail installing doxygen rlwrap, libpng12-dev or libjpeg-dev, libs but they are optional. Continue step by step."; exit 2; }  #classical requirement
51
52
53
54
echo
echo "Download sources"
echo "----------------"
echo
55
git clone https://framagit.org/blaar/blaar
56
echo
57
58
cd blaar
echo
59
developer_tools/clone_ubuntu_projects.sh
60
echo
61
62
echo "Install and check each project"
echo "-----------------------------"
63
echo
Arnaud Blanchard's avatar
Arnaud Blanchard committed
64
./install.sh all 
65
./check_all.sh
66
echo
67
68
69
if [  "${BLAAR_DIR+set}" ]; then  #Test if BLAAR_DIR is defined. "${BLAAR_DIR+set}" means content "set" if exist
	if [ ! $BLAAR_DIR = "$PWD" ]; then
		#We remove any reference to blaar in bash_profile
70
	 	sed -i~  -e"s|#Definitions for blaar (http://blaar.org)||" -e"s|BLAAR_DIR=$BLAAR_DIR" -e "s|:$BLAAR_DIR/bin/||" -e "s|:$BLAAR_DIR/scripts||" $HOME/.bashrc	
71
72
73
74
75
76
77
78
79
		#We remove also any reference to it in env varaibles	 
		export PATH=$(echo $PATH|sed -e "s|:$BLAAR_DIR/bin/||" -e "s|:$BLAAR_DIR/scripts||")
		unset $BLAAR_DIR
		set_bash_profile_and_refresh
		echo "You have a previous installation of blaar in '$BLAAR_DIR'. We have redefined your standard version to '$PWD'"
	fi
else 
	set_bash_profile_and_refresh
fi
80
81
82
83
84
echo "**Success installing standard blaar**"
echo
}