Skip to content
Snippets Groups Projects
Commit 48649c77 authored by Duncan Bellamy's avatar Duncan Bellamy :speech_balloon: Committed by Timo Teräs
Browse files

main/asterisk: enable opus open source codec with own sub package

* fixes #12808
parent 06d33a44
No related branches found
No related tags found
1 merge request!22814main/asterisk: enable opus open source codec with own sub package
Pipeline #92279 passed
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
# Maintainer: Timo Teras <timo.teras@iki.fi> # Maintainer: Timo Teras <timo.teras@iki.fi>
pkgname=asterisk pkgname=asterisk
pkgver=18.2.2 pkgver=18.2.2
pkgrel=2 pkgrel=3
pkgdesc="Modular Open Source PBX System" pkgdesc="Modular Open Source PBX System"
pkgusers="asterisk" pkgusers="asterisk"
pkggroups="asterisk" pkggroups="asterisk"
...@@ -12,23 +12,57 @@ url="https://www.asterisk.org/" ...@@ -12,23 +12,57 @@ url="https://www.asterisk.org/"
arch="all" arch="all"
license="GPL-2.0-only WITH OpenSSL-Exception" license="GPL-2.0-only WITH OpenSSL-Exception"
options="!check" # Test suite is separate, and require separate build options="!check" # Test suite is separate, and require separate build
makedepends="findutils tar bsd-compat-headers libtool makedepends="
ncurses-dev popt-dev newt-dev zlib-dev libedit-dev tiff-dev curl-dev alsa-lib-dev
openssl-dev lua-dev libcap-dev jansson-dev util-linux-dev bluez-dev
sqlite-dev postgresql-dev unixodbc-dev freetds-dev mariadb-connector-c-dev bsd-compat-headers
alsa-lib-dev pjproject-dev dahdi-tools-dev libpri-dev libsrtp-dev curl-dev
spandsp-dev libresample speex-dev speexdsp-dev libogg-dev dahdi-tools-dev
bluez-dev libxml2-dev imap-dev unbound-dev" findutils
freetds-dev
imap-dev
jansson-dev
libcap-dev
libedit-dev
libogg-dev
libpri-dev
libresample
libsrtp-dev
libtool
libxml2-dev
lua-dev
mariadb-connector-c-dev
ncurses-dev
newt-dev
openssl-dev
opus-dev
opusfile-dev
pjproject-dev
popt-dev
postgresql-dev
spandsp-dev
speexdsp-dev
speex-dev
sqlite-dev
tar
tiff-dev
unbound-dev
unixodbc-dev
util-linux-dev
zlib-dev
"
install="$pkgname.pre-install $pkgname.pre-upgrade" install="$pkgname.pre-install $pkgname.pre-upgrade"
subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc $pkgname-pgsql $pkgname-odbc subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc $pkgname-pgsql $pkgname-odbc
$pkgname-tds $pkgname-fax $pkgname-sample-config:config:noarch $pkgname-tds $pkgname-fax $pkgname-sample-config:config:noarch
$pkgname-sounds-moh:sound_moh:noarch $pkgname-sounds-en:sound_en:noarch $pkgname-sounds-moh:sound_moh:noarch $pkgname-sounds-en:sound_en:noarch
$pkgname-mobile $pkgname-curl:_curl $pkgname-srtp $pkgname-dahdi $pkgname-mobile $pkgname-curl:_curl $pkgname-srtp $pkgname-dahdi
$pkgname-speex $pkgname-alsa $pkgname-cdr-mysql:cdr_mysql $pkgname-openrc" $pkgname-speex $pkgname-opus $pkgname-alsa $pkgname-cdr-mysql:cdr_mysql
$pkgname-openrc"
_download="https://downloads.asterisk.org/pub/telephony/asterisk/releases" _download="https://downloads.asterisk.org/pub/telephony/asterisk/releases"
source="$_download/asterisk-$pkgver.tar.gz source="$_download/asterisk-$pkgver.tar.gz
https://dev.alpinelinux.org/~tteras/asterisk-addon-mp3-r201.patch.gz https://dev.alpinelinux.org/~tteras/asterisk-addon-mp3-r201.patch.gz
https://github.com/traud/asterisk-opus/archive/asterisk-13.7.tar.gz
10-musl-mutex-init.patch 10-musl-mutex-init.patch
20-musl-astmm-fix.patch 20-musl-astmm-fix.patch
30-asterisk-mariadb.patch 30-asterisk-mariadb.patch
...@@ -36,7 +70,8 @@ source="$_download/asterisk-$pkgver.tar.gz ...@@ -36,7 +70,8 @@ source="$_download/asterisk-$pkgver.tar.gz
CVE-2021-32558.patch CVE-2021-32558.patch
asterisk.initd asterisk.initd
asterisk.confd asterisk.confd
asterisk.logrotate" asterisk.logrotate
"
# secfixes: # secfixes:
# 18.2.2-r2: # 18.2.2-r2:
...@@ -71,6 +106,10 @@ prepare() { ...@@ -71,6 +106,10 @@ prepare() {
# asteriskssl does not have direct references to libssl, but looks up # asteriskssl does not have direct references to libssl, but looks up
# symbols from it using dlsym(RTLD_NEXT), so use --no-as-needed for it. # symbols from it using dlsym(RTLD_NEXT), so use --no-as-needed for it.
sed -i -e 's/ASTSSL_LIBS:=$(OPENSSL_LIB)/ASTSSL_LIBS:=-Wl,--no-as-needed $(OPENSSL_LIB) -Wl,--as-needed/g' main/Makefile sed -i -e 's/ASTSSL_LIBS:=$(OPENSSL_LIB)/ASTSSL_LIBS:=-Wl,--no-as-needed $(OPENSSL_LIB) -Wl,--as-needed/g' main/Makefile
# copy codec_opus_open_source files
# res/* and include/asterisk/* are not needed as asterisk is new enough
cp --verbose ../asterisk-opus*/codecs/* codecs
} }
build() { build() {
...@@ -107,6 +146,8 @@ build() { ...@@ -107,6 +146,8 @@ build() {
--with-libedit \ --with-libedit \
--with-srtp \ --with-srtp \
--with-imap=system \ --with-imap=system \
--with-opus \
--with-opusfile \
CFLAGS="$CFLAGS -DENABLE_SRTP_AES_256" CFLAGS="$CFLAGS -DENABLE_SRTP_AES_256"
# get default modules to build # get default modules to build
...@@ -120,6 +161,7 @@ build() { ...@@ -120,6 +161,7 @@ build() {
--enable cdr_mysql \ --enable cdr_mysql \
--disable BUILD_NATIVE \ --disable BUILD_NATIVE \
--enable IMAP_STORAGE \ --enable IMAP_STORAGE \
--enable codec_opus_open_source \
menuselect.makeopts menuselect.makeopts
# build # build
...@@ -165,6 +207,7 @@ cdr_mysql() { amove usr/lib/asterisk/modules/*cdr_mysql*; } ...@@ -165,6 +207,7 @@ cdr_mysql() { amove usr/lib/asterisk/modules/*cdr_mysql*; }
srtp() { amove usr/lib/asterisk/modules/*_srtp*; } srtp() { amove usr/lib/asterisk/modules/*_srtp*; }
dahdi() { amove usr/lib/asterisk/modules/*_dahdi*; } dahdi() { amove usr/lib/asterisk/modules/*_dahdi*; }
speex() { amove usr/lib/asterisk/modules/*_speex*; } speex() { amove usr/lib/asterisk/modules/*_speex*; }
opus() { amove usr/lib/asterisk/modules/codec_opus_open_source.so; }
alsa() { amove usr/lib/asterisk/modules/*_alsa*; } alsa() { amove usr/lib/asterisk/modules/*_alsa*; }
config() { config() {
...@@ -195,6 +238,7 @@ sound_en() { ...@@ -195,6 +238,7 @@ sound_en() {
sha512sums=" sha512sums="
e15fe3c7f46d49991bcb6f6f565f15e4af0d658b4cd6b091079209dd95a8027858effdc2f2314d72ed46a73cdebc089d3c27d5cf8db50d2d21f3c317a8a4a546 asterisk-18.2.2.tar.gz e15fe3c7f46d49991bcb6f6f565f15e4af0d658b4cd6b091079209dd95a8027858effdc2f2314d72ed46a73cdebc089d3c27d5cf8db50d2d21f3c317a8a4a546 asterisk-18.2.2.tar.gz
aacef3f4796fb1abd33266998b53909cb4b36e7cc5ad2f7bac68bdc43e9a9072d9a4e2e7e681bddfa31f3d04575eb248afe6ea95da780c67e4829c1e22adfe1b asterisk-addon-mp3-r201.patch.gz aacef3f4796fb1abd33266998b53909cb4b36e7cc5ad2f7bac68bdc43e9a9072d9a4e2e7e681bddfa31f3d04575eb248afe6ea95da780c67e4829c1e22adfe1b asterisk-addon-mp3-r201.patch.gz
156fa77b2864c439fbdfd4be302657dc8264bfc1d5a8f3647a9a5184f5c8651913038dc917db0d2d396dc173d6f1491065a7c81e25b2a67e1bea22c79f5b640e asterisk-13.7.tar.gz
771237ba6d42ab62d914f2702234b23fd0bc8c22f2aa33b0e745c9170163c8046f6d48ecb299faab3d6fb397f1aa046421083c3cc88510c9779861c522f357dd 10-musl-mutex-init.patch 771237ba6d42ab62d914f2702234b23fd0bc8c22f2aa33b0e745c9170163c8046f6d48ecb299faab3d6fb397f1aa046421083c3cc88510c9779861c522f357dd 10-musl-mutex-init.patch
0fae11b42894ab3d405bc50e9275b9084712b482fbf9b4259ea938667fc5cbe413655f3ff83da0f607151bb2b6e49c2f741b5ada6944dbb478f076ef8d86380a 20-musl-astmm-fix.patch 0fae11b42894ab3d405bc50e9275b9084712b482fbf9b4259ea938667fc5cbe413655f3ff83da0f607151bb2b6e49c2f741b5ada6944dbb478f076ef8d86380a 20-musl-astmm-fix.patch
616de74bdd3c4a6e899128c73e31f5ff219095d2afe321f85a51f518ec2e9dac9b63396eed8e2568c295f1beb90f9a506c72d28211a973b35185bfffd24af37e 30-asterisk-mariadb.patch 616de74bdd3c4a6e899128c73e31f5ff219095d2afe321f85a51f518ec2e9dac9b63396eed8e2568c295f1beb90f9a506c72d28211a973b35185bfffd24af37e 30-asterisk-mariadb.patch
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment