59 lines
3.3 KiB
Bash
Executable File
59 lines
3.3 KiB
Bash
Executable File
#!/bin/sh
|
|
# Determine the operating system distribution that is being run and install the build dependencies for it.
|
|
|
|
if [ "$(whoami)" != "root" ]; then
|
|
echo "Run this as root! sudo should do the trick."
|
|
exit
|
|
fi
|
|
|
|
if [ -f /etc/debian_version ]; then # Debian (untested!)
|
|
echo -e "\e[1;31mDebian detected!\e[0m"
|
|
echo -e "\e[1;31mNote: you can build a DEB package running './build_desura.sh pack_deb'\e[0m"
|
|
DEPS="autoconf automake binutils bison build-essential cmake flex gcc gperf libasound2-dev libboost-dev libboost-date-time-dev libboost-filesystem-dev libboost-system-dev libboost-test-dev libboost-thread-dev libbz2-dev libc-ares-dev libcups2-dev libdbus-glib-1-dev libevent-dev libflac-dev libgconf2-dev libgnome-keyring-dev libgtk2.0-dev libjpeg62-dev libnotify-dev libnss3-dev libpng12-dev libspeex-dev libsqlite3-dev libssl-dev libtinyxml2-dev libtool libv8-dev libx11-dev libxml2-dev libxpm-dev libxslt1-dev m4 scons xdg-utils yasm libxt-dev"
|
|
if [ `uname -m` = 'x86_64' ]; then # 64 bit dependencies for 32BIT_SUPPORT
|
|
DEPS=$DEPS" libc6-dev-i386 gcc-multilib"
|
|
fi
|
|
ST=`dpkg -l ${DEPS} 2>/dev/null | grep "^ii\ " | cut -d' ' -f2`
|
|
for PACK in ${DEPS}
|
|
do
|
|
CHECK=`echo "${ST}" | grep ${PACK}`
|
|
if [ "${CHECK}" = "" ] ; then
|
|
MUST_BE_INSTALLED="${MUST_BE_INSTALLED} ${PACK}"
|
|
fi
|
|
done
|
|
if [ "${MUST_BE_INSTALLED}" != "" ] ; then
|
|
apt-get install ${MUST_BE_INSTALLED}
|
|
else
|
|
echo "everything installed"
|
|
fi
|
|
elif [ -f /etc/redhat-release ]; then # Red Hat
|
|
echo -e "\e[1;31mRed Hat detected!\e[0m"
|
|
echo -e "\e[1;31mNote: you can build a RPM package running './build_desura.sh pack_rpm'\e[0m"
|
|
yum install m4 autoconf gcc-c++ libstdc++-static glibc-devel binutils autoconf libtool gtk2-devel nss-devel GConf2-devel libgnome-keyring-devel dbus-glib-devel gperf bison cups-devel flex libjpeg-turbo-devel alsa-lib-devel bzip2-devel libXpm-devel libX11-devel openssl-devel libnotify-devel scons xdg-user-dirs v8-devel c-ares-devel sqlite-devel libxslt-devel yasm-devel libevent-devel boost-devel boost-static patch perl-Digest-MD5 libXt-devel
|
|
elif [ -f /etc/arch-release ]; then # Arch Linux
|
|
echo -e "\e[1;31mArch Linux detected!\e[0m"
|
|
echo -e "\e[1;31mNote: there are PKGBUILDs in ./distro/archlinux/\e[0m"
|
|
# By using "pacman -T" to find out needed dependencies, we don't get
|
|
# conflicts if a package we have installed provides one of the dependencies.
|
|
DEPS="cmake make boost glib2 pkg-config sqlite m4 autoconf gcc glibc autoconf libtool gtk2 nss libgnome-keyring dbus-glib gperf bison cups flex libjpeg-turbo alsa-lib bzip2 libxpm libx11 openssl scons gconf libnotify xdg-user-dirs v8 c-ares sed flac libpng speex zlib xdg-utils libevent libxslt yasm libxml2 libxxf86vm flashplugin libx11 libxt"
|
|
arch=`uname -m`
|
|
|
|
if [ "${arch}" == "x86_64" ] ; then
|
|
MULTILIB_DEVEL=`pacman -Sg multilib-devel | cut -d' ' -f2`
|
|
DEPS="${DEPS} binutils-multilib ${MULTILIB_DEVEL}"
|
|
elif [ "${arch}" == "i386" ] ; then # no extra-32-bit support needed
|
|
DEPS="${DEPS} binutils"
|
|
fi
|
|
DEPS=`pacman -T ${DEPS} | sed -e 's/\n/ /g'`
|
|
|
|
if [ -z "${DEPS}" ]; then
|
|
echo "Dependencies already installed."
|
|
else
|
|
pacman -S --asdeps ${DEPS}
|
|
fi
|
|
elif [ -f /usr/bin/emerge ]; then # Gentoo
|
|
echo "Please copy the ebuild under gentoo/portage into a local overlay and emerge via emerge --onlydeps desura"
|
|
else # else
|
|
echo "Unsupported operating system."
|
|
fi
|