-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
f447c0c
commit 72f9e65
Showing
5 changed files
with
156 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
#!/bin/bash | ||
set -euo pipefail | ||
|
||
# Script for installing ArduPilot build dependencies. | ||
|
||
cd "$(dirname "$0")/ardupilot" | ||
|
||
edo() { | ||
echo " >> $*" 1>&2 | ||
"$@" | ||
} | ||
|
||
. venv/bin/activate | ||
export CC=aarch64-linux-gnu-gcc | ||
export CXX=aarch64-linux-gnu-g++ | ||
export LD=aarch64-linux-gnu-g++ | ||
./waf -o build.aarch64 configure --board sitl | ||
./waf -o build.aarch64 build --target bin/arduplane |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
#!/bin/bash | ||
set -euo pipefail | ||
|
||
# Initialize additional submodules that are needed for the ArduPilot build. | ||
|
||
cd "$(dirname "$0")/ardupilot" | ||
|
||
edo() { | ||
echo " >> $*" 1>&2 | ||
"$@" | ||
} | ||
|
||
modules=( | ||
waf | ||
DroneCAN/dronecan_dsdlc | ||
DroneCAN/pydronecan | ||
DroneCAN/DSDL | ||
DroneCAN/libcanard | ||
) | ||
for x in "${modules[@]}"; do | ||
edo git submodule update --init "modules/$x" | ||
done |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
#!/bin/bash | ||
set -euo pipefail | ||
|
||
# Script for installing ArduPilot build dependencies. | ||
|
||
cd "$(dirname "$0")/ardupilot" | ||
|
||
edo() { | ||
echo " >> $*" 1>&2 | ||
"$@" | ||
} | ||
|
||
first() { | ||
echo "$1" | ||
} | ||
|
||
install_if_missing() { | ||
local package="$1" | ||
local file="$2" | ||
|
||
# If `$2` is a glob pattern, expand it to the first matching file if one | ||
# exists. | ||
if [[ ! -f "$(IFS='' first $file)" ]]; then | ||
echo "missing $file - need to install package $package" 1>&2 | ||
edo sudo apt-get install -y "$package" | ||
if [[ ! -f "$(IFS='' first $file)" ]]; then | ||
echo "actual contents of $package:" 1>&2 | ||
dpkg-query -L "$package" 1>&2 | ||
echo "error: expected package $package to provide $file, but it did not" 1>&2 | ||
return 1 | ||
fi | ||
fi | ||
} | ||
|
||
# Create Python virtualenv if it doesn't yet exist. | ||
if [[ ! -d venv ]]; then | ||
edo install_if_missing python3-virtualenv /usr/bin/virtualenv | ||
virtualenv venv | ||
fi | ||
|
||
# Install Python dependencies into the virtualenv. `pip install` is a no-op if | ||
# the package is already installed. | ||
( | ||
. venv/bin/activate | ||
pip3 install pexpect empy==3.3.4 future | ||
if [[ -z "${BUILD_ONLY:+x}" ]]; then | ||
pip3 install pymavlink MAVProxy opencv-python matplotlib | ||
|
||
# Extra system package needed for building wxPython | ||
edo install_if_missing libgtk-3-dev /usr/lib/*/pkgconfig/gtk+-3.0.pc | ||
# Note: the wxPython install builds from source, which takes a while | ||
pip3 install wxPython | ||
fi | ||
) | ||
|
||
install_if_missing gcc-aarch64-linux-gnu /usr/bin/aarch64-linux-gnu-gcc | ||
install_if_missing g++-aarch64-linux-gnu /usr/bin/aarch64-linux-gnu-g++ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters