You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
1.7 KiB
66 lines
1.7 KiB
#!/bin/bash |
|
# Install dependencies and configure the environment for CI build testing |
|
|
|
set -ex |
|
|
|
PKGS="build-essential gawk ccache genromfs libc6-i386 \ |
|
python-argparse python-empy python-serial zlib1g-dev gcc-4.9 g++-4.9" |
|
|
|
ARM_ROOT="gcc-arm-none-eabi-4_9-2015q3" |
|
ARM_TARBALL="$ARM_ROOT-20150921-linux.tar.bz2" |
|
|
|
RPI_ROOT="master" |
|
RPI_TARBALL="$RPI_ROOT.tar.gz" |
|
|
|
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y |
|
sudo apt-get -qq -y update |
|
sudo apt-get -qq -y install $PKGS |
|
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 90 \ |
|
--slave /usr/bin/g++ g++ /usr/bin/g++-4.9 |
|
|
|
pushd $HOME |
|
|
|
mkdir -p $HOME/opt |
|
pushd $HOME/opt |
|
|
|
# PX4 toolchain |
|
compiler=$ARM_ROOT |
|
if [ ! -d "$HOME/opt/$compiler" ]; then |
|
wget http://firmware.diydrones.com/Tools/PX4-tools/$ARM_TARBALL |
|
tar -xf $ARM_TARBALL |
|
fi |
|
|
|
# RPi/BBB toolchain |
|
compiler="tools-master/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64" |
|
if [ ! -d "$HOME/opt/$compiler" ]; then |
|
wget http://firmware.diydrones.com/Tools/Travis/NavIO/$RPI_TARBALL |
|
tar -xf $RPI_TARBALL |
|
fi |
|
|
|
popd |
|
|
|
mkdir -p $HOME/bin |
|
|
|
# configure ccache |
|
ln -s /usr/bin/ccache ~/bin/g++ |
|
ln -s /usr/bin/ccache ~/bin/gcc |
|
ln -s /usr/bin/ccache ~/bin/arm-none-eabi-g++ |
|
ln -s /usr/bin/ccache ~/bin/arm-none-eabi-gcc |
|
ln -s /usr/bin/ccache ~/bin/arm-linux-gnueabihf-g++ |
|
ln -s /usr/bin/ccache ~/bin/arm-linux-gnueabihf-gcc |
|
|
|
exportline="export PATH=$HOME/bin:" |
|
exportline="${exportline}:$HOME/opt/gcc-arm-none-eabi-4_9-2015q3/bin:" |
|
exportline="${exportline}:$HOME/opt/tools-master/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin:" |
|
exportline="${exportline}:\$PATH" |
|
|
|
if grep -Fxq "$exportline" ~/.profile; then |
|
echo nothing to do; |
|
else |
|
echo $exportline >> ~/.profile; |
|
fi |
|
|
|
. ~/.profile |
|
|
|
popd |
|
|
|
|