Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/asterisk/
Date: Mon, 26 Oct 2020 13:16:19
Message-Id: 1603718167.a627ed240b9d240b5846308f41069d05586257fc.juippis@gentoo
1 commit: a627ed240b9d240b5846308f41069d05586257fc
2 Author: Jaco Kroon <jaco <AT> uls <DOT> co <DOT> za>
3 AuthorDate: Tue Oct 20 14:14:42 2020 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Mon Oct 26 13:16:07 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a627ed24
7
8 net-misc/asterisk: version bump 16.14.0
9
10 Signed-off-by: Jaco Kroon <jaco <AT> uls.co.za>
11 Closes: https://github.com/gentoo/gentoo/pull/17980
12 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
13
14 net-misc/asterisk/Manifest | 1 +
15 net-misc/asterisk/asterisk-16.14.0.ebuild | 304 ++++++++++++++++++++++++++++++
16 2 files changed, 305 insertions(+)
17
18 diff --git a/net-misc/asterisk/Manifest b/net-misc/asterisk/Manifest
19 index 166d837388d..ae3d549a052 100644
20 --- a/net-misc/asterisk/Manifest
21 +++ b/net-misc/asterisk/Manifest
22 @@ -5,5 +5,6 @@ DIST asterisk-13.36.0.tar.gz 33692378 BLAKE2B 7252e7a103d94bbdd4073563f88ec2952e
23 DIST asterisk-13.37.0.tar.gz 33696267 BLAKE2B 806e48fd2ed497becef87e5a349854e377aaaeb5f749e4c8ce957b585256edcc3c1812f199f793eecc829155baf12336f4971d2664e836ad38248139f5fc719f SHA512 f01ebc3a0b4d598f35f26e60aa6fdc03ab5d4ee28547ec048c2af9ab67f2657a5767484bf7d07d8fbcb1e84ce6865f4fe70772f30a5dc45568669ffeb7387b8e
24 DIST asterisk-16.12.0.tar.gz 27727347 BLAKE2B 3e2e986136e5ff19a876f01fdc6db1b6c22f83bf38f8524a418e474e2400375d8091dd215fb54f5b01f998cecf46d6965a0c35a44dc6f3be7f7a811e2ce70b8c SHA512 1fc41b92d070efd4a7ea5db1a36c83bdb6dbbe7d9b5087b0a887ba3d6875e81ba1b71a79b216138b242f0349a176baf6745480ff6fb7ed47c62dda4b09b6a891
25 DIST asterisk-16.13.0.tar.gz 27735450 BLAKE2B 64cc75c7aa715734ebaf06fe7b3df54cfa309fc6126b45abfc21cc22c2c4e795946be473ce2887dc074124f9da6c8937d1bb4207fecf402eed7803ed063faa80 SHA512 872c5a5cb8faf9b1632895dafb6ee86c87e1766c9f33099b32216e6703f063800f87cac6db3537d1744349c42abd3ea83d70afe35138e45fb756872688822dfa
26 +DIST asterisk-16.14.0.tar.gz 27740877 BLAKE2B f8a09d39c36c1cdcc17878f1af69da7691503290177583ec1a92ac0471c029e527a3b62bd731a7340c43fb7abeca32b604303f0739e614c5a1edb0131f07e0fd SHA512 699b0c701a00df0ffcb7094f5cc732b645775deb85486e044685685b81aad09e6b2e9558436e80c505de93add630b76cf49d7261ba8eaae46f93272844346234
27 DIST gentoo-asterisk-patchset-3.17.tar.bz2 5074 BLAKE2B 3c945e77b54b2449253acb9fcea8d289a7a3184729190622c14aff5557d36c93556efa83320fe4e7ae84021960c09f35ae9f997e8015706eef933aae2948309e SHA512 37f86f3c699b2643afd8080391e817a282571694bb56e00efd0734918dbc33d6c12a2463dbc24667597420863b4f506870140fbb8ef3f1700124ef790ae7252d
28 DIST gentoo-asterisk-patchset-4.08.tar.bz2 2176 BLAKE2B 7f8c9b5fda855091e66b2534d2be23fb1616f565480459f71f766826e5deeeecb24899e2ee9eefe74323e892624d32ab954ec7e9be6a002431ff029fc13493ed SHA512 365c1b8628882c48c279e1fd77d982e6d0820ba7d7122e97bb4988f875d7010caa956798c833c3b01d389004fa08a63a9de2c1b452c9e5701c6106e29fd8e9e1
29
30 diff --git a/net-misc/asterisk/asterisk-16.14.0.ebuild b/net-misc/asterisk/asterisk-16.14.0.ebuild
31 new file mode 100644
32 index 00000000000..44f1f489f95
33 --- /dev/null
34 +++ b/net-misc/asterisk/asterisk-16.14.0.ebuild
35 @@ -0,0 +1,304 @@
36 +# Copyright 1999-2020 Gentoo Authors
37 +# Distributed under the terms of the GNU General Public License v2
38 +
39 +EAPI=7
40 +
41 +inherit autotools linux-info systemd
42 +
43 +DESCRIPTION="Asterisk: A Modular Open Source PBX System"
44 +HOMEPAGE="https://www.asterisk.org/"
45 +SRC_URI="https://downloads.asterisk.org/pub/telephony/asterisk/releases/${P}.tar.gz
46 + https://downloads.uls.co.za/gentoo/asterisk/gentoo-asterisk-patchset-4.08.tar.bz2"
47 +LICENSE="GPL-2"
48 +SLOT="0"
49 +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
50 +
51 +IUSE_VOICEMAIL_STORAGE="
52 + +voicemail_storage_file
53 + voicemail_storage_odbc
54 + voicemail_storage_imap
55 +"
56 +IUSE="${IUSE_VOICEMAIL_STORAGE} alsa bluetooth calendar +caps cluster curl dahdi debug doc freetds gtalk http iconv ilbc ldap libressl lua mysql newt odbc oss pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd syslog unbound vorbis xmpp"
57 +IUSE_EXPAND="VOICEMAIL_STORAGE"
58 +REQUIRED_USE="gtalk? ( xmpp )
59 + ^^ ( ${IUSE_VOICEMAIL_STORAGE/+/} )
60 + voicemail_storage_odbc? ( odbc )
61 +"
62 +
63 +PATCHES=(
64 + "${FILESDIR}/${PN}-historic-no-var-run-install.patch"
65 +)
66 +
67 +DEPEND="acct-user/asterisk
68 + acct-group/asterisk
69 + dev-db/sqlite:3
70 + dev-libs/popt
71 + >=dev-libs/jansson-2.11
72 + dev-libs/libedit
73 + dev-libs/libxml2:2
74 + dev-libs/libxslt
75 + sys-apps/util-linux
76 + sys-libs/ncurses:0=
77 + sys-libs/zlib
78 + alsa? ( media-libs/alsa-lib )
79 + bluetooth? ( net-wireless/bluez:= )
80 + calendar? (
81 + net-libs/neon:=
82 + dev-libs/libical:=
83 + dev-libs/iksemel
84 + )
85 + caps? ( sys-libs/libcap )
86 + cluster? ( sys-cluster/corosync )
87 + curl? ( net-misc/curl )
88 + dahdi? (
89 + net-libs/libpri
90 + net-misc/dahdi-tools
91 + )
92 + freetds? ( dev-db/freetds )
93 + gtalk? ( dev-libs/iksemel )
94 + http? ( dev-libs/gmime:2.6 )
95 + iconv? ( virtual/libiconv )
96 + ilbc? ( media-libs/libilbc )
97 + ldap? ( net-nds/openldap )
98 + lua? ( dev-lang/lua:* )
99 + mysql? ( dev-db/mysql-connector-c:= )
100 + newt? ( dev-libs/newt )
101 + odbc? ( dev-db/unixODBC )
102 + pjproject? ( >=net-libs/pjproject-2.9 )
103 + portaudio? ( media-libs/portaudio )
104 + postgres? ( dev-db/postgresql:* )
105 + radius? ( net-dialup/freeradius-client )
106 + snmp? ( net-analyzer/net-snmp:= )
107 + span? ( media-libs/spandsp )
108 + speex? (
109 + media-libs/libogg
110 + media-libs/speex
111 + media-libs/speexdsp
112 + )
113 + srtp? ( net-libs/libsrtp:0 )
114 + ssl? (
115 + !libressl? ( dev-libs/openssl:0= )
116 + libressl? ( dev-libs/libressl:0= )
117 + )
118 + unbound? ( net-dns/unbound )
119 + vorbis? (
120 + media-libs/libogg
121 + media-libs/libvorbis
122 + )
123 + voicemail_storage_imap? ( virtual/imap-c-client )
124 + xmpp? ( dev-libs/iksemel )
125 +"
126 +
127 +RDEPEND="${DEPEND}
128 + net-misc/asterisk-core-sounds
129 + net-misc/asterisk-extra-sounds
130 + net-misc/asterisk-moh-opsound
131 + selinux? ( sec-policy/selinux-asterisk )
132 + syslog? ( virtual/logger )"
133 +
134 +BDEPEND="virtual/pkgconfig"
135 +
136 +QA_DT_NEEDED="/usr/lib.*/libasteriskssl[.]so[.][0-9]\+"
137 +
138 +pkg_setup() {
139 + CONFIG_CHECK="~!NF_CONNTRACK_SIP"
140 + local WARNING_NF_CONNTRACK_SIP="SIP (NAT) connection tracking is enabled. Some users
141 + have reported that this module dropped critical SIP packets in their deployments. You
142 + may want to disable it if you see such problems."
143 + check_extra_config
144 +}
145 +
146 +src_prepare() {
147 + default
148 + AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson" eautoreconf
149 +}
150 +
151 +src_configure() {
152 + local vmst
153 +
154 + econf \
155 + --libdir="/usr/$(get_libdir)" \
156 + --localstatedir="/var" \
157 + --with-crypto \
158 + --with-gsm=internal \
159 + --with-popt \
160 + --with-z \
161 + --with-libedit \
162 + --without-jansson-bundled \
163 + --without-pjproject-bundled \
164 + $(use_with caps cap) \
165 + $(use_with http gmime) \
166 + $(use_with newt) \
167 + $(use_with pjproject) \
168 + $(use_with portaudio) \
169 + $(use_with ssl) \
170 + $(use_with unbound)
171 +
172 + _menuselect() {
173 + menuselect/menuselect "$@" || die "menuselect $* failed."
174 + }
175 +
176 + _use_select() {
177 + local state=$(use "$1" && echo enable || echo disable)
178 + shift # remove use from parameters
179 +
180 + while [[ -n $1 ]]; do
181 + _menuselect --${state} "$1" menuselect.makeopts
182 + shift
183 + done
184 + }
185 +
186 + # Blank out sounds/sounds.xml file to prevent
187 + # asterisk from installing sounds files (we pull them in via
188 + # asterisk-{core,extra}-sounds and asterisk-moh-opsound.
189 + >"${S}"/sounds/sounds.xml
190 +
191 + # That NATIVE_ARCH chatter really is quite bothersome
192 + sed -i 's/NATIVE_ARCH=/NATIVE_ARCH=0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system"
193 +
194 + # Compile menuselect binary for optional components
195 + emake NOISY_BUILD=yes menuselect.makeopts
196 +
197 + # Disable BUILD_NATIVE (bug #667498)
198 + _menuselect --disable build_native menuselect.makeopts
199 +
200 + # Broken functionality is forcibly disabled (bug #360143)
201 + _menuselect --disable chan_misdn menuselect.makeopts
202 + _menuselect --disable chan_ooh323 menuselect.makeopts
203 +
204 + # Utility set is forcibly enabled (bug #358001)
205 + _menuselect --enable smsq menuselect.makeopts
206 + _menuselect --enable streamplayer menuselect.makeopts
207 + _menuselect --enable aelparse menuselect.makeopts
208 + _menuselect --enable astman menuselect.makeopts
209 +
210 + # this is connected, otherwise it would not find
211 + # ast_pktccops_gate_alloc symbol
212 + _menuselect --enable chan_mgcp menuselect.makeopts
213 + _menuselect --enable res_pktccops menuselect.makeopts
214 +
215 + # SSL is forcibly enabled, IAX2 & DUNDI are expected to be available
216 + _menuselect --enable pbx_dundi menuselect.makeopts
217 + _menuselect --enable func_aes menuselect.makeopts
218 + _menuselect --enable chan_iax2 menuselect.makeopts
219 +
220 + # SQlite3 is now the main database backend, enable related features
221 + _menuselect --enable cdr_sqlite3_custom menuselect.makeopts
222 + _menuselect --enable cel_sqlite3_custom menuselect.makeopts
223 +
224 + # The others are based on USE-flag settings
225 + _use_select alsa chan_alsa
226 + _use_select bluetooth chan_mobile
227 + _use_select calendar res_calendar res_calendar_{caldav,ews,exchange,icalendar}
228 + _use_select cluster res_corosync
229 + _use_select curl func_curl res_config_curl res_curl
230 + _use_select dahdi app_dahdiras app_meetme chan_dahdi codec_dahdi res_timing_dahdi
231 + _use_select freetds {cdr,cel}_tds
232 + _use_select gtalk chan_motif
233 + _use_select http res_http_post
234 + _use_select iconv func_iconv
235 + _use_select ilbc codec_ilbc format_ilbc
236 + _use_select ldap res_config_ldap
237 + _use_select lua pbx_lua
238 + _use_select mysql app_mysql cdr_mysql res_config_mysql
239 + _use_select odbc cdr_adaptive_odbc res_config_odbc {cdr,cel,res,func}_odbc
240 + _use_select oss chan_oss
241 + _use_select postgres {cdr,cel}_pgsql res_config_pgsql
242 + _use_select radius {cdr,cel}_radius
243 + _use_select snmp res_snmp
244 + _use_select span res_fax_spandsp
245 + _use_select speex {codec,func}_speex
246 + _use_select speex format_ogg_speex
247 + _use_select srtp res_srtp
248 + _use_select statsd res_statsd res_{endpoint,chan}_stats
249 + _use_select syslog cdr_syslog
250 + _use_select vorbis format_ogg_vorbis
251 + _use_select xmpp res_xmpp
252 +
253 + # Voicemail storage ...
254 + for vmst in ${IUSE_VOICEMAIL_STORAGE/+/}; do
255 + if use ${vmst}; then
256 + _menuselect --enable $(echo ${vmst##*_} | tr '[:lower:]' '[:upper:]')_STORAGE menuselect.makeopts
257 + fi
258 + done
259 +
260 + if use debug; then
261 + for o in DONT_OPTIMIZE DEBUG_THREADS BETTER_BACKTRACES; do
262 + _menuselect --enable "${o}" menuselect.makeopts
263 + done
264 + fi
265 +}
266 +
267 +src_compile() {
268 + emake ASTCFLAGS="${CFLAGS}" ASTLDFLAGS="${LDFLAGS}" NOISY_BUILD=yes
269 +}
270 +
271 +src_install() {
272 + local d
273 +
274 + mkdir -p "${ED}/usr/$(get_libdir)/pkgconfig" || die
275 + emake DESTDIR="${ED}" NOISY_BUILD=yes install
276 +
277 + if use radius; then
278 + insinto /etc/radiusclient/
279 + doins contrib/dictionary.digium
280 + fi
281 + diropts -m 0750 -o root -g asterisk
282 + keepdir /etc/asterisk
283 + emake NOISY_BUILD=yes DESTDIR="${ED}" CONFIG_SRC=configs/samples CONFIG_EXTEN=.sample install-configs
284 + for conffile in "${ED}/etc/asterisk/"*
285 + do
286 + fowners root:root "${conffile#${ED}}"
287 + fperms 0644 "${conffile#${ED}}"
288 + done
289 +
290 + # keep directories
291 + diropts -m 0750 -o asterisk -g root
292 + keepdir /var/lib/asterisk
293 + keepdir /var/spool/asterisk
294 + keepdir /var/spool/asterisk/{system,tmp,meetme,monitor,dictate,voicemail,recording}
295 + diropts -m 0750 -o asterisk -g asterisk
296 + keepdir /var/log/asterisk/{cdr-csv,cdr-custom}
297 +
298 + newinitd "${FILESDIR}"/initd-13.32.0-r1 asterisk
299 + newconfd "${FILESDIR}"/confd-13.32.0 asterisk
300 +
301 + systemd_dounit "${FILESDIR}"/asterisk.service
302 + systemd_newtmpfilesd "${FILESDIR}"/asterisk.tmpfiles.conf asterisk.conf
303 + systemd_install_serviced "${FILESDIR}"/asterisk.service.conf
304 +
305 + # Reset diropts else dodoc uses it for doc installations.
306 + diropts -m0755
307 +
308 + # install the upgrade documentation
309 + dodoc UPGRADE* BUGS CREDITS
310 +
311 + # install extra documentation
312 + if use doc; then
313 + dodoc doc/*.txt
314 + dodoc doc/*.pdf
315 + fi
316 +
317 + # install logrotate snippet; bug #329281
318 + #
319 + insinto /etc/logrotate.d
320 + newins "${FILESDIR}/1.6.2/asterisk.logrotate4" asterisk
321 +
322 + # Asterisk installs a few folders that's empty by design,
323 + # but still required. This finds them, and marks them for
324 + # portage.
325 + for d in $(find "${ED}"/var -type d -empty || die "Find failed."); do
326 + keepdir "${d#${ED}}"
327 + done
328 +}
329 +
330 +pkg_postinst() {
331 + if [ -z "${REPLACING_VERSIONS}" ]; then
332 + elog "Asterisk Wiki: https://wiki.asterisk.org/wiki/"
333 + elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.freenode.net"
334 + elif [ "$(ver_cut 1 "${REPLACING_VERSIONS}")" != "$(ver_cut 1)" ]; then
335 + elog "You are updating from Asterisk $(ver_cut 1 "${REPLACING_VERSIONS}") upgrade document:"
336 + elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)"
337 + elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.freenode.net"
338 + fi
339 +}