install_prereq: Add Arch Linux.
authorAlexander Traud <pabstraud@compuserve.com>
Mon, 12 Mar 2018 15:20:54 +0000 (16:20 +0100)
committerAlexander Traud <pabstraud@compuserve.com>
Thu, 15 Mar 2018 13:24:56 +0000 (14:24 +0100)
ASTERISK-27738

Change-Id: I7ca620e3c4dfb4b064a19382c4915aeb42a2a09f

contrib/scripts/install_prereq

index dae8dee..e588d5c 100755 (executable)
@@ -67,6 +67,22 @@ PACKAGES_SUSE="$PACKAGES_SUSE wget subversion"
 PACKAGES_SUSE="$PACKAGES_SUSE bzip2 patch python-devel"
 
 # Basic build system:
+PACKAGES_ARCH="make gcc pkg-config"
+# Asterisk: basic requirements:
+PACKAGES_ARCH="$PACKAGES_ARCH libedit jansson libutil-linux libxml2 sqlite"
+# Asterisk: for addons:
+PACKAGES_ARCH="$PACKAGES_ARCH speex speexdsp libogg libvorbis alsa-lib portaudio curl xmlstarlet bison flex"
+PACKAGES_ARCH="$PACKAGES_ARCH postgresql-libs unixodbc libtool neon gmime lua uriparser libxslt openssl"
+PACKAGES_ARCH="$PACKAGES_ARCH libmariadbclient bluez-libs radcli freetds bash"
+PACKAGES_ARCH="$PACKAGES_ARCH net-snmp libnewt popt libical spandsp"
+PACKAGES_ARCH="$PACKAGES_ARCH c-client binutils libsrtp gsm doxygen graphviz zlib libldap"
+PACKAGES_ARCH="$PACKAGES_ARCH fftw libsndfile unbound"
+# Asterisk: for the unpackaged below:
+PACKAGES_ARCH="$PACKAGES_ARCH wget subversion"
+# Asterisk: for ./configure --with-pjproject-bundled:
+PACKAGES_ARCH="$PACKAGES_ARCH bzip2 patch python2"
+
+# Basic build system:
 PACKAGES_NBSD="gmake pkg-config"
 # Asterisk: basic requirements:
 PACKAGES_NBSD="$PACKAGES_NBSD editline jansson sqlite3 libuuid libxml2"
@@ -163,6 +179,15 @@ check_installed_rpms() {
        done
 }
 
+check_installed_pacman() {
+       for pack in "$@"
+       do
+               if ! pacman -Q --explicit $pack >/dev/null 2>/dev/null
+               then echo $pack
+               fi
+       done
+}
+
 check_installed_pkgs() {
        for pack in "$@"
        do
@@ -208,6 +233,13 @@ handle_rh() {
        fi
 }
 
+handle_arch() {
+       extra_packs=`check_installed_pacman $PACKAGES_ARCH`
+       if [ x"$extra_packs" != "x" ] ; then
+               $testcmd pacman -S --asexplicit --noconfirm $extra_packs
+       fi
+}
+
 handle_nbsd() {
        extra_packs=`check_installed_pkgs $PACKAGES_NBSD`
        if [ x"$extra_packs" != "x" ] ; then
@@ -334,6 +366,10 @@ elif [ -f /etc/SuSE-release -o -f /etc/novell-release ]; then
        handle_SUSE
 elif [ -f /etc/os-release ] && . /etc/os-release && [ "$ID" = "opensuse" ]; then
        handle_SUSE
+elif [ -r /etc/arch-release ]; then
+       handle_arch
+elif [ -f /etc/os-release ] && . /etc/os-release && [ "$ID_LIKE" = "archlinux" ]; then
+       handle_arch # $ID=arch
 elif [ "$OS" = 'NetBSD' ]; then
        handle_nbsd
 elif [ "$OS" = 'OpenBSD' ]; then