From 25ffac29e0a3e87794220e04795def02f66a3e81 Mon Sep 17 00:00:00 2001 From: Duncan Bellamy Date: Sun, 7 Jun 2020 09:15:45 +0000 Subject: main/asterisk: upgrade to 16.11.0 * compile with CFLAGS='-DENABLE_SRTP_AES_256', from #11609 * update APKBUILD to use amove * update license from SPDX * add missing descriptions to patches, and openrc sub package * remove empty doc sub package function * make single line sub package format the same * add support for unbound --- main/asterisk/10-musl-mutex-init.patch | 14 ++++ main/asterisk/20-musl-astmm-fix.patch | 14 ++++ main/asterisk/30-asterisk-mariadb.patch | 35 +++++++++ main/asterisk/40-asterisk-cdefs.patch | 22 ++++++ main/asterisk/APKBUILD | 129 ++++++++------------------------ main/asterisk/asterisk-mariadb.patch | 33 -------- main/asterisk/musl-astmm-fix.patch | 12 --- main/asterisk/musl-mutex-init.patch | 12 --- 8 files changed, 118 insertions(+), 153 deletions(-) create mode 100644 main/asterisk/10-musl-mutex-init.patch create mode 100644 main/asterisk/20-musl-astmm-fix.patch create mode 100644 main/asterisk/30-asterisk-mariadb.patch create mode 100644 main/asterisk/40-asterisk-cdefs.patch delete mode 100644 main/asterisk/asterisk-mariadb.patch delete mode 100644 main/asterisk/musl-astmm-fix.patch delete mode 100644 main/asterisk/musl-mutex-init.patch diff --git a/main/asterisk/10-musl-mutex-init.patch b/main/asterisk/10-musl-mutex-init.patch new file mode 100644 index 00000000000..16b7fccbd97 --- /dev/null +++ b/main/asterisk/10-musl-mutex-init.patch @@ -0,0 +1,14 @@ +fix for compiling with musl + +diff -ru asterisk-12.4.0.orig/include/asterisk/lock.h asterisk-12.4.0/include/asterisk/lock.h +--- asterisk-12.4.0.orig/include/asterisk/lock.h 2013-11-02 06:05:24.000000000 -0200 ++++ asterisk-12.4.0/include/asterisk/lock.h 2014-08-04 16:00:29.811967599 -0300 +@@ -66,7 +66,7 @@ + #define AST_PTHREADT_NULL (pthread_t) -1 + #define AST_PTHREADT_STOP (pthread_t) -2 + +-#if (defined(SOLARIS) || defined(BSD)) ++#if (defined(SOLARIS) || defined(BSD) || !defined(HAVE_PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP)) + #define AST_MUTEX_INIT_W_CONSTRUCTORS + #endif /* SOLARIS || BSD */ + diff --git a/main/asterisk/20-musl-astmm-fix.patch b/main/asterisk/20-musl-astmm-fix.patch new file mode 100644 index 00000000000..e6f9d150e62 --- /dev/null +++ b/main/asterisk/20-musl-astmm-fix.patch @@ -0,0 +1,14 @@ +Add include file needed when compiling with musl + +diff --git a/include/asterisk/compat.h b/include/asterisk/compat.h +index 8547283..476dc2a 100644 +--- a/include/asterisk/compat.h ++++ b/include/asterisk/compat.h +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include + + #ifdef HAVE_STDDEF_H + #include diff --git a/main/asterisk/30-asterisk-mariadb.patch b/main/asterisk/30-asterisk-mariadb.patch new file mode 100644 index 00000000000..ae9e1aa23b0 --- /dev/null +++ b/main/asterisk/30-asterisk-mariadb.patch @@ -0,0 +1,35 @@ +Use mariadb instead of mysql + +diff --git a/addons/cdr_mysql.c b/addons/cdr_mysql.c +index 00c75dd..bc405bb 100644 +--- a/addons/cdr_mysql.c ++++ b/addons/cdr_mysql.c +@@ -43,6 +43,7 @@ + #include "asterisk.h" + + #include ++#include + #include + + #include "asterisk/config.h" +@@ -501,7 +502,7 @@ static int my_load_module(int reload) + res |= my_load_config_string(cfg, "global", "ssl_cert", &ssl_cert, ""); + res |= my_load_config_string(cfg, "global", "ssl_key", &ssl_key, ""); + +- res |= my_load_config_number(cfg, "global", "port", &dbport, MYSQL_PORT); ++ res |= my_load_config_number(cfg, "global", "port", &dbport, MARIADB_PORT); + res |= my_load_config_number(cfg, "global", "timeout", &timeout, 0); + res |= my_load_config_string(cfg, "global", "compat", &compat, "no"); + res |= my_load_config_string(cfg, "global", "cdrzone", &cdrzone, ""); +diff --git a/addons/res_config_mysql.c b/addons/res_config_mysql.c +index ae43485..94d3b35 100644 +--- a/addons/res_config_mysql.c ++++ b/addons/res_config_mysql.c +@@ -33,6 +33,7 @@ + #include + + #include ++#include + #include + + #include "asterisk/channel.h" diff --git a/main/asterisk/40-asterisk-cdefs.patch b/main/asterisk/40-asterisk-cdefs.patch new file mode 100644 index 00000000000..7cf22c84d81 --- /dev/null +++ b/main/asterisk/40-asterisk-cdefs.patch @@ -0,0 +1,22 @@ +include depreciated cdefs.h as needed for compilation with alpine + +--- a/main/ast_expr2.c ++++ b/main/ast_expr2.c +@@ -95,6 +95,7 @@ + #include "asterisk.h" + + #include ++#include + #include + + #if defined(STANDALONE) || defined(STANDALONE2) +--- a/utils/db1-ast/include/db.h ++++ b/utils/db1-ast/include/db.h +@@ -37,6 +37,7 @@ + #define _DB_H 1 + + #include ++#include + + #include + diff --git a/main/asterisk/APKBUILD b/main/asterisk/APKBUILD index 0a44a4af685..615fbb7fd58 100644 --- a/main/asterisk/APKBUILD +++ b/main/asterisk/APKBUILD @@ -1,44 +1,42 @@ +# Contributor: Duncan Bellamy # Contributor: Ɓukasz Jendrysik # Contributor: Timo Teras # Maintainer: Timo Teras pkgname=asterisk -pkgver=16.7.0 +pkgver=16.11.0 pkgrel=0 pkgdesc="Asterisk: A Module Open Source PBX System" pkgusers="asterisk" pkggroups="asterisk" url="http://www.asterisk.org/" arch="all" -license="GPL-2.0" -depends= +license="GPL-2.0-only" options="!check" # Test suite is separate, and require separate build -makedepends="findutils tar wget bsd-compat-headers libtool +makedepends="findutils tar bsd-compat-headers libtool ncurses-dev popt-dev newt-dev zlib-dev libedit-dev tiff-dev curl-dev openssl-dev lua-dev libcap-dev jansson-dev util-linux-dev sqlite-dev postgresql-dev unixodbc-dev freetds-dev mariadb-connector-c-dev alsa-lib-dev pjproject-dev dahdi-tools-dev libpri-dev libsrtp-dev spandsp-dev libresample speex-dev speexdsp-dev libogg-dev - bluez-dev libxml2-dev imap-dev" + bluez-dev libxml2-dev imap-dev unbound-dev" install="$pkgname.pre-install $pkgname.pre-upgrade" subpackages="$pkgname-dbg $pkgname-dev $pkgname-doc $pkgname-pgsql $pkgname-odbc - $pkgname-tds $pkgname-fax $pkgname-sample-config:sample:noarch + $pkgname-tds $pkgname-fax $pkgname-sample-config:config:noarch $pkgname-sounds-moh:sound_moh:noarch $pkgname-sounds-en:sound_en:noarch $pkgname-mobile $pkgname-curl:_curl $pkgname-srtp $pkgname-dahdi - $pkgname-speex $pkgname-alsa $pkgname-cdr-mysql:cdr_mysql" + $pkgname-speex $pkgname-alsa $pkgname-cdr-mysql:cdr_mysql $pkgname-openrc" _download="https://downloads.asterisk.org/pub/telephony/asterisk/releases" source="$_download/asterisk-$pkgver.tar.gz https://dev.alpinelinux.org/~tteras/asterisk-addon-mp3-r201.patch.gz - musl-mutex-init.patch - musl-astmm-fix.patch - asterisk-mariadb.patch - + 10-musl-mutex-init.patch + 20-musl-astmm-fix.patch + 30-asterisk-mariadb.patch + 40-asterisk-cdefs.patch asterisk.initd asterisk.confd asterisk.logrotate" -builddir="$srcdir/$pkgname-${pkgver/_/-}" - # secfixes: # 16.6.2-r0: # - CVE-2019-18610 @@ -62,7 +60,6 @@ prepare() { } build() { - cd "$builddir" SHA1SUM="$PWD"/build_tools/sha1sum-sh ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -95,7 +92,8 @@ build() { --with-libcurl \ --with-libedit \ --with-srtp \ - --with-imap=system + --with-imap=system \ + CFLAGS="$CFLAGS -DENABLE_SRTP_AES_256" # get default modules to build rm -f menuselect.makeopts @@ -111,11 +109,10 @@ build() { menuselect.makeopts # build - make ASTCFLAGS="$CFLAGS" ASTLDFLAGS="$LDFLAGS" LDCONFIG= + make LDCONFIG= } package() { - cd "$builddir" make -j1 DESTDIR="$pkgdir" LDCONFIG_FLAGS="-n" install install -d "$pkgdir"/var/run/asterisk @@ -131,30 +128,6 @@ package() { chmod -R u=rwX,g=rX,o= "$pkgdir"/etc/asterisk } -_move_dir() { - for DIR in "$@"; do - local dest=`dirname "$subpkgdir/$DIR"` - echo mkdir -p $dest - mkdir -p "$dest" - echo mv "$pkgdir"/$DIR $dest - mv "$pkgdir"/"$DIR" "$dest" - done -} - -_find_and_move() { - local pattern="$1" - cd "$pkgdir" - find . -name "$pattern" -type f | while read f; do - local dest="$subpkgdir/${f%/*}" - mkdir -p "$dest" - mv "$f" "$dest" - done -} - -doc() { - default_doc -} - dev() { default_dev depends="asterisk" @@ -164,54 +137,19 @@ dev() { mv "$subpkgdir"/usr/lib/libasteriskssl.so "$pkgdir"/usr/lib/libasteriskssl.so } -pgsql() { - depends= - install= - _find_and_move '*_pgsql*' -} - -odbc() { - depends= - install= - _find_and_move '*odbc*' -} - -tds() { - depends= - install= - _find_and_move '*_tds*' -} - -fax() { - depends= - install= - _find_and_move '*_fax*' -} - -mobile() { - depends= - install= - _find_and_move '*_mobile*' -} - -_curl() { - depends= - install= - _find_and_move '*_curl*' -} - -cdr_mysql() { - depends= - install= - _find_and_move '*cdr_mysql*' -} - -srtp() { _find_and_move '*_srtp*'; } -dahdi() { _find_and_move '*_dahdi*'; } -speex() { _find_and_move '*_speex*'; } -alsa() { _find_and_move '*_alsa*'; } +pgsql() { amove usr/lib/asterisk/modules/*_pgsql*; } +odbc() { amove usr/lib/asterisk/modules/*_odbc*; } +tds() { amove usr/lib/asterisk/modules/*_tds*; } +fax() { amove usr/lib/asterisk/modules/*_fax*; } +mobile() { amove usr/lib/asterisk/modules/*_mobile*; } +_curl() { amove usr/lib/asterisk/modules/*_curl*; } +cdr_mysql() { amove usr/lib/asterisk/modules/*cdr_mysql*; } +srtp() { amove usr/lib/asterisk/modules/*_srtp*; } +dahdi() { amove usr/lib/asterisk/modules/*_dahdi*; } +speex() { amove usr/lib/asterisk/modules/*_speex*; } +alsa() { amove usr/lib/asterisk/modules/*_alsa*; } -sample() { +config() { pkgdesc="Sample configuration files for asterisk" cd "$builddir" mkdir -p "$subpkgdir"/var/lib/asterisk/phoneprov @@ -225,24 +163,23 @@ sample() { sound_moh() { pkgdesc="Default on-hold music files for asterisk" depends= - install= - _move_dir var/lib/asterisk/moh + amove var/lib/asterisk/moh chown -R asterisk:asterisk "$subpkgdir"/var/*/asterisk } sound_en() { pkgdesc="English sound files for asterisk" depends= - install= - _move_dir var/lib/asterisk/sounds/en + amove var/lib/asterisk/sounds/en chown -R asterisk:asterisk "$subpkgdir"/var/*/asterisk } -sha512sums="4b06b7879031abf072d8db5e5be32870be65e726d2e02ef38cce48fa4fd006fe8885c95c649ee6f79280c00dc8b0c2252894cb86cfe3011fcc92e2165f3d0213 asterisk-16.7.0.tar.gz +sha512sums="1b138c6a4ac442504d05c1f9a327cdc1396669a328f86678252fe578dc0e3cccf5b4d7856937862f7cc531a0618e3b7e6eebc041ab435efe676cd89e6d877ee6 asterisk-16.11.0.tar.gz aacef3f4796fb1abd33266998b53909cb4b36e7cc5ad2f7bac68bdc43e9a9072d9a4e2e7e681bddfa31f3d04575eb248afe6ea95da780c67e4829c1e22adfe1b asterisk-addon-mp3-r201.patch.gz -f72c2e04de80d3ed9ce841308101383a1655e6da7a3c888ad31fffe63d1280993e08aefcf8e638316d439c68b38ee05362c87503fca1f36343976a01af9d6eb1 musl-mutex-init.patch -fdac3868ed2ba566397e3a71314568787e4a84d37738f210a6e288c4285215879756c576e2fd064be9cf5169a7e08dbbfd341f50a87e4e6dbfae20e19bcc4d71 musl-astmm-fix.patch -c76a882588194372d0c45a2bd1a9a946543f2dc07fde9240b3e600682e9737337c7602da35bfaeddb4d9fe568daa668016237c6f7986e7c44cf5a8dbba291e1f asterisk-mariadb.patch +771237ba6d42ab62d914f2702234b23fd0bc8c22f2aa33b0e745c9170163c8046f6d48ecb299faab3d6fb397f1aa046421083c3cc88510c9779861c522f357dd 10-musl-mutex-init.patch +0fae11b42894ab3d405bc50e9275b9084712b482fbf9b4259ea938667fc5cbe413655f3ff83da0f607151bb2b6e49c2f741b5ada6944dbb478f076ef8d86380a 20-musl-astmm-fix.patch +a43239189a1170d23d8f99d7658d8e064d4cc8149dd92d68e80d7af7a8fe181e0b111860ab13f12a91172c1e7f370c1a86679081b9ced98f4932fdfc64f04a49 30-asterisk-mariadb.patch +ba33f11169284f190b7dabab1da7d2751cb65d7976408db635a892fa17d7552e1660350017e7aada3464ecc7d9d6e99d6ad76d66c0036de062a386cffbc948e6 40-asterisk-cdefs.patch 0044c5db468ec8f2385d18d476f89976f6d036448583a4ef8017ce7a6f8f72105337e6b20037ffe47f561d2877fc9c86720aef23ab037df89b36dc140a5924c4 asterisk.initd ab6b6f08ff43268cbb1abb7ed7d678949991ba495682a644bbaeb017d6adbff0a43297905fd73ae8db1786a28d5b5904f1bc253209a0e388c8a27f26c6ce14ed asterisk.confd 7591d2faf539d05d9ee4e431c78a5e20686721fd79221ad94dffeeaff9282220b09cb9aec214bd7a8d12affaec0276c9c91e6e21af8b6712c0a9502b60b02f2b asterisk.logrotate" diff --git a/main/asterisk/asterisk-mariadb.patch b/main/asterisk/asterisk-mariadb.patch deleted file mode 100644 index dab4d988a75..00000000000 --- a/main/asterisk/asterisk-mariadb.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff --git a/addons/cdr_mysql.c b/addons/cdr_mysql.c -index 00c75dd..bc405bb 100644 ---- a/addons/cdr_mysql.c -+++ b/addons/cdr_mysql.c -@@ -43,6 +43,7 @@ - #include "asterisk.h" - - #include -+#include - #include - - #include "asterisk/config.h" -@@ -501,7 +502,7 @@ static int my_load_module(int reload) - res |= my_load_config_string(cfg, "global", "ssl_cert", &ssl_cert, ""); - res |= my_load_config_string(cfg, "global", "ssl_key", &ssl_key, ""); - -- res |= my_load_config_number(cfg, "global", "port", &dbport, MYSQL_PORT); -+ res |= my_load_config_number(cfg, "global", "port", &dbport, MARIADB_PORT); - res |= my_load_config_number(cfg, "global", "timeout", &timeout, 0); - res |= my_load_config_string(cfg, "global", "compat", &compat, "no"); - res |= my_load_config_string(cfg, "global", "cdrzone", &cdrzone, ""); -diff --git a/addons/res_config_mysql.c b/addons/res_config_mysql.c -index ae43485..94d3b35 100644 ---- a/addons/res_config_mysql.c -+++ b/addons/res_config_mysql.c -@@ -33,6 +33,7 @@ - #include - - #include -+#include - #include - - #include "asterisk/channel.h" diff --git a/main/asterisk/musl-astmm-fix.patch b/main/asterisk/musl-astmm-fix.patch deleted file mode 100644 index 86e3e297132..00000000000 --- a/main/asterisk/musl-astmm-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/include/asterisk/compat.h b/include/asterisk/compat.h -index 8547283..476dc2a 100644 ---- a/include/asterisk/compat.h -+++ b/include/asterisk/compat.h -@@ -30,6 +30,7 @@ - #include - #include - #include -+#include - - #ifdef HAVE_STDDEF_H - #include diff --git a/main/asterisk/musl-mutex-init.patch b/main/asterisk/musl-mutex-init.patch deleted file mode 100644 index 891d3fd10a2..00000000000 --- a/main/asterisk/musl-mutex-init.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ru asterisk-12.4.0.orig/include/asterisk/lock.h asterisk-12.4.0/include/asterisk/lock.h ---- asterisk-12.4.0.orig/include/asterisk/lock.h 2013-11-02 06:05:24.000000000 -0200 -+++ asterisk-12.4.0/include/asterisk/lock.h 2014-08-04 16:00:29.811967599 -0300 -@@ -66,7 +66,7 @@ - #define AST_PTHREADT_NULL (pthread_t) -1 - #define AST_PTHREADT_STOP (pthread_t) -2 - --#if (defined(SOLARIS) || defined(BSD)) -+#if (defined(SOLARIS) || defined(BSD) || !defined(HAVE_PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP)) - #define AST_MUTEX_INIT_W_CONSTRUCTORS - #endif /* SOLARIS || BSD */ - -- cgit v1.2.3