wxWidgets/build/tools/before_install.sh
Vadim Zeitlin 7859163e66 Require specifying wxGTK_VERSION for wxGTK builds on Travis CI
This avoids accidentally using a wrong GTK version, as it happened for
e.g. ARM64 build.
2020-10-19 16:50:56 +02:00

72 lines
2.9 KiB
Bash
Executable File

#!/bin/sh
#
# This script is used by Travis CI to install the dependencies before building
# wxWidgets but can also be run by hand if necessary but currently it only
# works for Ubuntu versions used by Travis builds.
SUDO=sudo
case $(uname -s) in
Linux)
if [ -f /etc/apt/sources.list ]; then
$SUDO apt-get update
case "$wxCONFIGURE_FLAGS" in
*--with-directfb*) libtoolkit_dev='libdirectfb-dev' ;;
*--with-motif*) libtoolkit_dev='libmotif-dev libxmu-dev' ;;
*--with-qt*) libtoolkit_dev='qtdeclarative5-dev libqt5opengl5-dev';;
*--with-x11*) extra_deps='libpango1.0-dev' ;;
*--disable-gui*) ;;
*)
case "$wxGTK_VERSION" in
3) libtoolkit_dev=libgtk-3-dev
extra_deps='libwebkit2gtk-4.0-dev libwebkitgtk-3.0-dev'
;;
2) libtoolkit_dev=libgtk2.0-dev
extra_deps='libwebkitgtk-dev'
;;
*) echo 'Please specify wxGTK_VERSION explicitly.' >&2
exit 1
;;
esac
extra_deps="$extra_deps \
libgstreamermm-1.0-dev libgstreamermm-0.10-dev \
libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \
libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev \
libglu1-mesa-dev"
esac
extra_deps="$extra_deps libsecret-1-dev libnotify-dev"
for pkg in $extra_deps; do
if $(apt-cache pkgnames | grep -q $pkg) ; then
pkg_install="$pkg_install $pkg"
fi
done
$SUDO apt-get install -y $libtoolkit_dev $pkg_install
if [ "$wxUSE_ASAN" = 1 ]; then
codename=$(lsb_release --codename --short)
# Enable the `-dbgsym` repositories.
echo "deb http://ddebs.ubuntu.com ${codename} main restricted universe multiverse
deb http://ddebs.ubuntu.com ${codename}-updates main restricted universe multiverse
deb http://ddebs.ubuntu.com ${codename}-proposed main restricted universe multiverse" | \
$SUDO tee --append /etc/apt/sources.list.d/ddebs.list
# Import the debug symbol archive signing key from the Ubuntu server.
# Note that this command works only on Ubuntu 18.04 LTS and newer.
$SUDO apt-get install -y ubuntu-dbgsym-keyring
$SUDO apt-get update
# Install the symbols to allow LSAN suppression list to work.
$SUDO apt-get install -y libfontconfig1-dbgsym
fi
fi
;;
Darwin)
;;
esac