summaryrefslogtreecommitdiff
path: root/pcr/asterisk/PKGBUILD
diff options
context:
space:
mode:
authorDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2019-01-08 16:00:50 +0100
committerDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2019-01-08 22:18:22 +0100
commit29e0c54e56c8a9dd68ab6844c56fc332ac46cb15 (patch)
treeab6ac3d1d33850e63b507ee583ac74e587cea162 /pcr/asterisk/PKGBUILD
parent77b12b7a8bc5e704dacedfd0bc95a78fb7034b79 (diff)
downloadabslibre-29e0c54e56c8a9dd68ab6844c56fc332ac46cb15.tar.gz
abslibre-29e0c54e56c8a9dd68ab6844c56fc332ac46cb15.tar.bz2
abslibre-29e0c54e56c8a9dd68ab6844c56fc332ac46cb15.zip
pcr/asterisk: update to 16.1.1 and fix most illegal instructions
This is based on the PKGBUILD available on aur here: https://aur.archlinux.org/asterisk.git Before this package was built with -march=native, so if you build it on a machine with a processor that supports avx (Advanced Vector Extensions), libpjsip.so.2 ended up with vpxor instructions that were also executed on machines with a processor that did not have such extension, which resulted in an illegal instruction at asterisk startup. Though for some reason, with this patch, building asterisk on a machine with avx still results in res_pjsip_send_to_voicemail.so having one vpxor instruction. Hopefully even with that, asterisk can still start. Changes from the aur PKGBUILD: - Parabola's change to always depend on pjproject was kept - Native builds were disabled by using the ChangeLog documentation: "Those who need different -march= values, please, go for ./configure make menuselect.makeopts or make menuselect ./menuselect/menuselect --disable BUILD_NATIVE" Without that the build machine processor - Parabola's minimum system requirements states that: "Parabola GNU/Linux-libre should run on any i686 compatible machine [...]" - Wikipedia states that i686 has MMX and SSE[2] The package build was tested on x86_64, i686 and armv7h. On x86_64 I verified that most asterisk ELF files did not have vpxor instructions anymore with: $ pacman -Q -l asterisk | \ awk '{print $2}' | xargs file | grep ELF | \ sed 's#:.*##' | xargs objdump -D | grep vpxor Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Diffstat (limited to 'pcr/asterisk/PKGBUILD')
-rw-r--r--pcr/asterisk/PKGBUILD274
1 files changed, 139 insertions, 135 deletions
diff --git a/pcr/asterisk/PKGBUILD b/pcr/asterisk/PKGBUILD
index 52c129338..12d4a793b 100644
--- a/pcr/asterisk/PKGBUILD
+++ b/pcr/asterisk/PKGBUILD
@@ -1,151 +1,147 @@
-# Maintainer (AUR): Xavier Devlamynck <magicrhesus@ouranos.be>
+# Maintainer (AUR): Maxim Kurnosenko <asusx2@mail.ru>
+# Contributor (AUR): Caleb Maclennan <caleb@alerque.com>
+# Contributor (AUR): Xavier Devlamynck <magicrhesus@ouranos.be>
# Contributor (AUR): Alessio Biancalana <dottorblaster@gmail.com>
# Contributor (AUR): Maik Broemme <mbroemme@libmpq.org>
+# Contributor (Parabola): Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
# parabola changes and rationale:
# - added pjproject as explicit dependency
-# - patched https://issues.asterisk.org/jira/browse/ASTERISK-27356
pkgname=asterisk
-pkgver=15.1.0
+pkgver=16.1.1
pkgrel=1
pkgdesc="A complete PBX solution"
arch=('i686' 'x86_64' 'armv7h')
backup=('etc/asterisk/acl.conf'
- 'etc/asterisk/adsi.conf'
- 'etc/asterisk/agents.conf'
- 'etc/asterisk/alarmreceiver.conf'
- 'etc/asterisk/alsa.conf'
- 'etc/asterisk/amd.conf'
- 'etc/asterisk/app_mysql.conf'
- 'etc/asterisk/app_skel.conf'
- 'etc/asterisk/ari.conf'
- 'etc/asterisk/asterisk.adsi'
- 'etc/asterisk/asterisk.conf'
- 'etc/asterisk/calendar.conf'
- 'etc/asterisk/ccss.conf'
- 'etc/asterisk/cdr.conf'
- 'etc/asterisk/cdr_adaptive_odbc.conf'
- 'etc/asterisk/cdr_custom.conf'
- 'etc/asterisk/cdr_manager.conf'
- 'etc/asterisk/cdr_mysql.conf'
- 'etc/asterisk/cdr_odbc.conf'
- 'etc/asterisk/cdr_pgsql.conf'
- 'etc/asterisk/cdr_sqlite3_custom.conf'
- 'etc/asterisk/cdr_syslog.conf'
- 'etc/asterisk/cdr_tds.conf'
- 'etc/asterisk/cel.conf'
- 'etc/asterisk/cel_custom.conf'
- 'etc/asterisk/cel_odbc.conf'
- 'etc/asterisk/cel_pgsql.conf'
- 'etc/asterisk/cel_sqlite3_custom.conf'
- 'etc/asterisk/cel_tds.conf'
- 'etc/asterisk/chan_dahdi.conf'
- 'etc/asterisk/chan_mobile.conf'
- 'etc/asterisk/cli.conf'
- 'etc/asterisk/cli_aliases.conf'
- 'etc/asterisk/cli_permissions.conf'
- 'etc/asterisk/codecs.conf'
- 'etc/asterisk/confbridge.conf'
- 'etc/asterisk/config_test.conf'
- 'etc/asterisk/console.conf'
- 'etc/asterisk/dbsep.conf'
- 'etc/asterisk/dnsmgr.conf'
- 'etc/asterisk/dsp.conf'
- 'etc/asterisk/dundi.conf'
- 'etc/asterisk/enum.conf'
- 'etc/asterisk/extconfig.conf'
- 'etc/asterisk/extensions.ael'
- 'etc/asterisk/extensions.conf'
- 'etc/asterisk/extensions.lua'
- 'etc/asterisk/extensions_minivm.conf'
- 'etc/asterisk/features.conf'
- 'etc/asterisk/festival.conf'
- 'etc/asterisk/followme.conf'
- 'etc/asterisk/func_odbc.conf'
- 'etc/asterisk/hep.conf'
- 'etc/asterisk/http.conf'
- 'etc/asterisk/iax.conf'
- 'etc/asterisk/iaxprov.conf'
- 'etc/asterisk/indications.conf'
- 'etc/asterisk/logger.conf'
- 'etc/asterisk/manager.conf'
- 'etc/asterisk/meetme.conf'
- 'etc/asterisk/mgcp.conf'
- 'etc/asterisk/minivm.conf'
- 'etc/asterisk/misdn.conf'
- 'etc/asterisk/modules.conf'
- 'etc/asterisk/motif.conf'
- 'etc/asterisk/musiconhold.conf'
- 'etc/asterisk/muted.conf'
- 'etc/asterisk/ooh323.conf'
- 'etc/asterisk/osp.conf'
- 'etc/asterisk/oss.conf'
- 'etc/asterisk/phone.conf'
- 'etc/asterisk/phoneprov.conf'
- 'etc/asterisk/pjsip.conf'
- 'etc/asterisk/pjsip_notify.conf'
- 'etc/asterisk/pjsip_wizard.conf'
- 'etc/asterisk/queuerules.conf'
- 'etc/asterisk/queues.conf'
- 'etc/asterisk/res_config_mysql.conf'
- 'etc/asterisk/res_config_sqlite.conf'
- 'etc/asterisk/res_config_sqlite3.conf'
- 'etc/asterisk/res_corosync.conf'
- 'etc/asterisk/res_curl.conf'
- 'etc/asterisk/res_fax.conf'
- 'etc/asterisk/res_ldap.conf'
- 'etc/asterisk/res_odbc.conf'
- 'etc/asterisk/res_parking.conf'
- 'etc/asterisk/res_pgsql.conf'
- 'etc/asterisk/res_pktccops.conf'
- 'etc/asterisk/res_snmp.conf'
- 'etc/asterisk/res_stun_monitor.conf'
- 'etc/asterisk/rtp.conf'
- 'etc/asterisk/say.conf'
- 'etc/asterisk/sip.conf'
- 'etc/asterisk/sip_notify.conf'
- 'etc/asterisk/skinny.conf'
- 'etc/asterisk/sla.conf'
- 'etc/asterisk/smdi.conf'
- 'etc/asterisk/sorcery.conf'
- 'etc/asterisk/ss7.timers'
- 'etc/asterisk/stasis.conf'
- 'etc/asterisk/statsd.conf'
- 'etc/asterisk/telcordia-1.adsi'
- 'etc/asterisk/test_sorcery.conf'
- 'etc/asterisk/udptl.conf'
- 'etc/asterisk/unistim.conf'
- 'etc/asterisk/users.conf'
- 'etc/asterisk/voicemail.conf'
- 'etc/asterisk/vpb.conf'
- 'etc/asterisk/xmpp.conf')
-url="http://www.asterisk.org"
+ 'etc/asterisk/adsi.conf'
+ 'etc/asterisk/agents.conf'
+ 'etc/asterisk/alarmreceiver.conf'
+ 'etc/asterisk/alsa.conf'
+ 'etc/asterisk/amd.conf'
+ 'etc/asterisk/app_mysql.conf'
+ 'etc/asterisk/app_skel.conf'
+ 'etc/asterisk/ari.conf'
+ 'etc/asterisk/asterisk.adsi'
+ 'etc/asterisk/asterisk.conf'
+ 'etc/asterisk/calendar.conf'
+ 'etc/asterisk/ccss.conf'
+ 'etc/asterisk/cdr.conf'
+ 'etc/asterisk/cdr_adaptive_odbc.conf'
+ 'etc/asterisk/cdr_custom.conf'
+ 'etc/asterisk/cdr_manager.conf'
+ 'etc/asterisk/cdr_mysql.conf'
+ 'etc/asterisk/cdr_odbc.conf'
+ 'etc/asterisk/cdr_pgsql.conf'
+ 'etc/asterisk/cdr_sqlite3_custom.conf'
+ 'etc/asterisk/cdr_syslog.conf'
+ 'etc/asterisk/cdr_tds.conf'
+ 'etc/asterisk/cel.conf'
+ 'etc/asterisk/cel_custom.conf'
+ 'etc/asterisk/cel_odbc.conf'
+ 'etc/asterisk/cel_pgsql.conf'
+ 'etc/asterisk/cel_sqlite3_custom.conf'
+ 'etc/asterisk/cel_tds.conf'
+ 'etc/asterisk/chan_dahdi.conf'
+ 'etc/asterisk/chan_mobile.conf'
+ 'etc/asterisk/cli.conf'
+ 'etc/asterisk/cli_aliases.conf'
+ 'etc/asterisk/cli_permissions.conf'
+ 'etc/asterisk/codecs.conf'
+ 'etc/asterisk/confbridge.conf'
+ 'etc/asterisk/config_test.conf'
+ 'etc/asterisk/console.conf'
+ 'etc/asterisk/dbsep.conf'
+ 'etc/asterisk/dnsmgr.conf'
+ 'etc/asterisk/dsp.conf'
+ 'etc/asterisk/dundi.conf'
+ 'etc/asterisk/enum.conf'
+ 'etc/asterisk/extconfig.conf'
+ 'etc/asterisk/extensions.ael'
+ 'etc/asterisk/extensions.conf'
+ 'etc/asterisk/extensions.lua'
+ 'etc/asterisk/extensions_minivm.conf'
+ 'etc/asterisk/features.conf'
+ 'etc/asterisk/festival.conf'
+ 'etc/asterisk/followme.conf'
+ 'etc/asterisk/func_odbc.conf'
+ 'etc/asterisk/hep.conf'
+ 'etc/asterisk/http.conf'
+ 'etc/asterisk/iax.conf'
+ 'etc/asterisk/iaxprov.conf'
+ 'etc/asterisk/indications.conf'
+ 'etc/asterisk/logger.conf'
+ 'etc/asterisk/manager.conf'
+ 'etc/asterisk/meetme.conf'
+ 'etc/asterisk/mgcp.conf'
+ 'etc/asterisk/minivm.conf'
+ 'etc/asterisk/misdn.conf'
+ 'etc/asterisk/modules.conf'
+ 'etc/asterisk/motif.conf'
+ 'etc/asterisk/musiconhold.conf'
+ 'etc/asterisk/muted.conf'
+ 'etc/asterisk/ooh323.conf'
+ 'etc/asterisk/osp.conf'
+ 'etc/asterisk/oss.conf'
+ 'etc/asterisk/phone.conf'
+ 'etc/asterisk/phoneprov.conf'
+ 'etc/asterisk/pjsip.conf'
+ 'etc/asterisk/pjsip_notify.conf'
+ 'etc/asterisk/pjsip_wizard.conf'
+ 'etc/asterisk/queuerules.conf'
+ 'etc/asterisk/queues.conf'
+ 'etc/asterisk/res_config_mysql.conf'
+ 'etc/asterisk/res_config_sqlite.conf'
+ 'etc/asterisk/res_config_sqlite3.conf'
+ 'etc/asterisk/res_corosync.conf'
+ 'etc/asterisk/res_curl.conf'
+ 'etc/asterisk/res_fax.conf'
+ 'etc/asterisk/res_ldap.conf'
+ 'etc/asterisk/res_odbc.conf'
+ 'etc/asterisk/res_parking.conf'
+ 'etc/asterisk/res_pgsql.conf'
+ 'etc/asterisk/res_pktccops.conf'
+ 'etc/asterisk/res_snmp.conf'
+ 'etc/asterisk/res_stun_monitor.conf'
+ 'etc/asterisk/rtp.conf'
+ 'etc/asterisk/say.conf'
+ 'etc/asterisk/sip.conf'
+ 'etc/asterisk/sip_notify.conf'
+ 'etc/asterisk/skinny.conf'
+ 'etc/asterisk/sla.conf'
+ 'etc/asterisk/smdi.conf'
+ 'etc/asterisk/sorcery.conf'
+ 'etc/asterisk/ss7.timers'
+ 'etc/asterisk/stasis.conf'
+ 'etc/asterisk/statsd.conf'
+ 'etc/asterisk/telcordia-1.adsi'
+ 'etc/asterisk/test_sorcery.conf'
+ 'etc/asterisk/udptl.conf'
+ 'etc/asterisk/unistim.conf'
+ 'etc/asterisk/users.conf'
+ 'etc/asterisk/voicemail.conf'
+ 'etc/asterisk/vpb.conf'
+ 'etc/asterisk/xmpp.conf')
+url='http://www.asterisk.org'
license=('GPL')
-depends=('alsa-lib' 'speex' 'popt' 'libvorbis' 'curl' 'libxml2' 'jansson' 'libxslt' 'opus' 'pjproject')
+depends=('alsa-lib' 'speex' 'popt' 'libvorbis' 'curl' 'libxml2' 'jansson' 'libxslt' 'opus' 'libedit' 'pjproject')
makedepends=('sqlite3' 'gsm')
optdepends=('lua51' 'libsrtp' 'postgresql' 'unixodbc' 'libpri' 'libss7' 'openr2' 'iksemel' 'radiusclient-ng' 'dahdi')
-source=(http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-${pkgver}.tar.gz \
- ${pkgname}.service \
- ${pkgname}.logrotated \
- ${pkgname}.tmpfile \
- libSRTP_2_x_x+GCM.patch)
install=${pkgname}.install
-sha256sums=('23a34342c410009ab35566bf85ca2a1a0573f1848dc0ac74f65f5e0bca51f898'
- '94acb6e68424195a12fd9d406b3fb586f264a550e75801f6e020a86e800dd42c'
+source=("https://downloads.asterisk.org/pub/telephony/asterisk/releases/${pkgname}-${pkgver}.tar.gz"
+ "${pkgname}.sysusers"
+ "${pkgname}.logrotated"
+ "${pkgname}.tmpfile")
+sha256sums=('bbf21452dfb213ecc0f24ef05d240e72b57cbc834f9e2e113062c2db2bde6ea5'
+ 'fc2e42f79e1672cc25b9b8ad2ba99616fbba0047641c986d30718655d0e7d4d8'
'caa24cfec5c6b4f8cea385269e39557362acad7e2a552994c3bc24080e3bdd4e'
- '673c0c55bce8068c297f9cdd389402c2d5d5a25e2cf84732cb071198bd6fa78a'
- 'b26311a6cd0413d563346537db3d41277b27932d0720c2431dec0167de31954e')
-
-prepare(){
- cd ${srcdir}/${pkgname}-${pkgver}
- patch -Np0 -i "$srcdir"/libSRTP_2_x_x+GCM.patch
-}
+ '673c0c55bce8068c297f9cdd389402c2d5d5a25e2cf84732cb071198bd6fa78a')
build() {
- cd ${srcdir}/${pkgname}-${pkgver}
- #./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --sbindir=/usr/bin --with-libedit=internal
+ cd ${pkgname}-${pkgver}
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --sbindir=/usr/bin --with-pjproject-bundled=no
+ make menuselect.makeopts
+ ./menuselect/menuselect --disable BUILD_NATIVE
make
}
@@ -153,15 +149,23 @@ package(){
cd ${srcdir}/${pkgname}-${pkgver}
make DESTDIR=${pkgdir} install
make DESTDIR=${pkgdir} samples
-
+
sed -i -e "s/\/var\/run/\/run/" ${pkgdir}/etc/asterisk/asterisk.conf
mkdir -p ${pkgdir}/usr/share/doc/asterisk/examples
for i in ${pkgdir}/etc/asterisk/*; do install -D -m 644 $i ${pkgdir}/usr/share/doc/asterisk/examples/; done
-
+
mv ${pkgdir}/var/run ${pkgdir}
-
- install -D -m 644 ${srcdir}/asterisk.logrotated ${pkgdir}/etc/logrotate.d/asterisk
- install -D -m 644 ${srcdir}/asterisk.service ${pkgdir}/usr/lib/systemd/system/asterisk.service
- install -D -m 644 ${srcdir}/asterisk.tmpfile ${pkgdir}/usr/lib/tmpfiles.d/asterisk.conf
+
+ install -D -m 644 ${srcdir}/${pkgname}.sysusers ${pkgdir}/usr/lib/sysusers.d/asterisk.conf
+ install -D -m 644 ${srcdir}/${pkgname}.logrotated ${pkgdir}/etc/logrotate.d/asterisk
+ install -D -m 644 ${srcdir}/${pkgname}.tmpfile ${pkgdir}/usr/lib/tmpfiles.d/asterisk.conf
+
+ install -D -m 644 ${srcdir}/${pkgname}-${pkgver}/contrib/systemd/asterisk.service ${pkgdir}/usr/lib/systemd/system/asterisk.service
+ install -D -m 644 ${srcdir}/${pkgname}-${pkgver}/contrib/systemd/asterisk.socket ${pkgdir}/usr/lib/systemd/system/asterisk.socket
+ install -D -m 644 ${srcdir}/${pkgname}-${pkgver}/contrib/systemd/asterisk-ami.socket ${pkgdir}/usr/lib/systemd/system/asterisk-ami.socket
+ install -D -m 644 ${srcdir}/${pkgname}-${pkgver}/contrib/systemd/asterisk-amis.socket ${pkgdir}/usr/lib/systemd/system/asterisk-amis.socket
+ install -D -m 644 ${srcdir}/${pkgname}-${pkgver}/contrib/systemd/asterisk-cli.socket ${pkgdir}/usr/lib/systemd/system/asterisk-cli.socket
+ install -D -m 644 ${srcdir}/${pkgname}-${pkgver}/contrib/systemd/asterisk-http.socket ${pkgdir}/usr/lib/systemd/system/asterisk-http.socket
+ install -D -m 644 ${srcdir}/${pkgname}-${pkgver}/contrib/systemd/asterisk-https.socket ${pkgdir}/usr/lib/systemd/system/asterisk-https.socket
}