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.
32 lines
701 B
32 lines
701 B
#!/bin/bash |
|
set -eo pipefail |
|
|
|
# --- dependencies --- |
|
PKGS="cmake librlottie-dev zlib1g-dev qtbase5-dev libssl-dev" |
|
MISSING="" |
|
for p in $PKGS; do |
|
dpkg -s "$p" &>/dev/null || MISSING="$MISSING $p" |
|
done |
|
|
|
if [ -n "$MISSING" ]; then |
|
echo "Installing missing packages:$MISSING" |
|
sudo apt update && sudo apt install -y $MISSING |
|
else |
|
echo "All dependencies OK" |
|
fi |
|
|
|
# --- build --- |
|
SRCDIR="$(cd "$(dirname "$0")" && pwd)" |
|
BUILDDIR="$SRCDIR/build" |
|
JOBS="${JOBS:-$(nproc)}" |
|
|
|
echo "Source: $SRCDIR" |
|
echo "Build: $BUILDDIR" |
|
echo "Jobs: $JOBS" |
|
echo "" |
|
|
|
[ -f "$BUILDDIR/Makefile" ] || cmake -S "$SRCDIR" -B "$BUILDDIR" |
|
cmake --build "$BUILDDIR" -j"$JOBS" |
|
|
|
echo "" |
|
echo "OK. Run: $BUILDDIR/chatgui"
|
|
|