diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-08-07 12:37:21 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-08-07 12:37:21 +0100 |
commit | b8c7370a682e4e29cda623222d17a790c01c3642 (patch) | |
tree | f6caa14689bd00a5760eadaa381ff41e50ef3c1b /net-misc/asterisk | |
parent | 8a4997a7e2d1e36c089d4d76935b5a902d98d3d0 (diff) |
gentoo auto-resync : 07:08:2024 - 12:37:20
Diffstat (limited to 'net-misc/asterisk')
21 files changed, 246 insertions, 3822 deletions
diff --git a/net-misc/asterisk/Manifest b/net-misc/asterisk/Manifest index bed47c455be7..ec8209feea79 100644 --- a/net-misc/asterisk/Manifest +++ b/net-misc/asterisk/Manifest @@ -1,41 +1,19 @@ -AUX 1.6.2/asterisk.logrotate4 848 BLAKE2B b169368ad6893e2fc2680b788569cf8b74657531b9484664aae2869f6dfef3ff71cf64a3fa91e90c4fdbb275a8038751fff4087129e67f63b11b81a436e459b7 SHA512 8d661424838fd9500512290785a56af4364717df87d3423ab8dc3039affd1a26fa7aae6afe2ca4fe1ce668a0172b07a96f4cc9a73eced95f25d5848f3a3f2624 AUX asterisk-16.16.2-no-var-run-install.patch 728 BLAKE2B 25fc61c4aa68d9e3243d1161e68e0b61b14b5505eadd00fdf46e1c3977e7fb536afd42dc6c9a07f400a686c19afd04fd8f00fc1cb916978783a9e54ecfe81dd4 SHA512 ab1e7ac700711125162396c4ebe590eb000f4ad6c4cbe8845794f5d06353a4a52167fcc83ee97860f38540089cad6d45f2e8589c1f30098e85479a2b4c722f75 AUX asterisk-16.29.1_18.15.1_20.0.1-noexec_stack.patch 1447 BLAKE2B 2785ea3e923d048f83bb2e25d7a645fe27e69051d43c5c4577e98218b6044cf79661d69076737d55dff8bd5be19f87dcfa24bd54003cbea3f36a736234941dc8 SHA512 05eb7e0ca1eee4f6ebae8fd3be67c34cf0d27ac90393c0c9f21f2c4fda5e69f91fbd63d7ebedbcd26f5e2498c1fd4ff9a4079fdfaf5741819892cda6f5753623 AUX asterisk-16.30.1-r1-iax2_jitterbuffer.patch 2464 BLAKE2B f2f7d109e4876a1ec58d4af4b96415d58250ffb4ea5caa6d75873b8f853b0773747e9e8d4baba09c55ded62fa206444bd6eaef312bfb891f84044be7088a1595 SHA512 ae0649de6ffbc8b0aa35f38ae8600366f7cbf9f3342686d04705b13e6f3085bdd40bd3fb73a001cd727063db86e0bbc6a31f7691bdde2034ddd67ba6af959cdf -AUX asterisk-18.17.1-20.2.1-configure-fix-test-code-to-match-gethostbyname_r-pro.patch 3303 BLAKE2B 262d7a632c170f1b1a19a32271aaaae6bb4b09613fba87567c7678740926850dee5246ea1a99118976790a7b583b09f452fb71cbbab09c0059bfaa17184d5665 SHA512 9a3976e43fa42c2e6eba4c2ff525529e784c68795cd2a5aea9838e8b14668a3a1796a6dfa517f8370ea3f873ac53073368ad6612c033652b40463aca451caa13 -AUX asterisk.service 456 BLAKE2B 4a5da9f0e45aa3b1eff29d59317d09e061e0a0e3c0e38cd39732e7880e96b7f34a68b44001d2608a7636b1259803f567b94bdb85ef15428727427fa1081ee385 SHA512 d443c3821d50e78a76b7cad8906f560ab0f4b58007f6c9322256626bc4a502bdbd844f1ee48cdaf86d499bf78f50cebb0cfc88a0cab0c4876f4e853bc2e76aa8 -AUX asterisk.service.conf 324 BLAKE2B b802f69897f050f661412631da7ddc6e3207ff0d776ad2c2cfb13677049b8e3fce8c565103057745a48a4245f8c660f805088844fdea7fb042facd32b5ec13b7 SHA512 94be3b27f9d862d357b62d14b9d59ca47487bfd4987ce3b0ea2bb862c6d03e1d3c8b536590f20295fd085166da3efdff869c4cfc37542a31933d22b6d9b73da3 -AUX asterisk.tmpfiles-16.22.0-18.8.0.conf 84 BLAKE2B 133761739570a08bebb88059df1a870ddaef194bd1c5a1a4d4626d3791e3cb664b03ff51260892167a22c3cfca2caa02d162e7476070ec1374a92ef24ec799dc SHA512 680a4478d3a501c26fa19e29fad18389e7e02f04c8b9a676ae0f192fa6afbed95a826b74696c6c5459aba5aba6a16c57df8a9c5ff486e9dc8f1cbd01185e9320 -AUX asterisk_wrapper-16.26.1-18.12.1 6673 BLAKE2B 3f760e26135ca1e1992205d4183ea56082765b502152b3d87d1cb276c5e84e84abcc612cb16bc13eeb585b6a4d0daf2134032207d8a7016dae59ddeb72aa7996 SHA512 1bcf747ce20cf3aeca36f9375a06ad0a031099ad50951e2049b57abf82eef673ebed499de9e81944fee6167498886e47732b4102e79f65b2c99c059ab756c166 -AUX asterisk_wrapper-18.17.1-20.2.1 7221 BLAKE2B c4c696e6e79329903e5e33cec03cd11db752e2915c247cd4d503cfc00bbafab56a560dc37c8045604b4c793b2289e03096f7b0e66535df53a375e1d74b617dbd SHA512 472ee92546dbf725e9f1fca19e258e0d6c4005923edb27bf0b6bc08a18a86913a54f85edd610c114cd867c601fc029928d49f55afec4387b54566ed3835fca7d -AUX confd-16.26.1-18.12.1 4050 BLAKE2B cda2632a9b951f2061d4d7e25b221d0473c623860aa96eeb2bf0b8a8354606cc6b22e98ac3450d160e13507c21174d086ebecce3a4b6a470a3e19dc6a6a98784 SHA512 922c59f08f75f9c18955d7337caa8e1b12a0037909903f6afee707ffca8b784011ba35188b8a921ea8b9c6238556dc70bdd1b5716af7894c09821c03b4808340 -AUX initd-16.26.1-18.12.1 8869 BLAKE2B ac5d389e3af994453f258b23a1cd5c5630d19b7a1c9af78804517eab219a71d6c7bb901048ea052ed1ba89f4f553d1bf4d40252bc7838f0169e9561855574a90 SHA512 ceb6b484c97800e4e1ddfed9f1e6a8d91788f41b4abd3214882d716ea4eb01c39a2fb828351b2aa33bd1f053dee1af8f2a1c416fdf98df43860996463bf1c13c -AUX initd-18.17.1-20.2.1 8882 BLAKE2B 0dd7507254955ccc21688068107211380289ff468ad74140f135097d2babdb1b31db161bf2d91fa237a883a94c4d1af84c31856cee88f07cee52a17f212ad720 SHA512 2dd51d8342e212df4d98576de8b1017d6e7fdd257a70b49d2baf78bc1640911e351ec89b14fe4c55d905d738e277f2b65d4e627535eecc5eb195e7678b3d9759 -DIST asterisk-16.30.0.tar.gz 28131110 BLAKE2B f230155a6347e891b531e54fe2821f1d477ed83699dd4a90c67b3307965430dbcdd04bd0ced49803776d349e29846492a6ef96e19ad3665dc610623be8de25cc SHA512 59cfbc1463dbad6ae7c6307d96b1a220fb02b3e398f96708654e58db788d57f2ca7aac8d4a290ed04f333b5c82c514ec9b95681125e3bdddc237e6c778fd2aec DIST asterisk-16.30.1.tar.gz 28234979 BLAKE2B a9cd732feb00408876f90328d7f14dbfe426829e607f9b8e812ff25823c8dc1facab1ecd423e1d4f33c1623f3769197fa3b1fe3181efad0b231c96c0afb1dd16 SHA512 1624d207e80351f976c084344d09d67fe37b526a42970da007f5407be006d107e951093209415a68c891e2bd9cb142421e7acd1ac9fba2c1b1c064aee2224cb6 -DIST asterisk-18.17.0.tar.gz 28293243 BLAKE2B 8a162d7cac92df2b6dd430fedc1446a302b1b9c1061ddd4a236fd5797e8be17d53d7179d23a7c8bd4260c73d34dea2db2b9ebffd4eebb2ed714a286838bc5ddf SHA512 1a5dd9715811a8b699d49b057ef42f68ddc88cc22a568836a6a778f6ff22d3923f81840aef425819bb59f28bb27e321154ef9e1d3deba5ed7d39c7eca562e40e -DIST asterisk-18.18.0.tar.gz 28407407 BLAKE2B 2e49da8b93651268e2aa2f7f5e2b8ffb2f74c39eb74a4514593be39826912774584c4c33f3839a951ec068218e8db43153fee0a543a9adb94a90cc9338ad40c3 SHA512 bf3d73ef5b6a196d599771c913ae95596b0bfae8fc35cdf66181d7b56ffb4bd78078e25627e271c62988ed6342e69162a1f120cae6049dda6f1596d0759bee59 -DIST asterisk-18.18.1.tar.gz 28407009 BLAKE2B b3c3325a8958fa25364c735508357e35e4ad3ea2390b4f83d7b132c4263b2b0b56a65abab60f337e55cbc3edd4df580f3904164ba76abd4198ce1be112c93d38 SHA512 d5058399beffd2f74a17b0fdcc97720e08540383facb2f3691376cb2086e3d2f8df5b0c9110699d09cffe1ed6b2fbdfe9926d0698af0fce39c6c0a9bb4643d30 -DIST asterisk-18.20.2.tar.gz 28448635 BLAKE2B 9949033f93d770673e80a86cd48a084da853d0cbb51aa50159e813653bb39efd062772331aeb5d127f0c1c58724d9c6d748d45a2e0803f276e83bc804b942c2c SHA512 3ee44047a2d9823550b031933b709e8fd7d6a2a0a4cfb2221187da0983f8d22e411b93fde22934753ae9a7272390c7feebc8addabf7e0943eb57ae7f2fa71b3c DIST asterisk-18.21.0.tar.gz 28446501 BLAKE2B 15a0f928f9c20eb676ffa25af8ac771494a417744758e6e9304451502ee2981c09e1c89c7012ec11edfb9a6bfd15599d462922a373a8f8d7d5074ea0b8c7e7cf SHA512 4a3c57af70b74918b61e1c67423667a876fcc519376f1795054a55700acb5d05da8e4e0a3e3187760203bc262678a6c29eae07ed2a5e2df84a9a555ec79cb48f -DIST asterisk-20.3.0.tar.gz 28176546 BLAKE2B 488cfe449c040c282afe438847d14f6cc20d1fb034fbb33555f8e43803b481d3f2b890ac01cc7d43278b41040093f8cedfc609c025cfab73fd8b9d23a0f67016 SHA512 332c24c089abca7059d80794b37a4f5dc34f0468a07f5534b0df26c5103e0508c9c5f3f35a02826ed6b33973c26503be2829fd51fa23a8056a58fa2b50b17730 -DIST asterisk-20.3.1.tar.gz 28176262 BLAKE2B 9ee75ee297dc4df37f51f75444d46af083b794cb444ae77b601f17308889db22240939edf04761eb3d41e74e2a67a3329d427861a5a5d34fec6016d6660793bd SHA512 4e34de731211aebe916d19948c41aff370187bfadc1202837a96ebc7f218e5bd7c3936b5b4e34ba6e79c079f77eb5ed038239c903800d5a56ceda2f342218613 -DIST asterisk-20.5.2.tar.gz 28215394 BLAKE2B d9baddc5b2134fd8d7c23dc1407abc37ee937f4dc3ac6dacca43126e0f3ee45b5eca1b8a66834e267d8bb02eb35c8b2e73d854b0a234a85f2dc4048b9d1c4a99 SHA512 ff2d6ddd5b6031b6e4fcb15c82149c3272031b617bf5bca87af1d085464fcd9af6bd373e9431077ce58a558b50c6b2c9cd4d94e739ecc312371cd605e4746a84 +DIST asterisk-18.24.1.tar.gz 28528798 BLAKE2B f5f26475efb431ebfb9b16d4b5efb726dfd3c3ccb1e6fc32a30f4d67d0a31b7ba1867de83c48e090d9093208e9b46c97d5608ef2410636995d0864165d5e2a54 SHA512 d1612f1842dcb181e163aaced253bf474b5cc09c94e0dac306ccee896498d7891ba9525fbe92be6fc238003733b7b6626b1eb03c403af8423654b6417bea1c04 DIST asterisk-20.6.0.tar.gz 28208707 BLAKE2B 7eaebcec7dd58912bc4ef6eccf46c0f10b328997889febaa0bf03e2a60197c9d2db97a0ccfd2870085c87eb97ca3b45286138857504199f09ba2071b9a0c50a2 SHA512 31af71a325cdcb9eb5c6b8bb72f523e7da8dcb1b2d33eaa04a493a922421f90c2019bbed01ff5bc8aa46cd02fa72b80a48074ecb146f5399d62bc504a0e4c053 -DIST asterisk-21.0.2.tar.gz 26280477 BLAKE2B 4bcf2f42bf75b869e2279780c4bb3999786d844e57d48eb5fd8570e0f4ecea0de73d71077e5a5fe6ce64c1c36ef694c987872281fd30e9434bc67d91a3ce1249 SHA512 419d8c2abfa680bb1a812fcbea939f2505dc9f95f860c263c303731fb4e0870060e433787b344136832ccf9d0e34dc64da25240ab3651fb499f416ec3098a711 +DIST asterisk-20.9.1.tar.gz 28292603 BLAKE2B d90bceace1f34d0e03b4b3dc53443bc9276d1dfffaa16a277aa555134475a3c965d4a7e2fd6fcf5f5c37517110e078adc9f13d07aad77403a04a53f278bb849f SHA512 3de70aec7da7047d42d26fb30603d28568ae63e69fb351ed1238ff3e3d434110823518fd2e9f9c80e27460ce9706842172234f51b158de41153bb5ba5c0a03a4 DIST asterisk-21.1.0.tar.gz 26268701 BLAKE2B eae9bab916198ab6fba39142d96c6391ffa711c4ac5a4dd7926c0494dabcd1606bab0525e24477f453ff419329efb0a3abf5e9a012abd2a39f6f818505dd196a SHA512 1d4aea4f02950becb492af49e2d434df725676185651b4c1e5dc502f21c8380ce1368f75726bca124d41128ea01a8210d1e229883c442a42bbdb03530fc981c8 -EBUILD asterisk-16.30.0.ebuild 11876 BLAKE2B f26e339dab2fd90cecafe8b0c075dcef4ae75a3602a1c7adb22ec9792166cbb3c3639349f718a7a895b5071876af76982163896bde31245b1e614d830461cb0a SHA512 57624034782f857b181fda0c92ffcbe502ec1ef94a45e1f2f5c27b2863000fee46661d47acd79658450a37dc331b90f8439e9a5bb66999216abda86fbd48b852 +DIST asterisk-21.4.1.tar.gz 26346292 BLAKE2B 074a749799de8586983055ab47282c86b8ed50d9259c526edddee72a6decd5ef033b0d6abfde751865dd2631dd5b0eb59d054a0113334846f9237c493f4c4f8d SHA512 0d1ec0bd3ea0ba0f6a7aeeb17953abd87ab5cfd88b3779813f7b3c29a6ddbd0d7d89943bdc332753ed0d5b6f24f75bf77802d9e17e5ccbaa5b22bb30ed887db3 EBUILD asterisk-16.30.1-r1.ebuild 11416 BLAKE2B d159192dd4b7e5807046b85e0c8237c0d555bc7a95ebc71d802f3e664f5617d845399d0b9383c739066c9403f7896475a1310c89a56b76fe2322023b4d75ef1e SHA512 258f1d1878fd9ced49fe4e9b12c01bb1803896e2a614a2b3c4518a4aab1d54b50a92c8ccf73dde0664a092c492fabad912f81c1cc327feed7b15cd792a124d99 -EBUILD asterisk-16.30.1.ebuild 11357 BLAKE2B 6e983a41609ccc98942edb6807c733fcec1afddbdd70a4eeb06e16fe0b8696b33857bd5dd41df8a65e8f98a56dab3b45e2d2ce524c414fd6e4b50025ad5fb546 SHA512 2052282ab24303ccba66f4160bccfaedbeb6bcac0b7be6213e2a2b9d1f5bc4d04e83ecb9444d06896ba3ee9cfaffcd71b3f4440258d8eb19fa7247c0bed6973b -EBUILD asterisk-18.17.0.ebuild 11772 BLAKE2B 516b9c98aa80a7dfaed5f7ba375110cfa39c288d9c22dbb754b46f8ddf62f6ef75198fd1ea8a76e71e319a26e7e34111bca0a9768b40a37b081affed53368981 SHA512 56af8b4d9ede9c4c9a2edd94b9ffaaeffeb07c94c24a633e150ded3423141867dcd83f1ba2072f97431f3a6c0411d9bdaa81c82500c691b9ecd6da2ec7208f76 -EBUILD asterisk-18.18.0.ebuild 11893 BLAKE2B e279eb21e2093e64b4f5169d05de382abb3d408cd07c5d4c4a65b58241cf15b8fd87af8e09624cc1e3dc2aac260cd68ae0a8cf0a6ece035161ef5d7ff9ae6f15 SHA512 cff623204429a910877a18217f9e166adcbf9175991dd006e44b994b6ed140d91ce984489776f50fe6b9efdeeec2e5eeefde205f25013f10bf8d560d321d397d -EBUILD asterisk-18.18.1.ebuild 11374 BLAKE2B bb29f1a7e36c060658cc94d3f9f6b36c7f06f03ae561b13d8d628b7b6220ffbccd22370e5158c6cf769f06685c73b50e3889138e273e2be0f13e7bfe4ceb32db SHA512 1408d7b81c53ce77897bb846c6d0b39245514e5016fbb8db379ac162ffc63d476dae2ae7f514db6460fa9e435377d4ab1a4d39e30f1c988fa836577e36639e98 -EBUILD asterisk-18.20.2.ebuild 11278 BLAKE2B 64e1b08570ff3df53d961f9cece7fcde636c3fd695f60a92fc7bb0879e530e409a6281c58de8a1f4f1d42d84c93e49dbfe1b6fc3f20d90d41babecd629aab82f SHA512 8512b2953cfa8bcac176603c4579064cded7d8af6acdc3e2faba33f8889ff29f9618777742b1d4911ddcc553111a83602917350eb27adeaf77e7e95c8feb2ce6 +EBUILD asterisk-16.30.1-r2.ebuild 11268 BLAKE2B bc730a8130fa484d1d0ff90e9a75b584569daa86e811be6b43ef086e2b149a4f32e1bef43f76e5985799368f7cebb5476f3037f171b42fe5ee4b8ab4eea01dfe SHA512 072955f38dbd5101dbff614dd3d762300d1a192d71f369b1a04c9c3bfa256c3ef5ed0ca839248b4aa3f1131ac26b75995aca1a28ce1f2ad41a40a5f51a44dbe0 EBUILD asterisk-18.21.0.ebuild 11294 BLAKE2B 30b1c60fd758f8c3bd063cb377ac5d623628c3c1a87edbce363bf4d5177b6b44e2a2f0623280506dda05e137ef2c2eed68dc947ecf86ce51bfee5da31538e8e1 SHA512 5c57817da45196cf9bd5834c2267abb9809a638ed8d702ff817c2c04995fb2242719b62acce052c57636fb072c0562d04a4f813526fcadfc7aad79be532c43b4 -EBUILD asterisk-20.3.0.ebuild 11716 BLAKE2B e36fa8e3fc140dbc04838127a792b6693c662feee0111b09e5753563ae099789266e5d70239e234b2ec4d8b9d1ed33d11de21dc3e24592ae4a75aacac92ef49d SHA512 458434726c5a5418c99a9c8b6bfee6067e38ef4053b78593dc6eed5807801e1080c559d55e644c0ec3f78ed0181489a639588cda154f050826e276bf3a0ddf3c -EBUILD asterisk-20.3.1.ebuild 11199 BLAKE2B 4a50600903a51d2b079ed0cbf88b9a526fa47dd6bef3f92cb94d6cc95825a508b031c9714c771cc9f0cb89c4a185280b74ab5511bfb26ccb435b52ec2e829309 SHA512 a7b948d4defe650fb0c52c979cf866f1775cd9eaa9b6eb4d5b0b90ecda6af3554d65869649e6ea853bae92d4b05df2880fcaf994a276f7feeb27b0210fdf2da7 -EBUILD asterisk-20.5.2.ebuild 11101 BLAKE2B a0dcabcf10a436065df31de075844ab2ff75c8e8546a6e5ce036d189090038ca9b402121856b2fd6190c2bcd93885bb1f5286ddaa788770d2a80d0c141326b86 SHA512 66616bcfaad2ead989e4bc9d7ea4a0e491d66821f1c025e9920d6366296dd818cb0ac000f5bb590eb33cc24b285100db240199fbcd1c5aa05238072cee95978b +EBUILD asterisk-18.24.1.ebuild 11163 BLAKE2B 3c5f7f87ae4ff062b2c48ffdedf0a4907e077c09183a28ffa4c5b51a0016edcc888d90ea0e0155a722fc274b3bba120ed6216bd68fa88169696b482dd89d92d5 SHA512 29fafe19c4fe54be2db06f442a8733fd478f6e797130a92ff02b20a7ca9cd41393e4ab55acf7a480836f0e7083d1e595ac8acee1092e7a3a116cc63235f8d313 EBUILD asterisk-20.6.0.ebuild 11082 BLAKE2B cf574465c0dfb99c87d27c204e10b0d4dd42f97a429f0429d5fb568b0f02e1ce4228e9b8614bd0489ff2481a1ed4d6d3709f324fdac256a7ac9c354df9403d69 SHA512 f9efc3632e0db69bae7918fc8de5e1d56d3783c4b27bd5e553e2fd9e29f05b67322f0e86e0be2cefca2d1446650d6ca089419f350d99d48541a2a411a308f52e -EBUILD asterisk-21.0.2.ebuild 10554 BLAKE2B c17caa0cab0f60e23570f242c5036b50800212117d4a187451c56eedd2d01ebc5c83560fb513ba99e71014eec2748b29caf8fadd87c9972eae9e4a8d684db0e7 SHA512 7fb0a033937eaf018c2bf0081b2476ef0b1fdc518679f102dfd794a01040626b99ee75e7410c0fdbd70c591870ea60b3c7274ff8a4b1e9659488adaa94b2ebf9 +EBUILD asterisk-20.9.1.ebuild 11012 BLAKE2B 35ee0e408bbd1cac76d105cd2101ccb5644b9e6e7fc77a8b51f56c8780c81b45343646aea1844b07bd6047f047dc21bb0ac3968da81358ede02e2573031f86dc SHA512 7e66a49985edc5ae120f2e39e36890e0f875ca23c3d3fb2d9b71127852f9fd8485229222f5b5bcf5083e3ff1787d2172edf6739f342c9e1ce985a84b168ac7c6 EBUILD asterisk-21.1.0.ebuild 10535 BLAKE2B 2805b89dc61ea82708e67cd79892a54b862167c51a33050a1bf0123932d4c5fdfc0080227337f2466466476bf9886890ebfb93fec5ed2f0991cb74084c847463 SHA512 b330cfec744fde6d20ad9a8509e48140da6ef56ba9d385f89a06b009683f880d583f2edbc3e82a3a9cd3097a6c0087f013f024a2793f0bb445359648ac1507d4 +EBUILD asterisk-21.4.1.ebuild 10501 BLAKE2B a36865f478fecb1f5a0a0e6207023705b62e5dcdd18cc8b2b56d6e6fda35a4488759664607574402452a40299fbcde0b36100cf7db06fe5ad0205d9ccd12dbc5 SHA512 af0d41bfab3c3cd14521da9d2d3bea63cb2e59fde7c6a28214456fcaca2e3b058f04477fccaaf5bb689529b2dfcfe10c964ae31752b2ef5721801d4808752794 MISC metadata.xml 1565 BLAKE2B c41d24677c65e3006de867263e723e2530cae9185e260235576df5245e64c49244db82bb2febeb30935b38b5ec1eb5d26f3756f2559868248e766084fe6abcd8 SHA512 465a0a71dbafc0144a2bef2d3cdfe35dbc8e070a8bdd8cfed75c53971a6d9334ca81b4dc575d676cbb43a77f7004a92f992cf9eab3c8bfdd5c8c976dee0d210e diff --git a/net-misc/asterisk/asterisk-16.30.0.ebuild b/net-misc/asterisk/asterisk-16.30.0.ebuild deleted file mode 100644 index a684412a9be4..000000000000 --- a/net-misc/asterisk/asterisk-16.30.0.ebuild +++ /dev/null @@ -1,378 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LUA_COMPAT=( lua5-{1..4} ) - -inherit autotools linux-info lua-single systemd toolchain-funcs tmpfiles - -DESCRIPTION="Asterisk: A Modular Open Source PBX System" -HOMEPAGE="https://www.asterisk.org/" -SRC_URI="https://downloads.asterisk.org/pub/telephony/asterisk/releases/${P}.tar.gz" -LICENSE="GPL-2" -SLOT="0/${PV%%.*}" -KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86" - -IUSE_VOICEMAIL_STORAGE=( - +voicemail_storage_file - voicemail_storage_odbc - voicemail_storage_imap -) -IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl dahdi debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc oss pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd syslog systemd unbound vorbis xmpp" -IUSE_EXPAND="VOICEMAIL_STORAGE" -REQUIRED_USE="gtalk? ( xmpp ) - lua? ( ${LUA_REQUIRED_USE} ) - ^^ ( ${IUSE_VOICEMAIL_STORAGE[*]//+/} ) - voicemail_storage_odbc? ( odbc ) -" - -PATCHES=( - "${FILESDIR}/asterisk-16.16.2-no-var-run-install.patch" - "${FILESDIR}/asterisk-16.29.1_18.15.1_20.0.1-noexec_stack.patch" -) - -DEPEND="acct-user/asterisk - acct-group/asterisk - dev-db/sqlite:3 - dev-libs/popt - >=dev-libs/jansson-2.11:= - dev-libs/libedit - dev-libs/libxml2:2 - dev-libs/libxslt - sys-apps/util-linux - sys-libs/zlib - virtual/libcrypt:= - alsa? ( media-libs/alsa-lib ) - bluetooth? ( net-wireless/bluez:= ) - calendar? ( - net-libs/neon:= - dev-libs/libical:= - dev-libs/iksemel - ) - caps? ( sys-libs/libcap ) - blocks? ( sys-libs/blocksruntime ) - cluster? ( sys-cluster/corosync ) - codec2? ( media-libs/codec2:= ) - curl? ( net-misc/curl ) - dahdi? ( - net-libs/libpri - net-misc/dahdi-tools - ) - freetds? ( dev-db/freetds ) - gtalk? ( dev-libs/iksemel ) - http? ( dev-libs/gmime:2.6 ) - iconv? ( virtual/libiconv ) - ilbc? ( media-libs/libilbc ) - ldap? ( net-nds/openldap:= ) - lua? ( ${LUA_DEPS} ) - mysql? ( dev-db/mysql-connector-c:= ) - newt? ( dev-libs/newt ) - odbc? ( dev-db/unixODBC ) - pjproject? ( >=net-libs/pjproject-2.9:= ) - portaudio? ( media-libs/portaudio ) - postgres? ( dev-db/postgresql:* ) - radius? ( net-dialup/freeradius-client ) - snmp? ( net-analyzer/net-snmp:= ) - span? ( media-libs/spandsp ) - speex? ( - media-libs/libogg - media-libs/speex - media-libs/speexdsp - ) - srtp? ( net-libs/libsrtp:0 ) - ssl? ( - dev-libs/openssl:0= - ) - systemd? ( sys-apps/systemd ) - !systemd? ( !sys-apps/systemd ) - unbound? ( net-dns/unbound ) - vorbis? ( - media-libs/libogg - media-libs/libvorbis - ) - voicemail_storage_imap? ( net-libs/c-client[ssl=] ) - xmpp? ( dev-libs/iksemel ) -" - -RDEPEND="${DEPEND} - net-misc/asterisk-core-sounds - net-misc/asterisk-extra-sounds - net-misc/asterisk-moh-opsound - selinux? ( sec-policy/selinux-asterisk ) - syslog? ( virtual/logger )" - -BDEPEND="dev-libs/libxml2:2 - virtual/pkgconfig" - -QA_DT_NEEDED="/usr/lib.*/libasteriskssl[.]so[.][0-9]\+" - -_make_args=( - "NOISY_BUILD=yes" - "ASTDBDIR=\$(ASTDATADIR)/astdb" - "ASTVARRUNDIR=/run/asterisk" - "ASTCACHEDIR=/var/cache/asterisk" - "OPTIMIZE=" - "DEBUG=" - "DESTDIR=${D}" - "CONFIG_SRC=configs/samples" - "CONFIG_EXTEN=.sample" -) - -pkg_pretend() { - CONFIG_CHECK="~!NF_CONNTRACK_SIP" - local WARNING_NF_CONNTRACK_SIP="SIP (NAT) connection tracking is enabled. Some users - have reported that this module dropped critical SIP packets in their deployments. You - may want to disable it if you see such problems." - check_extra_config - - [[ "${MERGE_TYPE}" == binary ]] && return - - if tc-is-clang; then - use blocks || die "CC=clang requires USE=blocks" - else - use blocks && die "USE=blocks can only be used with CC=clang" - fi -} - -pkg_setup() { - use lua && lua-single_pkg_setup -} - -src_prepare() { - default - AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson" \ - AC_CONFIG_SUBDIRS=menuselect eautoreconf -} - -src_configure() { - local vmst - local copt cstate - - econf \ - SED=sed \ - LUA_VERSION="${ELUA#lua}" \ - --libdir="/usr/$(get_libdir)" \ - --localstatedir="/var" \ - --with-crypto \ - --with-gsm=internal \ - --with-popt \ - --with-z \ - --with-libedit \ - --without-jansson-bundled \ - --without-pjproject-bundled \ - $(use_with caps cap) \ - $(use_with codec2) \ - $(use_with lua lua) \ - $(use_with http gmime) \ - $(use_with newt) \ - $(use_with pjproject) \ - $(use_with portaudio) \ - $(use_with ssl) \ - $(use_with unbound) - - _menuselect() { - menuselect/menuselect "$@" || die "menuselect $* failed." - } - - _use_select() { - local state=$(use "$1" && echo enable || echo disable) - shift # remove use from parameters - - while [[ -n $1 ]]; do - _menuselect --${state} "$1" menuselect.makeopts - shift - done - } - - # Blank out sounds/sounds.xml file to prevent - # asterisk from installing sounds files (we pull them in via - # asterisk-{core,extra}-sounds and asterisk-moh-opsound. - >"${S}"/sounds/sounds.xml - - # That NATIVE_ARCH chatter really is quite bothersome - sed -i 's/NATIVE_ARCH=/NATIVE_ARCH=0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" - - # Compile menuselect binary for optional components - emake "${_make_args[@]}" menuselect.makeopts - - # Disable astdb2* tools. We've been on sqlite long enough - # that this should really no longer be a problem (bug #https://bugs.gentoo.org/872194) - _menuselect --disable astdb2sqlite3 menuselect.makeopts - _menuselect --disable astdb2bdb menuselect.makeopts - - # Disable BUILD_NATIVE (bug #667498) - _menuselect --disable build_native menuselect.makeopts - - # Broken functionality is forcibly disabled (bug #360143) - _menuselect --disable chan_misdn menuselect.makeopts - _menuselect --disable chan_ooh323 menuselect.makeopts - - # Utility set is forcibly enabled (bug #358001) - _menuselect --enable smsq menuselect.makeopts - _menuselect --enable streamplayer menuselect.makeopts - _menuselect --enable aelparse menuselect.makeopts - _menuselect --enable astman menuselect.makeopts - - # this is connected, otherwise it would not find - # ast_pktccops_gate_alloc symbol - _menuselect --enable chan_mgcp menuselect.makeopts - _menuselect --enable res_pktccops menuselect.makeopts - - # SSL is forcibly enabled, IAX2 & DUNDI are expected to be available - _menuselect --enable pbx_dundi menuselect.makeopts - _menuselect --enable func_aes menuselect.makeopts - _menuselect --enable chan_iax2 menuselect.makeopts - - # SQlite3 is now the main database backend, enable related features - _menuselect --enable cdr_sqlite3_custom menuselect.makeopts - _menuselect --enable cel_sqlite3_custom menuselect.makeopts - - # Disable conversion tools (which fails to compile in some cases). - _menuselect --disable astdb2bdb menuselect.makeopts - - # The others are based on USE-flag settings - _use_select alsa chan_alsa - _use_select bluetooth chan_mobile - _use_select calendar res_calendar res_calendar_{caldav,ews,exchange,icalendar} - _use_select cluster res_corosync - _use_select codec2 codec_codec2 - _use_select curl func_curl res_config_curl res_curl - _use_select dahdi app_dahdiras app_meetme chan_dahdi codec_dahdi res_timing_dahdi - _use_select deprecated app_macro - _use_select freetds {cdr,cel}_tds - _use_select gtalk chan_motif - _use_select http res_http_post - _use_select iconv func_iconv - _use_select ilbc codec_ilbc format_ilbc - _use_select ldap res_config_ldap - _use_select lua pbx_lua - _use_select mysql app_mysql cdr_mysql res_config_mysql - _use_select odbc cdr_adaptive_odbc res_config_odbc {cdr,cel,res,func}_odbc - _use_select oss chan_oss - _use_select postgres {cdr,cel}_pgsql res_config_pgsql - _use_select radius {cdr,cel}_radius - _use_select snmp res_snmp - _use_select span res_fax_spandsp - _use_select speex {codec,func}_speex - _use_select speex format_ogg_speex - _use_select srtp res_srtp - _use_select statsd res_statsd res_{endpoint,chan}_stats - _use_select syslog cdr_syslog - _use_select vorbis format_ogg_vorbis - _use_select xmpp res_xmpp - - # Voicemail storage ... - for vmst in "${IUSE_VOICEMAIL_STORAGE[@]}"; do - if use "${vmst#+}"; then - _menuselect --enable "$(echo "${vmst##*_}" | tr '[:lower:]' '[:upper:]')_STORAGE" menuselect.makeopts - fi - done - - if use debug; then - for o in DONT_OPTIMIZE DEBUG_FD_LEAKS MALLOC_DEBUG BETTER_BACKTRACES; do - _menuselect --enable "${o}" menuselect.makeopts - done - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - for copt in ${GENTOO_ASTERISK_CUSTOM_MENUSELECT}; do - cstate=--enable - [[ "${copt}" == -* ]] && cstate=--disable - ebegin "Custom option ${copt#[-+]} ${cstate:2}d" - _menuselect ${cstate} "${copt#[-+]}" - eend $? - done - fi -} - -src_compile() { - emake "${_make_args[@]}" -} - -src_install() { - local d - - dodir "/usr/$(get_libdir)/pkgconfig" - - diropts -m 0750 -o root -g asterisk - dodir /etc/asterisk - - emake "${_make_args[@]}" install install-configs - - fowners asterisk: /var/lib/asterisk/astdb - - if use radius; then - insinto /etc/radiusclient/ - doins contrib/dictionary.digium - fi - - # keep directories - diropts -m 0750 -o asterisk -g root - keepdir /var/spool/asterisk/{system,tmp,meetme,monitor,dictate,voicemail,recording,outgoing} - diropts -m 0750 -o asterisk -g asterisk - keepdir /var/log/asterisk/{cdr-csv,cdr-custom} - - newsbin "${FILESDIR}/asterisk_wrapper-16.26.1-18.12.1" asterisk_wrapper - newinitd "${FILESDIR}"/initd-16.26.1-18.12.1 asterisk - newconfd "${FILESDIR}"/confd-16.26.1-18.12.1 asterisk - - systemd_dounit "${FILESDIR}"/asterisk.service - newtmpfiles "${FILESDIR}"/asterisk.tmpfiles-16.22.0-18.8.0.conf asterisk.conf - systemd_install_serviced "${FILESDIR}"/asterisk.service.conf - - # Reset diropts else dodoc uses it for doc installations. - diropts -m0755 - - # install the upgrade documentation - dodoc UPGRADE* BUGS CREDITS - - # install extra documentation - use doc && dodoc doc/*.{txt,pdf} - - # install logrotate snippet; bug #329281 - # - insinto /etc/logrotate.d - newins "${FILESDIR}/1.6.2/asterisk.logrotate4" asterisk - - # Asterisk installs a few folders that's empty by design, - # but still required. This finds them, and marks them for - # portage. - while read d <&3; do - keepdir "${d#${ED}}" - done 3< <(find "${ED}"/var -type d -empty || die "Find failed.") -} - -pkg_postinst() { - tmpfiles_process asterisk.conf - - if [ -z "${REPLACING_VERSIONS}" ]; then - elog "Asterisk Wiki: https://wiki.asterisk.org/wiki/" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - elif [ "$(ver_cut 1 "${REPLACING_VERSIONS}")" != "$(ver_cut 1)" ]; then - elog "You are updating from Asterisk $(ver_cut 1 "${REPLACING_VERSIONS}") upgrade document:" - elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - fi - - if use deprecated; then - ewarn "You really aught to port whatever code you have that depends on this since these are going to go away." - ewarn "Refer: https://wiki.asterisk.org/wiki/display/AST/Module+Deprecation" - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - ewarn "You are using GENTOO_ASTERISK_CUSTOM_MENUSELECT, this should only be used" - ewarn "for debugging, for anything else, please file a bug on https://bugs.gentoo.org" - fi - - if [[ -f /var/lib/asterisk/astdb.sqlite3 ]]; then - ewarn "Default astdb location has changed from /var/lib/asterisk to /var/lib/asterisk/astdb" - ewarn "You still have a /var/lib/asterisk/astdb.sqlite file. You need to either set" - ewarn "astdbdir in /etc/asterisk/asterisk.conf to /var/lib/asterisk or follow these" - ewarn "steps to migrate:" - ewarn "1. /etc/init.d/asterisk stop" - ewarn "2. mv /var/lib/asterisk/astdb.sqlite /var/lib/asterisk/astdb/" - ewarn "3. /etc/init.d/asterisk start" - ewarn "This update was done partly for security reasons so that /var/lib/asterisk can be root owned." - fi -} diff --git a/net-misc/asterisk/asterisk-16.30.1.ebuild b/net-misc/asterisk/asterisk-16.30.1-r2.ebuild index b2a0d086ac1e..5caed3bb4430 100644 --- a/net-misc/asterisk/asterisk-16.30.1.ebuild +++ b/net-misc/asterisk/asterisk-16.30.1-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -12,14 +12,14 @@ HOMEPAGE="https://www.asterisk.org/" SRC_URI="https://downloads.asterisk.org/pub/telephony/asterisk/releases/${P}.tar.gz" LICENSE="GPL-2" SLOT="0/${PV%%.*}" -KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" IUSE_VOICEMAIL_STORAGE=( +voicemail_storage_file voicemail_storage_odbc voicemail_storage_imap ) -IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl dahdi debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc oss pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd syslog systemd unbound vorbis xmpp" +IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc oss pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd syslog systemd unbound vorbis xmpp" IUSE_EXPAND="VOICEMAIL_STORAGE" REQUIRED_USE="gtalk? ( xmpp ) lua? ( ${LUA_REQUIRED_USE} ) @@ -30,6 +30,7 @@ REQUIRED_USE="gtalk? ( xmpp ) PATCHES=( "${FILESDIR}/asterisk-16.16.2-no-var-run-install.patch" "${FILESDIR}/asterisk-16.29.1_18.15.1_20.0.1-noexec_stack.patch" + "${FILESDIR}/asterisk-16.30.1-r1-iax2_jitterbuffer.patch" ) DEPEND="acct-user/asterisk @@ -55,10 +56,6 @@ DEPEND="acct-user/asterisk cluster? ( sys-cluster/corosync ) codec2? ( media-libs/codec2:= ) curl? ( net-misc/curl ) - dahdi? ( - net-libs/libpri - net-misc/dahdi-tools - ) freetds? ( dev-db/freetds ) gtalk? ( dev-libs/iksemel ) http? ( dev-libs/gmime:2.6 ) @@ -239,7 +236,6 @@ src_configure() { _use_select cluster res_corosync _use_select codec2 codec_codec2 _use_select curl func_curl res_config_curl res_curl - _use_select dahdi app_dahdiras app_meetme chan_dahdi codec_dahdi res_timing_dahdi _use_select deprecated app_macro _use_select freetds {cdr,cel}_tds _use_select gtalk chan_motif diff --git a/net-misc/asterisk/asterisk-18.17.0.ebuild b/net-misc/asterisk/asterisk-18.17.0.ebuild deleted file mode 100644 index 015737c8a097..000000000000 --- a/net-misc/asterisk/asterisk-18.17.0.ebuild +++ /dev/null @@ -1,375 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LUA_COMPAT=( lua5-{1..4} ) - -inherit autotools linux-info lua-single systemd toolchain-funcs tmpfiles - -DESCRIPTION="Asterisk: A Modular Open Source PBX System" -HOMEPAGE="https://www.asterisk.org/" -SRC_URI="https://downloads.asterisk.org/pub/telephony/asterisk/releases/${P}.tar.gz" -LICENSE="GPL-2" -SLOT="0/${PV%%.*}" -KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86" - -IUSE_VOICEMAIL_STORAGE=( - voicemail_storage_odbc - voicemail_storage_imap -) -IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl dahdi debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc oss pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd syslog systemd unbound vorbis xmpp" -IUSE_EXPAND="VOICEMAIL_STORAGE" -REQUIRED_USE="gtalk? ( xmpp ) - lua? ( ${LUA_REQUIRED_USE} ) - voicemail_storage_odbc? ( odbc ) -" - -PATCHES=( - "${FILESDIR}/asterisk-16.16.2-no-var-run-install.patch" -) - -DEPEND="acct-user/asterisk - acct-group/asterisk - dev-db/sqlite:3 - dev-libs/popt - >=dev-libs/jansson-2.11:= - dev-libs/libedit - dev-libs/libxml2:2 - dev-libs/libxslt - sys-apps/util-linux - sys-libs/zlib - virtual/libcrypt:= - alsa? ( media-libs/alsa-lib ) - bluetooth? ( net-wireless/bluez:= ) - calendar? ( - net-libs/neon:= - dev-libs/libical:= - dev-libs/iksemel - ) - caps? ( sys-libs/libcap ) - blocks? ( sys-libs/blocksruntime ) - cluster? ( sys-cluster/corosync ) - codec2? ( media-libs/codec2:= ) - curl? ( net-misc/curl ) - dahdi? ( - net-libs/libpri - net-misc/dahdi-tools - ) - freetds? ( dev-db/freetds ) - gtalk? ( dev-libs/iksemel ) - http? ( dev-libs/gmime:2.6 ) - iconv? ( virtual/libiconv ) - ilbc? ( media-libs/libilbc ) - ldap? ( net-nds/openldap:= ) - lua? ( ${LUA_DEPS} ) - mysql? ( dev-db/mysql-connector-c:= ) - newt? ( dev-libs/newt ) - odbc? ( dev-db/unixODBC ) - pjproject? ( >=net-libs/pjproject-2.12:= ) - portaudio? ( media-libs/portaudio ) - postgres? ( dev-db/postgresql:* ) - radius? ( net-dialup/freeradius-client ) - snmp? ( net-analyzer/net-snmp:= ) - span? ( media-libs/spandsp ) - speex? ( - media-libs/libogg - media-libs/speex - media-libs/speexdsp - ) - srtp? ( net-libs/libsrtp:0 ) - ssl? ( - dev-libs/openssl:0= - ) - systemd? ( sys-apps/systemd ) - !systemd? ( !sys-apps/systemd ) - unbound? ( net-dns/unbound ) - vorbis? ( - media-libs/libogg - media-libs/libvorbis - ) - voicemail_storage_imap? ( net-libs/c-client[ssl=] ) - xmpp? ( dev-libs/iksemel ) -" - -RDEPEND="${DEPEND} - net-misc/asterisk-core-sounds - net-misc/asterisk-extra-sounds - net-misc/asterisk-moh-opsound - selinux? ( sec-policy/selinux-asterisk ) - syslog? ( virtual/logger )" - -BDEPEND="dev-libs/libxml2:2 - virtual/pkgconfig" - -QA_DT_NEEDED="/usr/lib.*/libasteriskssl[.]so[.][0-9]\+" - -_make_args=( - "NOISY_BUILD=yes" - "ASTDBDIR=\$(ASTDATADIR)/astdb" - "ASTVARRUNDIR=/run/asterisk" - "ASTCACHEDIR=/var/cache/asterisk" - "OPTIMIZE=" - "DEBUG=" - "DESTDIR=${D}" - "CONFIG_SRC=configs/samples" - "CONFIG_EXTEN=.sample" -) - -pkg_pretend() { - CONFIG_CHECK="~!NF_CONNTRACK_SIP" - local WARNING_NF_CONNTRACK_SIP="SIP (NAT) connection tracking is enabled. Some users - have reported that this module dropped critical SIP packets in their deployments. You - may want to disable it if you see such problems." - check_extra_config - - [[ "${MERGE_TYPE}" == binary ]] && return - - if tc-is-clang; then - use blocks || die "CC=clang requires USE=blocks" - else - use blocks && die "USE=blocks can only be used with CC=clang" - fi -} - -pkg_setup() { - use lua && lua-single_pkg_setup -} - -src_prepare() { - default - AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson" \ - AC_CONFIG_SUBDIRS=menuselect eautoreconf -} - -src_configure() { - local vmst - local copt cstate - - econf \ - LUA_VERSION="${ELUA#lua}" \ - --libdir="/usr/$(get_libdir)" \ - --localstatedir="/var" \ - --with-crypto \ - --with-gsm=internal \ - --with-popt \ - --with-z \ - --with-libedit \ - --without-jansson-bundled \ - --without-pjproject-bundled \ - $(use_with caps cap) \ - $(use_with codec2) \ - $(use_with lua lua) \ - $(use_with http gmime) \ - $(use_with newt) \ - $(use_with pjproject) \ - $(use_with portaudio) \ - $(use_with ssl) \ - $(use_with unbound) - - _menuselect() { - menuselect/menuselect "$@" || die "menuselect $* failed." - } - - _use_select() { - local state=$(use "$1" && echo enable || echo disable) - shift # remove use from parameters - - while [[ -n $1 ]]; do - _menuselect --${state} "$1" menuselect.makeopts - shift - done - } - - # Blank out sounds/sounds.xml file to prevent - # asterisk from installing sounds files (we pull them in via - # asterisk-{core,extra}-sounds and asterisk-moh-opsound. - >"${S}"/sounds/sounds.xml - - # That NATIVE_ARCH chatter really is quite bothersome - sed -i 's/NATIVE_ARCH=/NATIVE_ARCH=0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" - - # Compile menuselect binary for optional components - emake "${_make_args[@]}" menuselect.makeopts - - # Disable astdb2* tools. We've been on sqlite long enough - # that this should really no longer be a problem (bug #https://bugs.gentoo.org/872194) - _menuselect --disable astdb2sqlite3 menuselect.makeopts - _menuselect --disable astdb2bdb menuselect.makeopts - - # Disable BUILD_NATIVE (bug #667498) - _menuselect --disable build_native menuselect.makeopts - - # Broken functionality is forcibly disabled (bug #360143) - _menuselect --disable chan_misdn menuselect.makeopts - _menuselect --disable chan_ooh323 menuselect.makeopts - - # Utility set is forcibly enabled (bug #358001) - _menuselect --enable smsq menuselect.makeopts - _menuselect --enable streamplayer menuselect.makeopts - _menuselect --enable aelparse menuselect.makeopts - _menuselect --enable astman menuselect.makeopts - - # this is connected, otherwise it would not find - # ast_pktccops_gate_alloc symbol - _menuselect --enable chan_mgcp menuselect.makeopts - _menuselect --enable res_pktccops menuselect.makeopts - - # SSL is forcibly enabled, IAX2 & DUNDI are expected to be available - _menuselect --enable pbx_dundi menuselect.makeopts - _menuselect --enable func_aes menuselect.makeopts - _menuselect --enable chan_iax2 menuselect.makeopts - - # SQlite3 is now the main database backend, enable related features - _menuselect --enable cdr_sqlite3_custom menuselect.makeopts - _menuselect --enable cel_sqlite3_custom menuselect.makeopts - - # Disable conversion tools (which fails to compile in some cases). - _menuselect --disable astdb2bdb menuselect.makeopts - - # The others are based on USE-flag settings - _use_select alsa chan_alsa - _use_select bluetooth chan_mobile - _use_select calendar res_calendar res_calendar_{caldav,ews,exchange,icalendar} - _use_select cluster res_corosync - _use_select codec2 codec_codec2 - _use_select curl func_curl res_config_curl res_curl - _use_select dahdi app_dahdiras app_meetme chan_dahdi codec_dahdi res_timing_dahdi - _use_select deprecated app_macro - _use_select freetds {cdr,cel}_tds - _use_select gtalk chan_motif - _use_select http res_http_post - _use_select iconv func_iconv - _use_select ilbc codec_ilbc format_ilbc - _use_select ldap res_config_ldap - _use_select lua pbx_lua - _use_select mysql app_mysql cdr_mysql res_config_mysql - _use_select odbc cdr_adaptive_odbc res_config_odbc {cdr,cel,res,func}_odbc - _use_select oss chan_oss - _use_select postgres {cdr,cel}_pgsql res_config_pgsql - _use_select radius {cdr,cel}_radius - _use_select snmp res_snmp - _use_select span res_fax_spandsp - _use_select speex {codec,func}_speex - _use_select speex format_ogg_speex - _use_select srtp res_srtp - _use_select statsd res_statsd res_{endpoint,chan}_stats - _use_select syslog cdr_syslog - _use_select vorbis format_ogg_vorbis - _use_select xmpp res_xmpp - - # Voicemail storage ... - _menuselect --enable app_voicemail menuselect.makeopts - for vmst in "${IUSE_VOICEMAIL_STORAGE[@]}"; do - if use "${vmst#+}"; then - _menuselect --enable "app_voicemail_${vmst##*_}" menuselect.makeopts - fi - done - - if use debug; then - for o in DONT_OPTIMIZE DEBUG_FD_LEAKS MALLOC_DEBUG BETTER_BACKTRACES; do - _menuselect --enable "${o}" menuselect.makeopts - done - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - for copt in ${GENTOO_ASTERISK_CUSTOM_MENUSELECT}; do - cstate=--enable - [[ "${copt}" == -* ]] && cstate=--disable - ebegin "Custom option ${copt#[-+]} ${cstate:2}d" - _menuselect ${cstate} "${copt#[-+]}" - eend $? - done - fi -} - -src_compile() { - emake "${_make_args[@]}" -} - -src_install() { - local d - - dodir "/usr/$(get_libdir)/pkgconfig" - - diropts -m 0750 -o root -g asterisk - dodir /etc/asterisk - - emake "${_make_args[@]}" install install-headers install-configs - - fowners asterisk: /var/lib/asterisk/astdb - - if use radius; then - insinto /etc/radiusclient/ - doins contrib/dictionary.digium - fi - - # keep directories - diropts -m 0750 -o asterisk -g root - keepdir /var/spool/asterisk/{system,tmp,meetme,monitor,dictate,voicemail,recording,outgoing} - diropts -m 0750 -o asterisk -g asterisk - keepdir /var/log/asterisk/{cdr-csv,cdr-custom} - - newsbin "${FILESDIR}/asterisk_wrapper-16.26.1-18.12.1" asterisk_wrapper - newinitd "${FILESDIR}"/initd-16.26.1-18.12.1 asterisk - newconfd "${FILESDIR}"/confd-16.26.1-18.12.1 asterisk - - systemd_dounit "${FILESDIR}"/asterisk.service - newtmpfiles "${FILESDIR}"/asterisk.tmpfiles-16.22.0-18.8.0.conf asterisk.conf - systemd_install_serviced "${FILESDIR}"/asterisk.service.conf - - # Reset diropts else dodoc uses it for doc installations. - diropts -m0755 - - # install the upgrade documentation - dodoc UPGRADE* BUGS CREDITS - - # install extra documentation - use doc && dodoc doc/*.{txt,pdf} - - # install logrotate snippet; bug #329281 - # - insinto /etc/logrotate.d - newins "${FILESDIR}/1.6.2/asterisk.logrotate4" asterisk - - # Asterisk installs a few folders that's empty by design, - # but still required. This finds them, and marks them for - # portage. - while read d <&3; do - keepdir "${d#${ED}}" - done 3< <(find "${ED}"/var -type d -empty || die "Find failed.") -} - -pkg_postinst() { - tmpfiles_process asterisk.conf - - if [ -z "${REPLACING_VERSIONS}" ]; then - elog "Asterisk Wiki: https://wiki.asterisk.org/wiki/" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - elif [ "$(ver_cut 1 "${REPLACING_VERSIONS}")" != "$(ver_cut 1)" ]; then - elog "You are updating from Asterisk $(ver_cut 1 "${REPLACING_VERSIONS}") upgrade document:" - elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - fi - - if use deprecated; then - ewarn "You really aught to port whatever code you have that depends on this since these are going to go away." - ewarn "Refer: https://wiki.asterisk.org/wiki/display/AST/Module+Deprecation" - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - ewarn "You are using GENTOO_ASTERISK_CUSTOM_MENUSELECT, this should only be used" - ewarn "for debugging, for anything else, please file a bug on https://bugs.gentoo.org" - fi - - if [[ -f /var/lib/asterisk/astdb.sqlite3 ]]; then - ewarn "Default astdb location has changed from /var/lib/asterisk to /var/lib/asterisk/astdb" - ewarn "You still have a /var/lib/asterisk/astdb.sqlite file. You need to either set" - ewarn "astdbdir in /etc/asterisk/asterisk.conf to /var/lib/asterisk or follow these" - ewarn "steps to migrate:" - ewarn "1. /etc/init.d/asterisk stop" - ewarn "2. mv /var/lib/asterisk/astdb.sqlite /var/lib/asterisk/astdb/" - ewarn "3. /etc/init.d/asterisk start" - ewarn "This update was done partly for security reasons so that /var/lib/asterisk can be root owned." - fi -} diff --git a/net-misc/asterisk/asterisk-18.18.0.ebuild b/net-misc/asterisk/asterisk-18.18.0.ebuild deleted file mode 100644 index b2e2fa41bd6b..000000000000 --- a/net-misc/asterisk/asterisk-18.18.0.ebuild +++ /dev/null @@ -1,377 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LUA_COMPAT=( lua5-{1..4} ) - -inherit autotools linux-info lua-single systemd toolchain-funcs tmpfiles - -DESCRIPTION="Asterisk: A Modular Open Source PBX System" -HOMEPAGE="https://www.asterisk.org/" -SRC_URI="https://downloads.asterisk.org/pub/telephony/asterisk/releases/${P}.tar.gz" -LICENSE="GPL-2" -SLOT="0/${PV%%.*}" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" - -IUSE_VOICEMAIL_STORAGE=( - voicemail_storage_odbc - voicemail_storage_imap -) -IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl dahdi debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc oss pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd syslog systemd unbound vorbis xmpp" -IUSE_EXPAND="VOICEMAIL_STORAGE" -REQUIRED_USE="gtalk? ( xmpp ) - lua? ( ${LUA_REQUIRED_USE} ) - voicemail_storage_odbc? ( odbc ) -" - -PATCHES=( - "${FILESDIR}/asterisk-16.16.2-no-var-run-install.patch" - "${FILESDIR}/asterisk-18.17.1-20.2.1-configure-fix-test-code-to-match-gethostbyname_r-pro.patch" -) - -DEPEND="acct-user/asterisk - acct-group/asterisk - dev-db/sqlite:3 - dev-libs/popt - >=dev-libs/jansson-2.11:= - dev-libs/libedit - dev-libs/libxml2:2 - dev-libs/libxslt - sys-apps/util-linux - sys-libs/zlib - virtual/libcrypt:= - alsa? ( media-libs/alsa-lib ) - bluetooth? ( net-wireless/bluez:= ) - calendar? ( - net-libs/neon:= - dev-libs/libical:= - dev-libs/iksemel - ) - caps? ( sys-libs/libcap ) - blocks? ( sys-libs/blocksruntime ) - cluster? ( sys-cluster/corosync ) - codec2? ( media-libs/codec2:= ) - curl? ( net-misc/curl ) - dahdi? ( - net-libs/libpri - net-misc/dahdi-tools - ) - freetds? ( dev-db/freetds ) - gtalk? ( dev-libs/iksemel ) - http? ( dev-libs/gmime:2.6 ) - iconv? ( virtual/libiconv ) - ilbc? ( media-libs/libilbc ) - ldap? ( net-nds/openldap:= ) - lua? ( ${LUA_DEPS} ) - mysql? ( dev-db/mysql-connector-c:= ) - newt? ( dev-libs/newt ) - odbc? ( dev-db/unixODBC ) - pjproject? ( >=net-libs/pjproject-2.12:= ) - portaudio? ( media-libs/portaudio ) - postgres? ( dev-db/postgresql:* ) - radius? ( net-dialup/freeradius-client ) - snmp? ( net-analyzer/net-snmp:= ) - span? ( media-libs/spandsp ) - speex? ( - media-libs/libogg - media-libs/speex - media-libs/speexdsp - ) - srtp? ( net-libs/libsrtp:0 ) - ssl? ( - dev-libs/openssl:0= - ) - systemd? ( sys-apps/systemd ) - !systemd? ( !sys-apps/systemd ) - unbound? ( net-dns/unbound ) - vorbis? ( - media-libs/libogg - media-libs/libvorbis - ) - voicemail_storage_imap? ( net-libs/c-client[ssl=] ) - xmpp? ( dev-libs/iksemel ) -" - -RDEPEND="${DEPEND} - net-misc/asterisk-core-sounds - net-misc/asterisk-extra-sounds - net-misc/asterisk-moh-opsound - selinux? ( sec-policy/selinux-asterisk ) - syslog? ( virtual/logger )" - -BDEPEND="dev-libs/libxml2:2 - virtual/pkgconfig" - -QA_DT_NEEDED="/usr/lib.*/libasteriskssl[.]so[.][0-9]\+" - -_make_args=( - "NOISY_BUILD=yes" - "ASTDBDIR=\$(ASTDATADIR)/astdb" - "ASTVARRUNDIR=/run/asterisk" - "ASTCACHEDIR=/var/cache/asterisk" - "OPTIMIZE=" - "DEBUG=" - "DESTDIR=${D}" - "CONFIG_SRC=configs/samples" - "CONFIG_EXTEN=.sample" - "AST_FORTIFY_SOURCE=" -) - -pkg_pretend() { - CONFIG_CHECK="~!NF_CONNTRACK_SIP" - local WARNING_NF_CONNTRACK_SIP="SIP (NAT) connection tracking is enabled. Some users - have reported that this module dropped critical SIP packets in their deployments. You - may want to disable it if you see such problems." - check_extra_config - - [[ "${MERGE_TYPE}" == binary ]] && return - - if tc-is-clang; then - use blocks || die "CC=clang requires USE=blocks" - else - use blocks && die "USE=blocks can only be used with CC=clang" - fi -} - -pkg_setup() { - use lua && lua-single_pkg_setup -} - -src_prepare() { - default - AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson" \ - AC_CONFIG_SUBDIRS=menuselect eautoreconf -} - -src_configure() { - local vmst - local copt cstate - - econf \ - LUA_VERSION="${ELUA#lua}" \ - --libdir="/usr/$(get_libdir)" \ - --localstatedir="/var" \ - --with-crypto \ - --with-gsm=internal \ - --with-popt \ - --with-z \ - --with-libedit \ - --without-jansson-bundled \ - --without-pjproject-bundled \ - $(use_with caps cap) \ - $(use_with codec2) \ - $(use_with lua lua) \ - $(use_with http gmime) \ - $(use_with newt) \ - $(use_with pjproject) \ - $(use_with portaudio) \ - $(use_with ssl) \ - $(use_with unbound) - - _menuselect() { - menuselect/menuselect "$@" || die "menuselect $* failed." - } - - _use_select() { - local state=$(use "$1" && echo enable || echo disable) - shift # remove use from parameters - - while [[ -n $1 ]]; do - _menuselect --${state} "$1" menuselect.makeopts - shift - done - } - - # Blank out sounds/sounds.xml file to prevent - # asterisk from installing sounds files (we pull them in via - # asterisk-{core,extra}-sounds and asterisk-moh-opsound. - >"${S}"/sounds/sounds.xml - - # That NATIVE_ARCH chatter really is quite bothersome - sed -i 's/NATIVE_ARCH=/NATIVE_ARCH=0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" - - # Compile menuselect binary for optional components - emake "${_make_args[@]}" menuselect.makeopts - - # Disable astdb2* tools. We've been on sqlite long enough - # that this should really no longer be a problem (bug #https://bugs.gentoo.org/872194) - _menuselect --disable astdb2sqlite3 menuselect.makeopts - _menuselect --disable astdb2bdb menuselect.makeopts - - # Disable BUILD_NATIVE (bug #667498) - _menuselect --disable build_native menuselect.makeopts - - # Broken functionality is forcibly disabled (bug #360143) - _menuselect --disable chan_misdn menuselect.makeopts - _menuselect --disable chan_ooh323 menuselect.makeopts - - # Utility set is forcibly enabled (bug #358001) - _menuselect --enable smsq menuselect.makeopts - _menuselect --enable streamplayer menuselect.makeopts - _menuselect --enable aelparse menuselect.makeopts - _menuselect --enable astman menuselect.makeopts - - # this is connected, otherwise it would not find - # ast_pktccops_gate_alloc symbol - _menuselect --enable chan_mgcp menuselect.makeopts - _menuselect --enable res_pktccops menuselect.makeopts - - # SSL is forcibly enabled, IAX2 & DUNDI are expected to be available - _menuselect --enable pbx_dundi menuselect.makeopts - _menuselect --enable func_aes menuselect.makeopts - _menuselect --enable chan_iax2 menuselect.makeopts - - # SQlite3 is now the main database backend, enable related features - _menuselect --enable cdr_sqlite3_custom menuselect.makeopts - _menuselect --enable cel_sqlite3_custom menuselect.makeopts - - # Disable conversion tools (which fails to compile in some cases). - _menuselect --disable astdb2bdb menuselect.makeopts - - # The others are based on USE-flag settings - _use_select alsa chan_alsa - _use_select bluetooth chan_mobile - _use_select calendar res_calendar res_calendar_{caldav,ews,exchange,icalendar} - _use_select cluster res_corosync - _use_select codec2 codec_codec2 - _use_select curl func_curl res_config_curl res_curl - _use_select dahdi app_dahdiras app_meetme chan_dahdi codec_dahdi res_timing_dahdi - _use_select deprecated app_macro - _use_select freetds {cdr,cel}_tds - _use_select gtalk chan_motif - _use_select http res_http_post - _use_select iconv func_iconv - _use_select ilbc codec_ilbc format_ilbc - _use_select ldap res_config_ldap - _use_select lua pbx_lua - _use_select mysql app_mysql cdr_mysql res_config_mysql - _use_select odbc cdr_adaptive_odbc res_config_odbc {cdr,cel,res,func}_odbc - _use_select oss chan_oss - _use_select postgres {cdr,cel}_pgsql res_config_pgsql - _use_select radius {cdr,cel}_radius - _use_select snmp res_snmp - _use_select span res_fax_spandsp - _use_select speex {codec,func}_speex - _use_select speex format_ogg_speex - _use_select srtp res_srtp - _use_select statsd res_statsd res_{endpoint,chan}_stats - _use_select syslog cdr_syslog - _use_select vorbis format_ogg_vorbis - _use_select xmpp res_xmpp - - # Voicemail storage ... - _menuselect --enable app_voicemail menuselect.makeopts - for vmst in "${IUSE_VOICEMAIL_STORAGE[@]}"; do - if use "${vmst#+}"; then - _menuselect --enable "app_voicemail_${vmst##*_}" menuselect.makeopts - fi - done - - if use debug; then - for o in DONT_OPTIMIZE DEBUG_FD_LEAKS MALLOC_DEBUG BETTER_BACKTRACES; do - _menuselect --enable "${o}" menuselect.makeopts - done - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - for copt in ${GENTOO_ASTERISK_CUSTOM_MENUSELECT}; do - cstate=--enable - [[ "${copt}" == -* ]] && cstate=--disable - ebegin "Custom option ${copt#[-+]} ${cstate:2}d" - _menuselect ${cstate} "${copt#[-+]}" - eend $? - done - fi -} - -src_compile() { - emake "${_make_args[@]}" -} - -src_install() { - local d - - dodir "/usr/$(get_libdir)/pkgconfig" - - diropts -m 0750 -o root -g asterisk - dodir /etc/asterisk - - emake "${_make_args[@]}" install install-headers install-configs - - fowners asterisk: /var/lib/asterisk/astdb - - if use radius; then - insinto /etc/radiusclient/ - doins contrib/dictionary.digium - fi - - # keep directories - diropts -m 0750 -o asterisk -g root - keepdir /var/spool/asterisk/{system,tmp,meetme,monitor,dictate,voicemail,recording,outgoing} - diropts -m 0750 -o asterisk -g asterisk - keepdir /var/log/asterisk/{cdr-csv,cdr-custom} - - newsbin "${FILESDIR}/asterisk_wrapper-18.17.1-20.2.1" asterisk_wrapper - newinitd "${FILESDIR}"/initd-18.17.1-20.2.1 asterisk - newconfd "${FILESDIR}"/confd-16.26.1-18.12.1 asterisk - - systemd_dounit "${FILESDIR}"/asterisk.service - newtmpfiles "${FILESDIR}"/asterisk.tmpfiles-16.22.0-18.8.0.conf asterisk.conf - systemd_install_serviced "${FILESDIR}"/asterisk.service.conf - - # Reset diropts else dodoc uses it for doc installations. - diropts -m0755 - - # install the upgrade documentation - dodoc UPGRADE* BUGS CREDITS - - # install extra documentation - use doc && dodoc doc/*.{txt,pdf} - - # install logrotate snippet; bug #329281 - # - insinto /etc/logrotate.d - newins "${FILESDIR}/1.6.2/asterisk.logrotate4" asterisk - - # Asterisk installs a few folders that's empty by design, - # but still required. This finds them, and marks them for - # portage. - while read d <&3; do - keepdir "${d#${ED}}" - done 3< <(find "${ED}"/var -type d -empty || die "Find failed.") -} - -pkg_postinst() { - tmpfiles_process asterisk.conf - - if [ -z "${REPLACING_VERSIONS}" ]; then - elog "Asterisk Wiki: https://wiki.asterisk.org/wiki/" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - elif [ "$(ver_cut 1 "${REPLACING_VERSIONS}")" != "$(ver_cut 1)" ]; then - elog "You are updating from Asterisk $(ver_cut 1 "${REPLACING_VERSIONS}") upgrade document:" - elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - fi - - if use deprecated; then - ewarn "You really aught to port whatever code you have that depends on this since these are going to go away." - ewarn "Refer: https://wiki.asterisk.org/wiki/display/AST/Module+Deprecation" - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - ewarn "You are using GENTOO_ASTERISK_CUSTOM_MENUSELECT, this should only be used" - ewarn "for debugging, for anything else, please file a bug on https://bugs.gentoo.org" - fi - - if [[ -f /var/lib/asterisk/astdb.sqlite3 ]]; then - ewarn "Default astdb location has changed from /var/lib/asterisk to /var/lib/asterisk/astdb" - ewarn "You still have a /var/lib/asterisk/astdb.sqlite file. You need to either set" - ewarn "astdbdir in /etc/asterisk/asterisk.conf to /var/lib/asterisk or follow these" - ewarn "steps to migrate:" - ewarn "1. /etc/init.d/asterisk stop" - ewarn "2. mv /var/lib/asterisk/astdb.sqlite /var/lib/asterisk/astdb/" - ewarn "3. /etc/init.d/asterisk start" - ewarn "This update was done partly for security reasons so that /var/lib/asterisk can be root owned." - fi -} diff --git a/net-misc/asterisk/asterisk-18.18.1.ebuild b/net-misc/asterisk/asterisk-18.18.1.ebuild deleted file mode 100644 index 3f4247463485..000000000000 --- a/net-misc/asterisk/asterisk-18.18.1.ebuild +++ /dev/null @@ -1,363 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LUA_COMPAT=( lua5-{1..4} ) - -inherit autotools linux-info lua-single toolchain-funcs - -DESCRIPTION="Asterisk: A Modular Open Source PBX System" -HOMEPAGE="https://www.asterisk.org/" -SRC_URI="https://downloads.asterisk.org/pub/telephony/asterisk/releases/${P}.tar.gz" -LICENSE="GPL-2" -SLOT="0/${PV%%.*}" -KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86" - -IUSE_VOICEMAIL_STORAGE=( - voicemail_storage_odbc - voicemail_storage_imap -) -IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl dahdi debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc oss pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd syslog systemd unbound vorbis xmpp" -IUSE_EXPAND="VOICEMAIL_STORAGE" -REQUIRED_USE="gtalk? ( xmpp ) - lua? ( ${LUA_REQUIRED_USE} ) - voicemail_storage_odbc? ( odbc ) -" - -PATCHES=( - "${FILESDIR}/asterisk-16.16.2-no-var-run-install.patch" - "${FILESDIR}/asterisk-18.17.1-20.2.1-configure-fix-test-code-to-match-gethostbyname_r-pro.patch" -) - -DEPEND="acct-user/asterisk - acct-group/asterisk - dev-db/sqlite:3 - dev-libs/popt - >=dev-libs/jansson-2.11:= - dev-libs/libedit - dev-libs/libxml2:2 - dev-libs/libxslt - sys-apps/util-linux - sys-libs/zlib - virtual/libcrypt:= - alsa? ( media-libs/alsa-lib ) - bluetooth? ( net-wireless/bluez:= ) - calendar? ( - net-libs/neon:= - dev-libs/libical:= - dev-libs/iksemel - ) - caps? ( sys-libs/libcap ) - blocks? ( sys-libs/blocksruntime ) - cluster? ( sys-cluster/corosync ) - codec2? ( media-libs/codec2:= ) - curl? ( net-misc/curl ) - dahdi? ( - net-libs/libpri - net-misc/dahdi-tools - ) - freetds? ( dev-db/freetds ) - gtalk? ( dev-libs/iksemel ) - http? ( dev-libs/gmime:2.6 ) - iconv? ( virtual/libiconv ) - ilbc? ( media-libs/libilbc ) - ldap? ( net-nds/openldap:= ) - lua? ( ${LUA_DEPS} ) - mysql? ( dev-db/mysql-connector-c:= ) - newt? ( dev-libs/newt ) - odbc? ( dev-db/unixODBC ) - pjproject? ( >=net-libs/pjproject-2.12:= ) - portaudio? ( media-libs/portaudio ) - postgres? ( dev-db/postgresql:* ) - radius? ( net-dialup/freeradius-client ) - snmp? ( net-analyzer/net-snmp:= ) - span? ( media-libs/spandsp ) - speex? ( - media-libs/libogg - media-libs/speex - media-libs/speexdsp - ) - srtp? ( net-libs/libsrtp:0 ) - ssl? ( - dev-libs/openssl:0= - ) - systemd? ( sys-apps/systemd ) - !systemd? ( !sys-apps/systemd ) - unbound? ( net-dns/unbound ) - vorbis? ( - media-libs/libogg - media-libs/libvorbis - ) - voicemail_storage_imap? ( net-libs/c-client[ssl=] ) - xmpp? ( dev-libs/iksemel ) -" - -RDEPEND="${DEPEND} - net-misc/asterisk-core-sounds - net-misc/asterisk-extra-sounds - net-misc/asterisk-moh-opsound - selinux? ( sec-policy/selinux-asterisk ) - syslog? ( virtual/logger )" -PDEPEND="net-misc/asterisk-base" - -BDEPEND="dev-libs/libxml2:2 - virtual/pkgconfig" - -QA_DT_NEEDED="/usr/lib.*/libasteriskssl[.]so[.][0-9]\+" - -_make_args=( - "NOISY_BUILD=yes" - "ASTDBDIR=\$(ASTDATADIR)/astdb" - "ASTVARRUNDIR=/run/asterisk" - "ASTCACHEDIR=/var/cache/asterisk" - "OPTIMIZE=" - "DEBUG=" - "DESTDIR=${D}" - "CONFIG_SRC=configs/samples" - "CONFIG_EXTEN=.sample" - "AST_FORTIFY_SOURCE=" -) - -pkg_pretend() { - CONFIG_CHECK="~!NF_CONNTRACK_SIP" - local WARNING_NF_CONNTRACK_SIP="SIP (NAT) connection tracking is enabled. Some users - have reported that this module dropped critical SIP packets in their deployments. You - may want to disable it if you see such problems." - check_extra_config - - [[ "${MERGE_TYPE}" == binary ]] && return - - if tc-is-clang; then - use blocks || die "CC=clang requires USE=blocks" - else - use blocks && die "USE=blocks can only be used with CC=clang" - fi -} - -pkg_setup() { - use lua && lua-single_pkg_setup -} - -src_prepare() { - default - AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson" \ - AC_CONFIG_SUBDIRS=menuselect eautoreconf -} - -src_configure() { - local vmst - local copt cstate - - econf \ - LUA_VERSION="${ELUA#lua}" \ - --libdir="/usr/$(get_libdir)" \ - --localstatedir="/var" \ - --with-crypto \ - --with-gsm=internal \ - --with-popt \ - --with-z \ - --with-libedit \ - --without-jansson-bundled \ - --without-pjproject-bundled \ - $(use_with caps cap) \ - $(use_with codec2) \ - $(use_with lua lua) \ - $(use_with http gmime) \ - $(use_with newt) \ - $(use_with pjproject) \ - $(use_with portaudio) \ - $(use_with ssl) \ - $(use_with unbound) - - _menuselect() { - menuselect/menuselect "$@" || die "menuselect $* failed." - } - - _use_select() { - local state=$(use "$1" && echo enable || echo disable) - shift # remove use from parameters - - while [[ -n $1 ]]; do - _menuselect --${state} "$1" menuselect.makeopts - shift - done - } - - # Blank out sounds/sounds.xml file to prevent - # asterisk from installing sounds files (we pull them in via - # asterisk-{core,extra}-sounds and asterisk-moh-opsound. - >"${S}"/sounds/sounds.xml - - # That NATIVE_ARCH chatter really is quite bothersome - sed -i 's/NATIVE_ARCH=/NATIVE_ARCH=0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" - - # Compile menuselect binary for optional components - emake "${_make_args[@]}" menuselect.makeopts - - # Disable astdb2* tools. We've been on sqlite long enough - # that this should really no longer be a problem (bug #https://bugs.gentoo.org/872194) - _menuselect --disable astdb2sqlite3 menuselect.makeopts - _menuselect --disable astdb2bdb menuselect.makeopts - - # Disable BUILD_NATIVE (bug #667498) - _menuselect --disable build_native menuselect.makeopts - - # Broken functionality is forcibly disabled (bug #360143) - _menuselect --disable chan_misdn menuselect.makeopts - _menuselect --disable chan_ooh323 menuselect.makeopts - - # Utility set is forcibly enabled (bug #358001) - _menuselect --enable smsq menuselect.makeopts - _menuselect --enable streamplayer menuselect.makeopts - _menuselect --enable aelparse menuselect.makeopts - _menuselect --enable astman menuselect.makeopts - - # this is connected, otherwise it would not find - # ast_pktccops_gate_alloc symbol - _menuselect --enable chan_mgcp menuselect.makeopts - _menuselect --enable res_pktccops menuselect.makeopts - - # SSL is forcibly enabled, IAX2 & DUNDI are expected to be available - _menuselect --enable pbx_dundi menuselect.makeopts - _menuselect --enable func_aes menuselect.makeopts - _menuselect --enable chan_iax2 menuselect.makeopts - - # SQlite3 is now the main database backend, enable related features - _menuselect --enable cdr_sqlite3_custom menuselect.makeopts - _menuselect --enable cel_sqlite3_custom menuselect.makeopts - - # Disable conversion tools (which fails to compile in some cases). - _menuselect --disable astdb2bdb menuselect.makeopts - - # The others are based on USE-flag settings - _use_select alsa chan_alsa - _use_select bluetooth chan_mobile - _use_select calendar res_calendar res_calendar_{caldav,ews,exchange,icalendar} - _use_select cluster res_corosync - _use_select codec2 codec_codec2 - _use_select curl func_curl res_config_curl res_curl - _use_select dahdi app_dahdiras app_meetme chan_dahdi codec_dahdi res_timing_dahdi - _use_select deprecated app_macro - _use_select freetds {cdr,cel}_tds - _use_select gtalk chan_motif - _use_select http res_http_post - _use_select iconv func_iconv - _use_select ilbc codec_ilbc format_ilbc - _use_select ldap res_config_ldap - _use_select lua pbx_lua - _use_select mysql app_mysql cdr_mysql res_config_mysql - _use_select odbc cdr_adaptive_odbc res_config_odbc {cdr,cel,res,func}_odbc - _use_select oss chan_oss - _use_select postgres {cdr,cel}_pgsql res_config_pgsql - _use_select radius {cdr,cel}_radius - _use_select snmp res_snmp - _use_select span res_fax_spandsp - _use_select speex {codec,func}_speex - _use_select speex format_ogg_speex - _use_select srtp res_srtp - _use_select statsd res_statsd res_{endpoint,chan}_stats - _use_select syslog cdr_syslog - _use_select vorbis format_ogg_vorbis - _use_select xmpp res_xmpp - - # Voicemail storage ... - _menuselect --enable app_voicemail menuselect.makeopts - for vmst in "${IUSE_VOICEMAIL_STORAGE[@]}"; do - if use "${vmst#+}"; then - _menuselect --enable "app_voicemail_${vmst##*_}" menuselect.makeopts - fi - done - - if use debug; then - for o in DONT_OPTIMIZE DEBUG_FD_LEAKS MALLOC_DEBUG BETTER_BACKTRACES; do - _menuselect --enable "${o}" menuselect.makeopts - done - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - for copt in ${GENTOO_ASTERISK_CUSTOM_MENUSELECT}; do - cstate=--enable - [[ "${copt}" == -* ]] && cstate=--disable - ebegin "Custom option ${copt#[-+]} ${cstate:2}d" - _menuselect ${cstate} "${copt#[-+]}" - eend $? - done - fi -} - -src_compile() { - emake "${_make_args[@]}" -} - -src_install() { - local d - - dodir "/usr/$(get_libdir)/pkgconfig" - - diropts -m 0750 -o root -g asterisk - dodir /etc/asterisk - - emake "${_make_args[@]}" install install-headers install-configs - - fowners asterisk: /var/lib/asterisk/astdb - - if use radius; then - insinto /etc/radiusclient/ - doins contrib/dictionary.digium - fi - - # keep directories - diropts -m 0750 -o asterisk -g root - keepdir /var/spool/asterisk/{system,tmp,meetme,monitor,dictate,voicemail,recording,outgoing} - diropts -m 0750 -o asterisk -g asterisk - keepdir /var/log/asterisk/{cdr-csv,cdr-custom} - - # Reset diropts else dodoc uses it for doc installations. - diropts -m0755 - - # install the upgrade documentation - dodoc UPGRADE* BUGS CREDITS - - # install extra documentation - use doc && dodoc doc/*.{txt,pdf} - - # Asterisk installs a few folders that's empty by design, - # but still required. This finds them, and marks them for - # portage. - while read d <&3; do - keepdir "${d#${ED}}" - done 3< <(find "${ED}"/var -type d -empty || die "Find failed.") -} - -pkg_postinst() { - if [ -z "${REPLACING_VERSIONS}" ]; then - elog "Asterisk Wiki: https://wiki.asterisk.org/wiki/" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - elif [ "$(ver_cut 1 "${REPLACING_VERSIONS}")" != "$(ver_cut 1)" ]; then - elog "You are updating from Asterisk $(ver_cut 1 "${REPLACING_VERSIONS}") upgrade document:" - elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - fi - - if use deprecated; then - ewarn "You really aught to port whatever code you have that depends on this since these are going to go away." - ewarn "Refer: https://wiki.asterisk.org/wiki/display/AST/Module+Deprecation" - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - ewarn "You are using GENTOO_ASTERISK_CUSTOM_MENUSELECT, this should only be used" - ewarn "for debugging, for anything else, please file a bug on https://bugs.gentoo.org" - fi - - if [[ -f /var/lib/asterisk/astdb.sqlite3 ]]; then - ewarn "Default astdb location has changed from /var/lib/asterisk to /var/lib/asterisk/astdb" - ewarn "You still have a /var/lib/asterisk/astdb.sqlite file. You need to either set" - ewarn "astdbdir in /etc/asterisk/asterisk.conf to /var/lib/asterisk or follow these" - ewarn "steps to migrate:" - ewarn "1. /etc/init.d/asterisk stop" - ewarn "2. mv /var/lib/asterisk/astdb.sqlite /var/lib/asterisk/astdb/" - ewarn "3. /etc/init.d/asterisk start" - ewarn "This update was done partly for security reasons so that /var/lib/asterisk can be root owned." - fi -} diff --git a/net-misc/asterisk/asterisk-18.20.2.ebuild b/net-misc/asterisk/asterisk-18.24.1.ebuild index a16cf2d20212..369526ee8599 100644 --- a/net-misc/asterisk/asterisk-18.20.2.ebuild +++ b/net-misc/asterisk/asterisk-18.24.1.ebuild @@ -18,7 +18,7 @@ IUSE_VOICEMAIL_STORAGE=( voicemail_storage_odbc voicemail_storage_imap ) -IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl dahdi debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc oss pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd syslog systemd unbound vorbis xmpp" +IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc oss pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd syslog systemd unbound vorbis xmpp" IUSE_EXPAND="VOICEMAIL_STORAGE" REQUIRED_USE="gtalk? ( xmpp ) lua? ( ${LUA_REQUIRED_USE} ) @@ -52,10 +52,6 @@ DEPEND="acct-user/asterisk cluster? ( sys-cluster/corosync ) codec2? ( media-libs/codec2:= ) curl? ( net-misc/curl ) - dahdi? ( - net-libs/libpri - net-misc/dahdi-tools - ) freetds? ( dev-db/freetds ) gtalk? ( dev-libs/iksemel ) http? ( dev-libs/gmime:2.6 ) @@ -105,18 +101,21 @@ BDEPEND="dev-libs/libxml2:2 QA_DT_NEEDED="/usr/lib.*/libasteriskssl[.]so[.][0-9]\+" -_make_args=( - "NOISY_BUILD=yes" - "ASTDBDIR=\$(ASTDATADIR)/astdb" - "ASTVARRUNDIR=/run/asterisk" - "ASTCACHEDIR=/var/cache/asterisk" - "OPTIMIZE=" - "DEBUG=" - "DESTDIR=${D}" - "CONFIG_SRC=configs/samples" - "CONFIG_EXTEN=.sample" - "AST_FORTIFY_SOURCE=" -) +ast_make() { + local make_args=( + "NOISY_BUILD=yes" + "ASTDBDIR=\$(ASTDATADIR)/astdb" + "ASTVARRUNDIR=/run/asterisk" + "ASTCACHEDIR=/var/cache/asterisk" + "OPTIMIZE=" + "DEBUG=" + "CONFIG_SRC=configs/samples" + "CONFIG_EXTEN=.sample" + "AST_FORTIFY_SOURCE=" + ) + + emake "${make_args[@]}" "$@" +} pkg_pretend() { CONFIG_CHECK="~!NF_CONNTRACK_SIP" @@ -140,94 +139,94 @@ pkg_setup() { src_prepare() { default - AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson" \ + AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson third-party/libjwt" \ AC_CONFIG_SUBDIRS=menuselect eautoreconf } src_configure() { local vmst local copt cstate - - econf \ - LUA_VERSION="${ELUA#lua}" \ - --libdir="/usr/$(get_libdir)" \ - --localstatedir="/var" \ - --with-crypto \ - --with-gsm=internal \ - --with-popt \ - --with-z \ - --with-libedit \ - --without-jansson-bundled \ - --without-pjproject-bundled \ - $(use_with caps cap) \ - $(use_with codec2) \ - $(use_with lua lua) \ - $(use_with http gmime) \ - $(use_with newt) \ - $(use_with pjproject) \ - $(use_with portaudio) \ - $(use_with ssl) \ + local myconf=( + LUA_VERSION="${ELUA#lua}" + --localstatedir="/var" + --with-crypto + --with-gsm=internal + --with-popt + --with-z + --with-libedit + --without-jansson-bundled + --without-pjproject-bundled + $(use_with caps cap) + $(use_with codec2) + $(use_with lua lua) + $(use_with http gmime) + $(use_with newt) + $(use_with pjproject) + $(use_with portaudio) + $(use_with ssl) $(use_with unbound) + ) + econf "${myconf[@]}" - _menuselect() { - menuselect/menuselect "$@" || die "menuselect $* failed." + ast_menuselect() { + menuselect/menuselect "$@" menuselect.makeopts || die "menuselect $* failed." } _use_select() { local state=$(use "$1" && echo enable || echo disable) + local x shift # remove use from parameters - while [[ -n $1 ]]; do - _menuselect --${state} "$1" menuselect.makeopts - shift + for x; do + ast_menuselect --${state} "$x" done } # Blank out sounds/sounds.xml file to prevent # asterisk from installing sounds files (we pull them in via # asterisk-{core,extra}-sounds and asterisk-moh-opsound. - >"${S}"/sounds/sounds.xml + >sounds/sounds.xml || die "Unable to blank out sounds/sounds.xml" # That NATIVE_ARCH chatter really is quite bothersome - sed -i 's/NATIVE_ARCH=/NATIVE_ARCH=0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" + sed -i 's/NATIVE_ARCH=/&0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" # Compile menuselect binary for optional components - emake "${_make_args[@]}" menuselect.makeopts + ast_make menuselect.makeopts # Disable astdb2* tools. We've been on sqlite long enough # that this should really no longer be a problem (bug #https://bugs.gentoo.org/872194) - _menuselect --disable astdb2sqlite3 menuselect.makeopts - _menuselect --disable astdb2bdb menuselect.makeopts + ast_menuselect --disable astdb2sqlite3 + ast_menuselect --disable astdb2bdb # Disable BUILD_NATIVE (bug #667498) - _menuselect --disable build_native menuselect.makeopts + ast_menuselect --disable build_native # Broken functionality is forcibly disabled (bug #360143) - _menuselect --disable chan_misdn menuselect.makeopts - _menuselect --disable chan_ooh323 menuselect.makeopts + ast_menuselect --disable chan_misdn + ast_menuselect --disable chan_ooh323 # Utility set is forcibly enabled (bug #358001) - _menuselect --enable smsq menuselect.makeopts - _menuselect --enable streamplayer menuselect.makeopts - _menuselect --enable aelparse menuselect.makeopts - _menuselect --enable astman menuselect.makeopts + ast_menuselect --enable smsq + ast_menuselect --enable streamplayer + ast_menuselect --enable aelparse + ast_menuselect --enable astman # this is connected, otherwise it would not find # ast_pktccops_gate_alloc symbol - _menuselect --enable chan_mgcp menuselect.makeopts - _menuselect --enable res_pktccops menuselect.makeopts + ast_menuselect --enable chan_mgcp + ast_menuselect --enable res_pktccops # SSL is forcibly enabled, IAX2 & DUNDI are expected to be available - _menuselect --enable pbx_dundi menuselect.makeopts - _menuselect --enable func_aes menuselect.makeopts - _menuselect --enable chan_iax2 menuselect.makeopts + ast_menuselect --enable pbx_dundi + ast_menuselect --enable func_aes + ast_menuselect --enable chan_iax2 # SQlite3 is now the main database backend, enable related features - _menuselect --enable cdr_sqlite3_custom menuselect.makeopts - _menuselect --enable cel_sqlite3_custom menuselect.makeopts + ast_menuselect --enable cdr_sqlite3_custom + ast_menuselect --enable cel_sqlite3_custom # Disable conversion tools (which fails to compile in some cases). - _menuselect --disable astdb2bdb menuselect.makeopts + ast_menuselect --disable astdb2bdb # The others are based on USE-flag settings _use_select alsa chan_alsa @@ -236,7 +235,6 @@ src_configure() { _use_select cluster res_corosync _use_select codec2 codec_codec2 _use_select curl func_curl res_config_curl res_curl - _use_select dahdi app_dahdiras app_meetme chan_dahdi codec_dahdi res_timing_dahdi _use_select deprecated app_macro _use_select freetds {cdr,cel}_tds _use_select gtalk chan_motif @@ -261,16 +259,16 @@ src_configure() { _use_select xmpp res_xmpp # Voicemail storage ... - _menuselect --enable app_voicemail menuselect.makeopts + ast_menuselect --enable app_voicemail for vmst in "${IUSE_VOICEMAIL_STORAGE[@]}"; do if use "${vmst#+}"; then - _menuselect --enable "app_voicemail_${vmst##*_}" menuselect.makeopts + ast_menuselect --enable "app_voicemail_${vmst##*_}" fi done if use debug; then for o in DONT_OPTIMIZE DEBUG_FD_LEAKS MALLOC_DEBUG BETTER_BACKTRACES; do - _menuselect --enable "${o}" menuselect.makeopts + ast_menuselect --enable "${o}" done fi @@ -279,14 +277,14 @@ src_configure() { cstate=--enable [[ "${copt}" == -* ]] && cstate=--disable ebegin "Custom option ${copt#[-+]} ${cstate:2}d" - _menuselect ${cstate} "${copt#[-+]}" + ast_menuselect ${cstate} "${copt#[-+]}" eend $? done fi } src_compile() { - emake "${_make_args[@]}" + ast_make } src_install() { @@ -297,7 +295,7 @@ src_install() { diropts -m 0750 -o root -g asterisk dodir /etc/asterisk - emake "${_make_args[@]}" install install-headers install-configs + ast_make install install-headers install-configs "DESTDIR=${D}" fowners asterisk: /var/lib/asterisk/astdb @@ -316,7 +314,7 @@ src_install() { diropts -m0755 # install the upgrade documentation - dodoc UPGRADE* BUGS CREDITS + dodoc README* BUGS CREDITS # install extra documentation use doc && dodoc doc/*.{txt,pdf} @@ -330,13 +328,24 @@ src_install() { } pkg_postinst() { - if [ -z "${REPLACING_VERSIONS}" ]; then + if [[ -z "${REPLACING_VERSIONS}" ]]; then elog "Asterisk Wiki: https://wiki.asterisk.org/wiki/" elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - elif [ "$(ver_cut 1 "${REPLACING_VERSIONS}")" != "$(ver_cut 1)" ]; then - elog "You are updating from Asterisk $(ver_cut 1 "${REPLACING_VERSIONS}") upgrade document:" - elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" + else + local my_replacing=() x + for x in ${REPLACING_VERSIONS}; do + [[ $(ver_cut 1 ${x}) != $(ver_cut 1) ]] && + my_replacing+=( $(ver_cut 1 ${x}) ) + done + if [[ "${#my_replacing}" -gt 0 ]]; then + my_replacing="${my_replacing[*]}" + my_replacing="${my_replacing// /, }" + [[ "${my_replacing}" = *", "* ]] && + my_replacing="${my_replacing%, *} or ${my_replacing##*, }" + elog "You are updating from Asterisk ${my_replacing}, you should reference the upgrade document:" + elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" + elog "Assistance also available on Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" + fi fi if use deprecated; then diff --git a/net-misc/asterisk/asterisk-20.3.0.ebuild b/net-misc/asterisk/asterisk-20.3.0.ebuild deleted file mode 100644 index e4e12e12fba8..000000000000 --- a/net-misc/asterisk/asterisk-20.3.0.ebuild +++ /dev/null @@ -1,373 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LUA_COMPAT=( lua5-{1..4} ) - -inherit autotools linux-info lua-single systemd toolchain-funcs tmpfiles - -DESCRIPTION="Asterisk: A Modular Open Source PBX System" -HOMEPAGE="https://www.asterisk.org/" -SRC_URI="https://downloads.asterisk.org/pub/telephony/asterisk/releases/${P}.tar.gz" -LICENSE="GPL-2" -SLOT="0/${PV%%.*}" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" - -IUSE_VOICEMAIL_STORAGE=( - voicemail_storage_odbc - voicemail_storage_imap -) -IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl dahdi debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd systemd unbound vorbis xmpp" -IUSE_EXPAND="VOICEMAIL_STORAGE" -REQUIRED_USE="gtalk? ( xmpp ) - lua? ( ${LUA_REQUIRED_USE} ) - voicemail_storage_odbc? ( odbc ) -" - -PATCHES=( - "${FILESDIR}/asterisk-16.16.2-no-var-run-install.patch" - "${FILESDIR}/asterisk-18.17.1-20.2.1-configure-fix-test-code-to-match-gethostbyname_r-pro.patch" -) - -DEPEND="acct-user/asterisk - acct-group/asterisk - dev-db/sqlite:3 - dev-libs/popt - >=dev-libs/jansson-2.11:= - dev-libs/libedit - dev-libs/libxml2:2 - dev-libs/libxslt - sys-apps/util-linux - sys-libs/zlib - virtual/libcrypt:= - alsa? ( media-libs/alsa-lib ) - bluetooth? ( net-wireless/bluez:= ) - calendar? ( - net-libs/neon:= - dev-libs/libical:= - dev-libs/iksemel - ) - caps? ( sys-libs/libcap ) - blocks? ( sys-libs/blocksruntime ) - cluster? ( sys-cluster/corosync ) - codec2? ( media-libs/codec2:= ) - curl? ( net-misc/curl ) - dahdi? ( - net-libs/libpri - net-misc/dahdi-tools - ) - freetds? ( dev-db/freetds ) - gtalk? ( dev-libs/iksemel ) - http? ( dev-libs/gmime:2.6 ) - iconv? ( virtual/libiconv ) - ilbc? ( media-libs/libilbc ) - ldap? ( net-nds/openldap:= ) - lua? ( ${LUA_DEPS} ) - mysql? ( dev-db/mysql-connector-c:= ) - newt? ( dev-libs/newt ) - odbc? ( dev-db/unixODBC ) - pjproject? ( >=net-libs/pjproject-2.12:= ) - portaudio? ( media-libs/portaudio ) - postgres? ( dev-db/postgresql:* ) - radius? ( net-dialup/freeradius-client ) - snmp? ( net-analyzer/net-snmp:= ) - span? ( media-libs/spandsp ) - speex? ( - media-libs/libogg - media-libs/speex - media-libs/speexdsp - ) - srtp? ( net-libs/libsrtp:0 ) - ssl? ( - dev-libs/openssl:0= - ) - systemd? ( sys-apps/systemd ) - !systemd? ( !sys-apps/systemd ) - unbound? ( net-dns/unbound ) - vorbis? ( - media-libs/libogg - media-libs/libvorbis - ) - voicemail_storage_imap? ( net-libs/c-client[ssl=] ) - xmpp? ( dev-libs/iksemel ) -" - -RDEPEND="${DEPEND} - net-misc/asterisk-core-sounds - net-misc/asterisk-extra-sounds - net-misc/asterisk-moh-opsound - selinux? ( sec-policy/selinux-asterisk )" - -BDEPEND="dev-libs/libxml2:2 - virtual/pkgconfig" - -QA_DT_NEEDED="/usr/lib.*/libasteriskssl[.]so[.][0-9]\+" - -_make_args=( - "NOISY_BUILD=yes" - "ASTDBDIR=\$(ASTDATADIR)/astdb" - "ASTVARRUNDIR=/run/asterisk" - "ASTCACHEDIR=/var/cache/asterisk" - "OPTIMIZE=" - "DEBUG=" - "DESTDIR=${D}" - "CONFIG_SRC=configs/samples" - "CONFIG_EXTEN=.sample" - "AST_FORTIFY_SOURCE=" -) - -pkg_pretend() { - CONFIG_CHECK="~!NF_CONNTRACK_SIP" - local WARNING_NF_CONNTRACK_SIP="SIP (NAT) connection tracking is enabled. Some users - have reported that this module dropped critical SIP packets in their deployments. You - may want to disable it if you see such problems." - check_extra_config - - [[ "${MERGE_TYPE}" == binary ]] && return - - if tc-is-clang; then - use blocks || die "CC=clang requires USE=blocks" - else - use blocks && die "USE=blocks can only be used with CC=clang" - fi -} - -pkg_setup() { - use lua && lua-single_pkg_setup -} - -src_prepare() { - default - AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson" \ - AC_CONFIG_SUBDIRS=menuselect eautoreconf -} - -src_configure() { - local vmst - local copt cstate - - econf \ - LUA_VERSION="${ELUA#lua}" \ - --libdir="/usr/$(get_libdir)" \ - --localstatedir="/var" \ - --with-crypto \ - --with-gsm=internal \ - --with-popt \ - --with-z \ - --with-libedit \ - --without-jansson-bundled \ - --without-pjproject-bundled \ - $(use_with caps cap) \ - $(use_with codec2) \ - $(use_with lua lua) \ - $(use_with http gmime) \ - $(use_with newt) \ - $(use_with pjproject) \ - $(use_with portaudio) \ - $(use_with ssl) \ - $(use_with unbound) - - _menuselect() { - menuselect/menuselect "$@" || die "menuselect $* failed." - } - - _use_select() { - local state=$(use "$1" && echo enable || echo disable) - shift # remove use from parameters - - while [[ -n $1 ]]; do - _menuselect --${state} "$1" menuselect.makeopts - shift - done - } - - # Blank out sounds/sounds.xml file to prevent - # asterisk from installing sounds files (we pull them in via - # asterisk-{core,extra}-sounds and asterisk-moh-opsound. - >"${S}"/sounds/sounds.xml - - # That NATIVE_ARCH chatter really is quite bothersome - sed -i 's/NATIVE_ARCH=/NATIVE_ARCH=0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" - - # Compile menuselect binary for optional components - emake "${_make_args[@]}" menuselect.makeopts - - # Disable astdb2* tools. We've been on sqlite long enough - # that this should really no longer be a problem (bug #https://bugs.gentoo.org/872194) - _menuselect --disable astdb2sqlite3 menuselect.makeopts - _menuselect --disable astdb2bdb menuselect.makeopts - - # Disable BUILD_NATIVE (bug #667498) - _menuselect --disable build_native menuselect.makeopts - - # Broken functionality is forcibly disabled (bug #360143) - _menuselect --disable chan_ooh323 menuselect.makeopts - - # Utility set is forcibly enabled (bug #358001) - _menuselect --enable smsq menuselect.makeopts - _menuselect --enable streamplayer menuselect.makeopts - _menuselect --enable aelparse menuselect.makeopts - _menuselect --enable astman menuselect.makeopts - - # this is connected, otherwise it would not find - # ast_pktccops_gate_alloc symbol - _menuselect --enable chan_mgcp menuselect.makeopts - _menuselect --enable res_pktccops menuselect.makeopts - - # SSL is forcibly enabled, IAX2 & DUNDI are expected to be available - _menuselect --enable pbx_dundi menuselect.makeopts - _menuselect --enable func_aes menuselect.makeopts - _menuselect --enable chan_iax2 menuselect.makeopts - - # SQlite3 is now the main database backend, enable related features - _menuselect --enable cdr_sqlite3_custom menuselect.makeopts - _menuselect --enable cel_sqlite3_custom menuselect.makeopts - - # Disable conversion tools (which fails to compile in some cases). - _menuselect --disable astdb2bdb menuselect.makeopts - - # The others are based on USE-flag settings - _use_select alsa chan_alsa - _use_select bluetooth chan_mobile - _use_select calendar res_calendar res_calendar_{caldav,ews,exchange,icalendar} - _use_select cluster res_corosync - _use_select codec2 codec_codec2 - _use_select curl func_curl res_config_curl res_curl - _use_select dahdi app_meetme chan_dahdi codec_dahdi res_timing_dahdi - _use_select deprecated app_macro chan_sip res_monitor - _use_select freetds {cdr,cel}_tds - _use_select gtalk chan_motif - _use_select http res_http_post - _use_select iconv func_iconv - _use_select ilbc codec_ilbc format_ilbc - _use_select ldap res_config_ldap - _use_select lua pbx_lua - _use_select mysql res_config_mysql - _use_select odbc cdr_adaptive_odbc res_config_odbc {cdr,cel,res,func}_odbc - _use_select postgres {cdr,cel}_pgsql res_config_pgsql - _use_select radius {cdr,cel}_radius - _use_select snmp res_snmp - _use_select span res_fax_spandsp - _use_select speex {codec,func}_speex - _use_select speex format_ogg_speex - _use_select srtp res_srtp - _use_select statsd res_statsd res_{endpoint,chan}_stats - _use_select vorbis format_ogg_vorbis - _use_select xmpp res_xmpp - - # Voicemail storage ... - _menuselect --enable app_voicemail menuselect.makeopts - for vmst in "${IUSE_VOICEMAIL_STORAGE[@]}"; do - if use "${vmst#+}"; then - _menuselect --enable "app_voicemail_${vmst##*_}" menuselect.makeopts - fi - done - - if use debug; then - for o in DONT_OPTIMIZE DEBUG_FD_LEAKS MALLOC_DEBUG BETTER_BACKTRACES; do - _menuselect --enable "${o}" menuselect.makeopts - done - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - for copt in ${GENTOO_ASTERISK_CUSTOM_MENUSELECT}; do - cstate=--enable - [[ "${copt}" == -* ]] && cstate=--disable - ebegin "Custom option ${copt#[-+]} ${cstate:2}d" - _menuselect ${cstate} "${copt#[-+]}" - eend $? - done - fi -} - -src_compile() { - emake "${_make_args[@]}" -} - -src_install() { - local d - - dodir "/usr/$(get_libdir)/pkgconfig" - - diropts -m 0750 -o root -g asterisk - dodir /etc/asterisk - - emake "${_make_args[@]}" install install-headers install-configs - - fowners asterisk: /var/lib/asterisk/astdb - - if use radius; then - insinto /etc/radiusclient/ - doins contrib/dictionary.digium - fi - - # keep directories - diropts -m 0750 -o asterisk -g root - keepdir /var/spool/asterisk/{system,tmp,meetme,monitor,dictate,voicemail,recording,outgoing} - diropts -m 0750 -o asterisk -g asterisk - keepdir /var/log/asterisk/{cdr-csv,cdr-custom} - - newsbin "${FILESDIR}/asterisk_wrapper-18.17.1-20.2.1" asterisk_wrapper - newinitd "${FILESDIR}"/initd-18.17.1-20.2.1 asterisk - newconfd "${FILESDIR}"/confd-16.26.1-18.12.1 asterisk - - systemd_dounit "${FILESDIR}"/asterisk.service - newtmpfiles "${FILESDIR}"/asterisk.tmpfiles-16.22.0-18.8.0.conf asterisk.conf - systemd_install_serviced "${FILESDIR}"/asterisk.service.conf - - # Reset diropts else dodoc uses it for doc installations. - diropts -m0755 - - # install the upgrade documentation - dodoc UPGRADE* BUGS CREDITS - - # install extra documentation - use doc && dodoc doc/*.{txt,pdf} - - # install logrotate snippet; bug #329281 - # - insinto /etc/logrotate.d - newins "${FILESDIR}/1.6.2/asterisk.logrotate4" asterisk - - # Asterisk installs a few folders that's empty by design, - # but still required. This finds them, and marks them for - # portage. - while read d <&3; do - keepdir "${d#${ED}}" - done 3< <(find "${ED}"/var -type d -empty || die "Find failed.") -} - -pkg_postinst() { - tmpfiles_process asterisk.conf - - if [ -z "${REPLACING_VERSIONS}" ]; then - elog "Asterisk Wiki: https://wiki.asterisk.org/wiki/" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - elif [ "$(ver_cut 1 "${REPLACING_VERSIONS}")" != "$(ver_cut 1)" ]; then - elog "You are updating from Asterisk $(ver_cut 1 "${REPLACING_VERSIONS}") upgrade document:" - elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - fi - - if use deprecated; then - ewarn "You really aught to port whatever code you have that depends on this since these are going to go away." - ewarn "Refer: https://wiki.asterisk.org/wiki/display/AST/Module+Deprecation" - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - ewarn "You are using GENTOO_ASTERISK_CUSTOM_MENUSELECT, this should only be used" - ewarn "for debugging, for anything else, please file a bug on https://bugs.gentoo.org" - fi - - if [[ -f /var/lib/asterisk/astdb.sqlite3 ]]; then - ewarn "Default astdb location has changed from /var/lib/asterisk to /var/lib/asterisk/astdb" - ewarn "You still have a /var/lib/asterisk/astdb.sqlite file. You need to either set" - ewarn "astdbdir in /etc/asterisk/asterisk.conf to /var/lib/asterisk or follow these" - ewarn "steps to migrate:" - ewarn "1. /etc/init.d/asterisk stop" - ewarn "2. mv /var/lib/asterisk/astdb.sqlite /var/lib/asterisk/astdb/" - ewarn "3. /etc/init.d/asterisk start" - ewarn "This update was done partly for security reasons so that /var/lib/asterisk can be root owned." - fi -} diff --git a/net-misc/asterisk/asterisk-20.3.1.ebuild b/net-misc/asterisk/asterisk-20.3.1.ebuild deleted file mode 100644 index 080afa1dc8ea..000000000000 --- a/net-misc/asterisk/asterisk-20.3.1.ebuild +++ /dev/null @@ -1,359 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LUA_COMPAT=( lua5-{1..4} ) - -inherit autotools linux-info lua-single toolchain-funcs - -DESCRIPTION="Asterisk: A Modular Open Source PBX System" -HOMEPAGE="https://www.asterisk.org/" -SRC_URI="https://downloads.asterisk.org/pub/telephony/asterisk/releases/${P}.tar.gz" -LICENSE="GPL-2" -SLOT="0/${PV%%.*}" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86" - -IUSE_VOICEMAIL_STORAGE=( - voicemail_storage_odbc - voicemail_storage_imap -) -IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl dahdi debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd systemd unbound vorbis xmpp" -IUSE_EXPAND="VOICEMAIL_STORAGE" -REQUIRED_USE="gtalk? ( xmpp ) - lua? ( ${LUA_REQUIRED_USE} ) - voicemail_storage_odbc? ( odbc ) -" - -PATCHES=( - "${FILESDIR}/asterisk-16.16.2-no-var-run-install.patch" - "${FILESDIR}/asterisk-18.17.1-20.2.1-configure-fix-test-code-to-match-gethostbyname_r-pro.patch" -) - -DEPEND="acct-user/asterisk - acct-group/asterisk - dev-db/sqlite:3 - dev-libs/popt - >=dev-libs/jansson-2.11:= - dev-libs/libedit - dev-libs/libxml2:2 - dev-libs/libxslt - sys-apps/util-linux - sys-libs/zlib - virtual/libcrypt:= - alsa? ( media-libs/alsa-lib ) - bluetooth? ( net-wireless/bluez:= ) - calendar? ( - net-libs/neon:= - dev-libs/libical:= - dev-libs/iksemel - ) - caps? ( sys-libs/libcap ) - blocks? ( sys-libs/blocksruntime ) - cluster? ( sys-cluster/corosync ) - codec2? ( media-libs/codec2:= ) - curl? ( net-misc/curl ) - dahdi? ( - net-libs/libpri - net-misc/dahdi-tools - ) - freetds? ( dev-db/freetds ) - gtalk? ( dev-libs/iksemel ) - http? ( dev-libs/gmime:2.6 ) - iconv? ( virtual/libiconv ) - ilbc? ( media-libs/libilbc ) - ldap? ( net-nds/openldap:= ) - lua? ( ${LUA_DEPS} ) - mysql? ( dev-db/mysql-connector-c:= ) - newt? ( dev-libs/newt ) - odbc? ( dev-db/unixODBC ) - pjproject? ( >=net-libs/pjproject-2.12:= ) - portaudio? ( media-libs/portaudio ) - postgres? ( dev-db/postgresql:* ) - radius? ( net-dialup/freeradius-client ) - snmp? ( net-analyzer/net-snmp:= ) - span? ( media-libs/spandsp ) - speex? ( - media-libs/libogg - media-libs/speex - media-libs/speexdsp - ) - srtp? ( net-libs/libsrtp:0 ) - ssl? ( - dev-libs/openssl:0= - ) - systemd? ( sys-apps/systemd ) - !systemd? ( !sys-apps/systemd ) - unbound? ( net-dns/unbound ) - vorbis? ( - media-libs/libogg - media-libs/libvorbis - ) - voicemail_storage_imap? ( net-libs/c-client[ssl=] ) - xmpp? ( dev-libs/iksemel ) -" - -RDEPEND="${DEPEND} - net-misc/asterisk-core-sounds - net-misc/asterisk-extra-sounds - net-misc/asterisk-moh-opsound - selinux? ( sec-policy/selinux-asterisk )" -PDEPEND="net-misc/asterisk-base" - -BDEPEND="dev-libs/libxml2:2 - virtual/pkgconfig" - -QA_DT_NEEDED="/usr/lib.*/libasteriskssl[.]so[.][0-9]\+" - -_make_args=( - "NOISY_BUILD=yes" - "ASTDBDIR=\$(ASTDATADIR)/astdb" - "ASTVARRUNDIR=/run/asterisk" - "ASTCACHEDIR=/var/cache/asterisk" - "OPTIMIZE=" - "DEBUG=" - "DESTDIR=${D}" - "CONFIG_SRC=configs/samples" - "CONFIG_EXTEN=.sample" - "AST_FORTIFY_SOURCE=" -) - -pkg_pretend() { - CONFIG_CHECK="~!NF_CONNTRACK_SIP" - local WARNING_NF_CONNTRACK_SIP="SIP (NAT) connection tracking is enabled. Some users - have reported that this module dropped critical SIP packets in their deployments. You - may want to disable it if you see such problems." - check_extra_config - - [[ "${MERGE_TYPE}" == binary ]] && return - - if tc-is-clang; then - use blocks || die "CC=clang requires USE=blocks" - else - use blocks && die "USE=blocks can only be used with CC=clang" - fi -} - -pkg_setup() { - use lua && lua-single_pkg_setup -} - -src_prepare() { - default - AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson" \ - AC_CONFIG_SUBDIRS=menuselect eautoreconf -} - -src_configure() { - local vmst - local copt cstate - - econf \ - LUA_VERSION="${ELUA#lua}" \ - --libdir="/usr/$(get_libdir)" \ - --localstatedir="/var" \ - --with-crypto \ - --with-gsm=internal \ - --with-popt \ - --with-z \ - --with-libedit \ - --without-jansson-bundled \ - --without-pjproject-bundled \ - $(use_with caps cap) \ - $(use_with codec2) \ - $(use_with lua lua) \ - $(use_with http gmime) \ - $(use_with newt) \ - $(use_with pjproject) \ - $(use_with portaudio) \ - $(use_with ssl) \ - $(use_with unbound) - - _menuselect() { - menuselect/menuselect "$@" || die "menuselect $* failed." - } - - _use_select() { - local state=$(use "$1" && echo enable || echo disable) - shift # remove use from parameters - - while [[ -n $1 ]]; do - _menuselect --${state} "$1" menuselect.makeopts - shift - done - } - - # Blank out sounds/sounds.xml file to prevent - # asterisk from installing sounds files (we pull them in via - # asterisk-{core,extra}-sounds and asterisk-moh-opsound. - >"${S}"/sounds/sounds.xml - - # That NATIVE_ARCH chatter really is quite bothersome - sed -i 's/NATIVE_ARCH=/NATIVE_ARCH=0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" - - # Compile menuselect binary for optional components - emake "${_make_args[@]}" menuselect.makeopts - - # Disable astdb2* tools. We've been on sqlite long enough - # that this should really no longer be a problem (bug #https://bugs.gentoo.org/872194) - _menuselect --disable astdb2sqlite3 menuselect.makeopts - _menuselect --disable astdb2bdb menuselect.makeopts - - # Disable BUILD_NATIVE (bug #667498) - _menuselect --disable build_native menuselect.makeopts - - # Broken functionality is forcibly disabled (bug #360143) - _menuselect --disable chan_ooh323 menuselect.makeopts - - # Utility set is forcibly enabled (bug #358001) - _menuselect --enable smsq menuselect.makeopts - _menuselect --enable streamplayer menuselect.makeopts - _menuselect --enable aelparse menuselect.makeopts - _menuselect --enable astman menuselect.makeopts - - # this is connected, otherwise it would not find - # ast_pktccops_gate_alloc symbol - _menuselect --enable chan_mgcp menuselect.makeopts - _menuselect --enable res_pktccops menuselect.makeopts - - # SSL is forcibly enabled, IAX2 & DUNDI are expected to be available - _menuselect --enable pbx_dundi menuselect.makeopts - _menuselect --enable func_aes menuselect.makeopts - _menuselect --enable chan_iax2 menuselect.makeopts - - # SQlite3 is now the main database backend, enable related features - _menuselect --enable cdr_sqlite3_custom menuselect.makeopts - _menuselect --enable cel_sqlite3_custom menuselect.makeopts - - # Disable conversion tools (which fails to compile in some cases). - _menuselect --disable astdb2bdb menuselect.makeopts - - # The others are based on USE-flag settings - _use_select alsa chan_alsa - _use_select bluetooth chan_mobile - _use_select calendar res_calendar res_calendar_{caldav,ews,exchange,icalendar} - _use_select cluster res_corosync - _use_select codec2 codec_codec2 - _use_select curl func_curl res_config_curl res_curl - _use_select dahdi app_meetme chan_dahdi codec_dahdi res_timing_dahdi - _use_select deprecated app_macro chan_sip res_monitor - _use_select freetds {cdr,cel}_tds - _use_select gtalk chan_motif - _use_select http res_http_post - _use_select iconv func_iconv - _use_select ilbc codec_ilbc format_ilbc - _use_select ldap res_config_ldap - _use_select lua pbx_lua - _use_select mysql res_config_mysql - _use_select odbc cdr_adaptive_odbc res_config_odbc {cdr,cel,res,func}_odbc - _use_select postgres {cdr,cel}_pgsql res_config_pgsql - _use_select radius {cdr,cel}_radius - _use_select snmp res_snmp - _use_select span res_fax_spandsp - _use_select speex {codec,func}_speex - _use_select speex format_ogg_speex - _use_select srtp res_srtp - _use_select statsd res_statsd res_{endpoint,chan}_stats - _use_select vorbis format_ogg_vorbis - _use_select xmpp res_xmpp - - # Voicemail storage ... - _menuselect --enable app_voicemail menuselect.makeopts - for vmst in "${IUSE_VOICEMAIL_STORAGE[@]}"; do - if use "${vmst#+}"; then - _menuselect --enable "app_voicemail_${vmst##*_}" menuselect.makeopts - fi - done - - if use debug; then - for o in DONT_OPTIMIZE DEBUG_FD_LEAKS MALLOC_DEBUG BETTER_BACKTRACES; do - _menuselect --enable "${o}" menuselect.makeopts - done - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - for copt in ${GENTOO_ASTERISK_CUSTOM_MENUSELECT}; do - cstate=--enable - [[ "${copt}" == -* ]] && cstate=--disable - ebegin "Custom option ${copt#[-+]} ${cstate:2}d" - _menuselect ${cstate} "${copt#[-+]}" - eend $? - done - fi -} - -src_compile() { - emake "${_make_args[@]}" -} - -src_install() { - local d - - dodir "/usr/$(get_libdir)/pkgconfig" - - diropts -m 0750 -o root -g asterisk - dodir /etc/asterisk - - emake "${_make_args[@]}" install install-headers install-configs - - fowners asterisk: /var/lib/asterisk/astdb - - if use radius; then - insinto /etc/radiusclient/ - doins contrib/dictionary.digium - fi - - # keep directories - diropts -m 0750 -o asterisk -g root - keepdir /var/spool/asterisk/{system,tmp,meetme,monitor,dictate,voicemail,recording,outgoing} - diropts -m 0750 -o asterisk -g asterisk - keepdir /var/log/asterisk/{cdr-csv,cdr-custom} - - # Reset diropts else dodoc uses it for doc installations. - diropts -m0755 - - # install the upgrade documentation - dodoc UPGRADE* BUGS CREDITS - - # install extra documentation - use doc && dodoc doc/*.{txt,pdf} - - # Asterisk installs a few folders that's empty by design, - # but still required. This finds them, and marks them for - # portage. - while read d <&3; do - keepdir "${d#${ED}}" - done 3< <(find "${ED}"/var -type d -empty || die "Find failed.") -} - -pkg_postinst() { - if [ -z "${REPLACING_VERSIONS}" ]; then - elog "Asterisk Wiki: https://wiki.asterisk.org/wiki/" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - elif [ "$(ver_cut 1 "${REPLACING_VERSIONS}")" != "$(ver_cut 1)" ]; then - elog "You are updating from Asterisk $(ver_cut 1 "${REPLACING_VERSIONS}") upgrade document:" - elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - fi - - if use deprecated; then - ewarn "You really aught to port whatever code you have that depends on this since these are going to go away." - ewarn "Refer: https://wiki.asterisk.org/wiki/display/AST/Module+Deprecation" - fi - - if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then - ewarn "You are using GENTOO_ASTERISK_CUSTOM_MENUSELECT, this should only be used" - ewarn "for debugging, for anything else, please file a bug on https://bugs.gentoo.org" - fi - - if [[ -f /var/lib/asterisk/astdb.sqlite3 ]]; then - ewarn "Default astdb location has changed from /var/lib/asterisk to /var/lib/asterisk/astdb" - ewarn "You still have a /var/lib/asterisk/astdb.sqlite file. You need to either set" - ewarn "astdbdir in /etc/asterisk/asterisk.conf to /var/lib/asterisk or follow these" - ewarn "steps to migrate:" - ewarn "1. /etc/init.d/asterisk stop" - ewarn "2. mv /var/lib/asterisk/astdb.sqlite /var/lib/asterisk/astdb/" - ewarn "3. /etc/init.d/asterisk start" - ewarn "This update was done partly for security reasons so that /var/lib/asterisk can be root owned." - fi -} diff --git a/net-misc/asterisk/asterisk-20.5.2.ebuild b/net-misc/asterisk/asterisk-20.9.1.ebuild index 53593c91aac6..531c805dedc2 100644 --- a/net-misc/asterisk/asterisk-20.5.2.ebuild +++ b/net-misc/asterisk/asterisk-20.9.1.ebuild @@ -18,7 +18,7 @@ IUSE_VOICEMAIL_STORAGE=( voicemail_storage_odbc voicemail_storage_imap ) -IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl dahdi debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd systemd unbound vorbis xmpp" +IUSE="${IUSE_VOICEMAIL_STORAGE[*]} alsa blocks bluetooth calendar +caps cluster codec2 curl debug deprecated doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd systemd unbound vorbis xmpp" IUSE_EXPAND="VOICEMAIL_STORAGE" REQUIRED_USE="gtalk? ( xmpp ) lua? ( ${LUA_REQUIRED_USE} ) @@ -52,10 +52,6 @@ DEPEND="acct-user/asterisk cluster? ( sys-cluster/corosync ) codec2? ( media-libs/codec2:= ) curl? ( net-misc/curl ) - dahdi? ( - net-libs/libpri - net-misc/dahdi-tools - ) freetds? ( dev-db/freetds ) gtalk? ( dev-libs/iksemel ) http? ( dev-libs/gmime:2.6 ) @@ -104,18 +100,22 @@ BDEPEND="dev-libs/libxml2:2 QA_DT_NEEDED="/usr/lib.*/libasteriskssl[.]so[.][0-9]\+" -_make_args=( - "NOISY_BUILD=yes" - "ASTDBDIR=\$(ASTDATADIR)/astdb" - "ASTVARRUNDIR=/run/asterisk" - "ASTCACHEDIR=/var/cache/asterisk" - "OPTIMIZE=" - "DEBUG=" - "DESTDIR=${D}" - "CONFIG_SRC=configs/samples" - "CONFIG_EXTEN=.sample" - "AST_FORTIFY_SOURCE=" -) +ast_make() { + local make_args=( + "NOISY_BUILD=yes" + "ASTDBDIR=\$(ASTDATADIR)/astdb" + "ASTVARRUNDIR=/run/asterisk" + "ASTCACHEDIR=/var/cache/asterisk" + "OPTIMIZE=" + "DEBUG=" + "DESTDIR=${D}" + "CONFIG_SRC=configs/samples" + "CONFIG_EXTEN=.sample" + "AST_FORTIFY_SOURCE=" + ) + + emake "${make_args[@]}" "$@" +} pkg_pretend() { CONFIG_CHECK="~!NF_CONNTRACK_SIP" @@ -139,93 +139,93 @@ pkg_setup() { src_prepare() { default - AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson" \ + AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson third-party/libjwt" \ AC_CONFIG_SUBDIRS=menuselect eautoreconf } src_configure() { local vmst local copt cstate - - econf \ - LUA_VERSION="${ELUA#lua}" \ - --libdir="/usr/$(get_libdir)" \ - --localstatedir="/var" \ - --with-crypto \ - --with-gsm=internal \ - --with-popt \ - --with-z \ - --with-libedit \ - --without-jansson-bundled \ - --without-pjproject-bundled \ - $(use_with caps cap) \ - $(use_with codec2) \ - $(use_with lua lua) \ - $(use_with http gmime) \ - $(use_with newt) \ - $(use_with pjproject) \ - $(use_with portaudio) \ - $(use_with ssl) \ + local myconf=( + LUA_VERSION="${ELUA#lua}" + --localstatedir="/var" + --with-crypto + --with-gsm=internal + --with-popt + --with-z + --with-libedit + --without-jansson-bundled + --without-pjproject-bundled + $(use_with caps cap) + $(use_with codec2) + $(use_with lua lua) + $(use_with http gmime) + $(use_with newt) + $(use_with pjproject) + $(use_with portaudio) + $(use_with ssl) $(use_with unbound) + ) + econf "${myconf[@]}" - _menuselect() { - menuselect/menuselect "$@" || die "menuselect $* failed." + ast_menuselect() { + menuselect/menuselect "$@" menuselect.makeopts || die "menuselect $* failed." } _use_select() { local state=$(use "$1" && echo enable || echo disable) + local x shift # remove use from parameters - while [[ -n $1 ]]; do - _menuselect --${state} "$1" menuselect.makeopts - shift + for x; do + ast_menuselect --${state} "$x" done } # Blank out sounds/sounds.xml file to prevent # asterisk from installing sounds files (we pull them in via # asterisk-{core,extra}-sounds and asterisk-moh-opsound. - >"${S}"/sounds/sounds.xml + >sounds/sounds.xml || die "Unable to blank out sounds/sounds.xml" # That NATIVE_ARCH chatter really is quite bothersome - sed -i 's/NATIVE_ARCH=/NATIVE_ARCH=0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" + sed -i 's/NATIVE_ARCH=/&0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" # Compile menuselect binary for optional components emake "${_make_args[@]}" menuselect.makeopts # Disable astdb2* tools. We've been on sqlite long enough # that this should really no longer be a problem (bug #https://bugs.gentoo.org/872194) - _menuselect --disable astdb2sqlite3 menuselect.makeopts - _menuselect --disable astdb2bdb menuselect.makeopts + ast_menuselect --disable astdb2sqlite3 + ast_menuselect --disable astdb2bdb # Disable BUILD_NATIVE (bug #667498) - _menuselect --disable build_native menuselect.makeopts + ast_menuselect --disable build_native # Broken functionality is forcibly disabled (bug #360143) - _menuselect --disable chan_ooh323 menuselect.makeopts + ast_menuselect --disable chan_ooh323 # Utility set is forcibly enabled (bug #358001) - _menuselect --enable smsq menuselect.makeopts - _menuselect --enable streamplayer menuselect.makeopts - _menuselect --enable aelparse menuselect.makeopts - _menuselect --enable astman menuselect.makeopts + ast_menuselect --enable smsq + ast_menuselect --enable streamplayer + ast_menuselect --enable aelparse + ast_menuselect --enable astman # this is connected, otherwise it would not find # ast_pktccops_gate_alloc symbol - _menuselect --enable chan_mgcp menuselect.makeopts - _menuselect --enable res_pktccops menuselect.makeopts + ast_menuselect --enable chan_mgcp + ast_menuselect --enable res_pktccops # SSL is forcibly enabled, IAX2 & DUNDI are expected to be available - _menuselect --enable pbx_dundi menuselect.makeopts - _menuselect --enable func_aes menuselect.makeopts - _menuselect --enable chan_iax2 menuselect.makeopts + ast_menuselect --enable pbx_dundi + ast_menuselect --enable func_aes + ast_menuselect --enable chan_iax2 # SQlite3 is now the main database backend, enable related features - _menuselect --enable cdr_sqlite3_custom menuselect.makeopts - _menuselect --enable cel_sqlite3_custom menuselect.makeopts + ast_menuselect --enable cdr_sqlite3_custom + ast_menuselect --enable cel_sqlite3_custom # Disable conversion tools (which fails to compile in some cases). - _menuselect --disable astdb2bdb menuselect.makeopts + ast_menuselect --disable astdb2bdb # The others are based on USE-flag settings _use_select alsa chan_alsa @@ -234,7 +234,6 @@ src_configure() { _use_select cluster res_corosync _use_select codec2 codec_codec2 _use_select curl func_curl res_config_curl res_curl - _use_select dahdi app_meetme chan_dahdi codec_dahdi res_timing_dahdi _use_select deprecated app_macro chan_sip res_monitor _use_select freetds {cdr,cel}_tds _use_select gtalk chan_motif @@ -257,16 +256,16 @@ src_configure() { _use_select xmpp res_xmpp # Voicemail storage ... - _menuselect --enable app_voicemail menuselect.makeopts + ast_menuselect --enable app_voicemail for vmst in "${IUSE_VOICEMAIL_STORAGE[@]}"; do if use "${vmst#+}"; then - _menuselect --enable "app_voicemail_${vmst##*_}" menuselect.makeopts + ast_menuselect --enable "app_voicemail_${vmst##*_}" fi done if use debug; then for o in DONT_OPTIMIZE DEBUG_FD_LEAKS MALLOC_DEBUG BETTER_BACKTRACES; do - _menuselect --enable "${o}" menuselect.makeopts + ast_menuselect --enable "${o}" done fi @@ -275,14 +274,14 @@ src_configure() { cstate=--enable [[ "${copt}" == -* ]] && cstate=--disable ebegin "Custom option ${copt#[-+]} ${cstate:2}d" - _menuselect ${cstate} "${copt#[-+]}" + ast_menuselect ${cstate} "${copt#[-+]}" eend $? done fi } src_compile() { - emake "${_make_args[@]}" + ast_make } src_install() { @@ -293,7 +292,7 @@ src_install() { diropts -m 0750 -o root -g asterisk dodir /etc/asterisk - emake "${_make_args[@]}" install install-headers install-configs + ast_make install install-headers install-configs "DESTDIR=${D}" fowners asterisk: /var/lib/asterisk/astdb @@ -311,8 +310,7 @@ src_install() { # Reset diropts else dodoc uses it for doc installations. diropts -m0755 - # install the upgrade documentation - dodoc UPGRADE* BUGS CREDITS + dodoc README* BUGS CREDITS # install extra documentation use doc && dodoc doc/*.{txt,pdf} @@ -326,13 +324,24 @@ src_install() { } pkg_postinst() { - if [ -z "${REPLACING_VERSIONS}" ]; then + if [[ -z "${REPLACING_VERSIONS}" ]]; then elog "Asterisk Wiki: https://wiki.asterisk.org/wiki/" elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - elif [ "$(ver_cut 1 "${REPLACING_VERSIONS}")" != "$(ver_cut 1)" ]; then - elog "You are updating from Asterisk $(ver_cut 1 "${REPLACING_VERSIONS}") upgrade document:" - elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" + else + local my_replacing=() x + for x in ${REPLACING_VERSIONS}; do + [[ $(ver_cut 1 ${x}) != $(ver_cut 1) ]] && + my_replacing+=( $(ver_cut 1 ${x}) ) + done + if [[ "${#my_replacing}" -gt 0 ]]; then + my_replacing="${my_replacing[*]}" + my_replacing="${my_replacing// /, }" + [[ "${my_replacing}" = *", "* ]] && + my_replacing="${my_replacing%, *} or ${my_replacing##*, }" + elog "You are updating from Asterisk ${my_replacing}, you should reference the upgrade document:" + elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" + elog "Assistance also available on Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" + fi fi if use deprecated; then diff --git a/net-misc/asterisk/asterisk-21.0.2.ebuild b/net-misc/asterisk/asterisk-21.4.1.ebuild index b4ed5f80b54c..923c0b29641a 100644 --- a/net-misc/asterisk/asterisk-21.0.2.ebuild +++ b/net-misc/asterisk/asterisk-21.4.1.ebuild @@ -18,7 +18,7 @@ IUSE_VOICEMAIL_STORAGE=( voicemail_storage_odbc voicemail_storage_imap ) -IUSE="${IUSE_VOICEMAIL_STORAGE[*]} blocks bluetooth calendar +caps cluster codec2 curl dahdi debug doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd systemd unbound vorbis xmpp" +IUSE="${IUSE_VOICEMAIL_STORAGE[*]} blocks bluetooth calendar +caps cluster codec2 curl debug doc freetds gtalk http iconv ilbc ldap lua mysql newt odbc pjproject portaudio postgres radius selinux snmp span speex srtp +ssl static statsd systemd unbound vorbis xmpp" IUSE_EXPAND="VOICEMAIL_STORAGE" REQUIRED_USE="gtalk? ( xmpp ) lua? ( ${LUA_REQUIRED_USE} ) @@ -51,10 +51,6 @@ DEPEND="acct-user/asterisk cluster? ( sys-cluster/corosync ) codec2? ( media-libs/codec2:= ) curl? ( net-misc/curl ) - dahdi? ( - net-libs/libpri - net-misc/dahdi-tools - ) freetds? ( dev-db/freetds ) gtalk? ( dev-libs/iksemel ) http? ( dev-libs/gmime:2.6 ) @@ -103,18 +99,21 @@ BDEPEND="dev-libs/libxml2:2 QA_DT_NEEDED="/usr/lib.*/libasteriskssl[.]so[.][0-9]\+" -_make_args=( - "NOISY_BUILD=yes" - "ASTDBDIR=\$(ASTDATADIR)/astdb" - "ASTVARRUNDIR=/run/asterisk" - "ASTCACHEDIR=/var/cache/asterisk" - "OPTIMIZE=" - "DEBUG=" - "DESTDIR=${D}" - "CONFIG_SRC=configs/samples" - "CONFIG_EXTEN=.sample" - "AST_FORTIFY_SOURCE=" -) +ast_make() { + local make_args=( + "NOISY_BUILD=yes" + "ASTDBDIR=\$(ASTDATADIR)/astdb" + "ASTVARRUNDIR=/run/asterisk" + "ASTCACHEDIR=/var/cache/asterisk" + "OPTIMIZE=" + "DEBUG=" + "CONFIG_SRC=configs/samples" + "CONFIG_EXTEN=.sample" + "AST_FORTIFY_SOURCE=" + ) + + emake "${make_args[@]}" "$@" +} pkg_pretend() { CONFIG_CHECK="~!NF_CONNTRACK_SIP" @@ -138,17 +137,15 @@ pkg_setup() { src_prepare() { default - AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson" \ + AT_M4DIR="autoconf third-party third-party/pjproject third-party/jansson third-party/libjwt" \ AC_CONFIG_SUBDIRS=menuselect eautoreconf } src_configure() { local vmst local copt cstate - - econf \ + local myconf=( LUA_VERSION="${ELUA#lua}" \ - --libdir="/usr/$(get_libdir)" \ --localstatedir="/var" \ --with-crypto \ --with-gsm=internal \ @@ -166,60 +163,63 @@ src_configure() { $(use_with portaudio) \ $(use_with ssl) \ $(use_with unbound) + ) + + econf "${myconf[@]}" - _menuselect() { - menuselect/menuselect "$@" || die "menuselect $* failed." + ast_menuselect() { + menuselect/menuselect "$@" menuselect.makeopts || die "menuselect $* failed." } _use_select() { local state=$(use "$1" && echo enable || echo disable) + local x shift # remove use from parameters - while [[ -n $1 ]]; do - _menuselect --${state} "$1" menuselect.makeopts - shift + for x; do + ast_menuselect --${state} "$x" done } # Blank out sounds/sounds.xml file to prevent # asterisk from installing sounds files (we pull them in via # asterisk-{core,extra}-sounds and asterisk-moh-opsound. - >"${S}"/sounds/sounds.xml + >sounds/sounds.xml || die "Unable to blank out sounds/sounds.xml" # That NATIVE_ARCH chatter really is quite bothersome - sed -i 's/NATIVE_ARCH=/NATIVE_ARCH=0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" + sed -i 's/NATIVE_ARCH=/&0/' build_tools/menuselect-deps || die "Unable to squelch noisy build system" # Compile menuselect binary for optional components - emake "${_make_args[@]}" menuselect.makeopts + ast_make menuselect.makeopts # Disable astdb2* tools. We've been on sqlite long enough # that this should really no longer be a problem (bug #https://bugs.gentoo.org/872194) - _menuselect --disable astdb2sqlite3 menuselect.makeopts - _menuselect --disable astdb2bdb menuselect.makeopts + ast_menuselect --disable astdb2sqlite3 + ast_menuselect --disable astdb2bdb # Disable BUILD_NATIVE (bug #667498) - _menuselect --disable build_native menuselect.makeopts + ast_menuselect --disable build_native # Broken functionality is forcibly disabled (bug #360143) - _menuselect --disable chan_ooh323 menuselect.makeopts + ast_menuselect --disable chan_ooh323 # Utility set is forcibly enabled (bug #358001) - _menuselect --enable smsq menuselect.makeopts - _menuselect --enable streamplayer menuselect.makeopts - _menuselect --enable aelparse menuselect.makeopts - _menuselect --enable astman menuselect.makeopts + ast_menuselect --enable smsq + ast_menuselect --enable streamplayer + ast_menuselect --enable aelparse + ast_menuselect --enable astman # SSL is forcibly enabled, IAX2 & DUNDI are expected to be available - _menuselect --enable pbx_dundi menuselect.makeopts - _menuselect --enable func_aes menuselect.makeopts - _menuselect --enable chan_iax2 menuselect.makeopts + ast_menuselect --enable pbx_dundi + ast_menuselect --enable func_aes + ast_menuselect --enable chan_iax2 # SQlite3 is now the main database backend, enable related features - _menuselect --enable cdr_sqlite3_custom menuselect.makeopts - _menuselect --enable cel_sqlite3_custom menuselect.makeopts + ast_menuselect --enable cdr_sqlite3_custom + ast_menuselect --enable cel_sqlite3_custom # Disable conversion tools (which fails to compile in some cases). - _menuselect --disable astdb2bdb menuselect.makeopts + ast_menuselect --disable astdb2bdb # The others are based on USE-flag settings _use_select bluetooth chan_mobile @@ -227,7 +227,6 @@ src_configure() { _use_select cluster res_corosync _use_select codec2 codec_codec2 _use_select curl func_curl res_config_curl res_curl - _use_select dahdi app_meetme chan_dahdi codec_dahdi res_timing_dahdi _use_select freetds {cdr,cel}_tds _use_select gtalk chan_motif _use_select http res_http_post @@ -249,16 +248,16 @@ src_configure() { _use_select xmpp res_xmpp # Voicemail storage ... - _menuselect --enable app_voicemail menuselect.makeopts + ast_menuselect --enable app_voicemail for vmst in "${IUSE_VOICEMAIL_STORAGE[@]}"; do if use "${vmst#+}"; then - _menuselect --enable "app_voicemail_${vmst##*_}" menuselect.makeopts + ast_menuselect --enable "app_voicemail_${vmst##*_}" fi done if use debug; then for o in DONT_OPTIMIZE DEBUG_FD_LEAKS MALLOC_DEBUG BETTER_BACKTRACES; do - _menuselect --enable "${o}" menuselect.makeopts + ast_menuselect --enable "${o}" done fi @@ -267,14 +266,14 @@ src_configure() { cstate=--enable [[ "${copt}" == -* ]] && cstate=--disable ebegin "Custom option ${copt#[-+]} ${cstate:2}d" - _menuselect ${cstate} "${copt#[-+]}" + ast_menuselect ${cstate} "${copt#[-+]}" eend $? done fi } src_compile() { - emake "${_make_args[@]}" + ast_make } src_install() { @@ -285,7 +284,7 @@ src_install() { diropts -m 0750 -o root -g asterisk dodir /etc/asterisk - emake "${_make_args[@]}" install install-headers install-configs + ast_make install install-headers install-configs "DESTDIR=${D}" fowners asterisk: /var/lib/asterisk/astdb @@ -303,8 +302,7 @@ src_install() { # Reset diropts else dodoc uses it for doc installations. diropts -m0755 - # install the upgrade documentation - dodoc UPGRADE* BUGS CREDITS + dodoc README* BUGS CREDITS # install extra documentation use doc && dodoc doc/*.{txt,pdf} @@ -318,13 +316,24 @@ src_install() { } pkg_postinst() { - if [ -z "${REPLACING_VERSIONS}" ]; then + if [[ -z "${REPLACING_VERSIONS}" ]]; then elog "Asterisk Wiki: https://wiki.asterisk.org/wiki/" elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" - elif [ "$(ver_cut 1 "${REPLACING_VERSIONS}")" != "$(ver_cut 1)" ]; then - elog "You are updating from Asterisk $(ver_cut 1 "${REPLACING_VERSIONS}") upgrade document:" - elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" - elog "Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" + else + local my_replacing=() x + for x in ${REPLACING_VERSIONS}; do + [[ $(ver_cut 1 ${x}) != $(ver_cut 1) ]] && + my_replacing+=( $(ver_cut 1 ${x}) ) + done + if [[ "${#my_replacing}" -gt 0 ]]; then + my_replacing="${my_replacing[*]}" + my_replacing="${my_replacing// /, }" + [[ "${my_replacing}" = *", "* ]] && + my_replacing="${my_replacing%, *} or ${my_replacing##*, }" + elog "You are updating from Asterisk ${my_replacing}, you should reference the upgrade document:" + elog "https://wiki.asterisk.org/wiki/display/AST/Upgrading+to+Asterisk+$(ver_cut 1)" + elog "Assistance also available on Gentoo VoIP IRC Channel: #gentoo-voip @ irc.libera.chat" + fi fi if [[ -n "${GENTOO_ASTERISK_CUSTOM_MENUSELECT:+yes}" ]]; then diff --git a/net-misc/asterisk/files/1.6.2/asterisk.logrotate4 b/net-misc/asterisk/files/1.6.2/asterisk.logrotate4 deleted file mode 100644 index 29e78eb16064..000000000000 --- a/net-misc/asterisk/files/1.6.2/asterisk.logrotate4 +++ /dev/null @@ -1,27 +0,0 @@ -/var/log/asterisk/messages /var/log/asterisk/queue_log { - missingok - notifempty - - postrotate - test -e /run/openrc/softlevel && /etc/init.d/asterisk --quiet status && /usr/sbin/asterisk -rnx "logger reload" || /bin/true - test -e /run/systemd/system && systemctl is-active --quiet asterisk.service && /usr/sbin/asterisk -rnx "logger reload" || /bin/true - endscript -} - -/var/log/asterisk/debug /var/log/asterisk/full { - missingok - notifempty - daily - - postrotate - test -e /run/openrc/softlevel && /etc/init.d/asterisk --quiet status && /usr/sbin/asterisk -rnx "logger reload" || /bin/true - test -e /run/systemd/system && systemctl is-active --quiet asterisk.service && /usr/sbin/asterisk -rnx "logger reload" || /bin/true - endscript -} - -/var/log/asterisk/cdr-csv/*.csv /var/log/asterisk/cdr-custom/*.csv { - missingok - notifempty - weekly - rotate 52 -} diff --git a/net-misc/asterisk/files/asterisk-18.17.1-20.2.1-configure-fix-test-code-to-match-gethostbyname_r-pro.patch b/net-misc/asterisk/files/asterisk-18.17.1-20.2.1-configure-fix-test-code-to-match-gethostbyname_r-pro.patch deleted file mode 100644 index 540888368223..000000000000 --- a/net-misc/asterisk/files/asterisk-18.17.1-20.2.1-configure-fix-test-code-to-match-gethostbyname_r-pro.patch +++ /dev/null @@ -1,71 +0,0 @@ -From 79468a12c3533720c938731a8b7728ba4ff5a326 Mon Sep 17 00:00:00 2001 -From: Jaco Kroon <jaco@uls.co.za> -Date: Wed, 10 May 2023 23:13:17 +0200 -Subject: [PATCH] configure: fix test code to match gethostbyname_r prototype. - -This enables the test to work with CC=clang. - -Without this the test for 6 args would fail with: - -utils.c:99:12: error: static declaration of 'gethostbyname_r' follows non-static declaration -static int gethostbyname_r (const char *name, struct hostent *ret, char *buf, - ^ -/usr/include/netdb.h:177:12: note: previous declaration is here -extern int gethostbyname_r (const char *__restrict __name, - ^ - -Fixing the expected return type to int sorts this out. - -Signed-off-by: Jaco Kroon <jaco@uls.co.za> ---- - configure | 4 ++-- - configure.ac | 4 ++-- - 2 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/configure b/configure -index bf78e2aade..b046dfc755 100755 ---- a/configure -+++ b/configure -@@ -17537,7 +17537,7 @@ $as_echo_n "checking for gethostbyname_r with 6 arguments... " >&6; } - int - main () - { --struct hostent *he = gethostbyname_r((const char *)NULL, (struct hostent *)NULL, (char *)NULL, (int)0, (struct hostent **)NULL, (int *)NULL); -+int r = gethostbyname_r((const char *)NULL, (struct hostent *)NULL, (char *)NULL, (int)0, (struct hostent **)NULL, (int *)NULL); - ; - return 0; - } -@@ -17565,7 +17565,7 @@ $as_echo_n "checking for gethostbyname_r with 5 arguments... " >&6; } - int - main () - { --struct hostent *he = gethostbyname_r((const char *)NULL, (struct hostent *)NULL, (char *)NULL, (int)0, (int *)NULL); -+int r = gethostbyname_r((const char *)NULL, (struct hostent *)NULL, (char *)NULL, (int)0, (int *)NULL); - ; - return 0; - } -diff --git a/configure.ac b/configure.ac -index ab6632beac..aeec352054 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -962,7 +962,7 @@ if test "x$have_gethostbyname_r_public_declaration" = "xyes"; then - AC_LINK_IFELSE( - [AC_LANG_PROGRAM([#include <stdlib.h> - #include <netdb.h>], -- [struct hostent *he = gethostbyname_r((const char *)NULL, (struct hostent *)NULL, (char *)NULL, (int)0, (struct hostent **)NULL, (int *)NULL);])], -+ [int r = gethostbyname_r((const char *)NULL, (struct hostent *)NULL, (char *)NULL, (int)0, (struct hostent **)NULL, (int *)NULL);])], - AC_MSG_RESULT(yes) - AC_DEFINE([HAVE_GETHOSTBYNAME_R_6], 1, [Define to 1 if your system has gethostbyname_r with 6 arguments.]), - AC_MSG_RESULT(no) -@@ -972,7 +972,7 @@ if test "x$have_gethostbyname_r_public_declaration" = "xyes"; then - AC_LINK_IFELSE( - [AC_LANG_PROGRAM([#include <stdlib.h> - #include <netdb.h>], -- [struct hostent *he = gethostbyname_r((const char *)NULL, (struct hostent *)NULL, (char *)NULL, (int)0, (int *)NULL);])], -+ [int r = gethostbyname_r((const char *)NULL, (struct hostent *)NULL, (char *)NULL, (int)0, (int *)NULL);])], - AC_MSG_RESULT(yes) - AC_DEFINE([HAVE_GETHOSTBYNAME_R_5], 1, [Define to 1 if your system has gethostbyname_r with 5 arguments.]), - AC_MSG_RESULT(no) --- -2.39.3 - diff --git a/net-misc/asterisk/files/asterisk.service b/net-misc/asterisk/files/asterisk.service deleted file mode 100644 index 08245d9fe87f..000000000000 --- a/net-misc/asterisk/files/asterisk.service +++ /dev/null @@ -1,23 +0,0 @@ -[Unit] -Description=Asterisk PBX and telephony daemon. -After=network.target - -[Service] -Type=simple -WorkingDirectory=/var/lib/asterisk -User=asterisk -Group=asterisk -ExecStart=/usr/sbin/asterisk -f -C /etc/asterisk/asterisk.conf -ExecStop=/usr/sbin/asterisk -rx 'core stop now' -ExecReload=/usr/sbin/asterisk -rx 'core reload' - -LimitNOFILE=4096 -ProtectSystem=full -ProtectHome=yes -PrivateTmp=yes - -Restart=always -RestartSec=5 - -[Install] -WantedBy=multi-user.target diff --git a/net-misc/asterisk/files/asterisk.service.conf b/net-misc/asterisk/files/asterisk.service.conf deleted file mode 100644 index b7f83b71c5b0..000000000000 --- a/net-misc/asterisk/files/asterisk.service.conf +++ /dev/null @@ -1,11 +0,0 @@ -# Uncomment the following 7 lines to start asterisk with a console on tty7 -# -# Warning! Use only for debugging, this is a potential security issue! -# -# [Service] -# ExecStart= -# ExecStart=/usr/sbin/asterisk -f -c -C /etc/asterisk/asterisk.conf -# TTYPath=/dev/tty7 -# StandardInput=tty -# StandardOutput=tty -# StandardError=tty diff --git a/net-misc/asterisk/files/asterisk.tmpfiles-16.22.0-18.8.0.conf b/net-misc/asterisk/files/asterisk.tmpfiles-16.22.0-18.8.0.conf deleted file mode 100644 index 224d060a3c92..000000000000 --- a/net-misc/asterisk/files/asterisk.tmpfiles-16.22.0-18.8.0.conf +++ /dev/null @@ -1,2 +0,0 @@ -d /run/asterisk 0750 asterisk asterisk -d /var/cache/asterisk 0750 asterisk asterisk diff --git a/net-misc/asterisk/files/asterisk_wrapper-16.26.1-18.12.1 b/net-misc/asterisk/files/asterisk_wrapper-16.26.1-18.12.1 deleted file mode 100644 index 8624bfa3383e..000000000000 --- a/net-misc/asterisk/files/asterisk_wrapper-16.26.1-18.12.1 +++ /dev/null @@ -1,202 +0,0 @@ -#! /bin/bash -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -progname="$(basename "$0")" - -T="$(getopt -o "h" --long "help,corecompress:,corerename:,crashemail:,dumpcore:,instance:,maxfd:,nicelevel:,restartdelay:,rundir:,syslog,tty:" -n "$progname" -- "$@")" -eval set -- "${T}" - -rundir=/run/asterisk -restartdelay=5 -nicelevel=0 -maxfd=4096 -dumpcore=0 -unset tty instance syslog corecompress corerename crashemail - -function usage() { - cat <<USAGE -USAGE: $progname [options] -- asterisk options" -OPTIONS: - -h|--help - Output this text and exit. - --corecompress[=tool] - asterisk's address space can get quite large, compressing the core dumps can - save significant space, especially if asterisk core dumps frequently. - --corerename pattern - It's assumed core files (if enabled) will go into PWD, this specifies a - rename pattern. The following % codes are recognised: - %h - hostname - %D - date in format YYYYMMDD - %T - time in format HHMMSS - It must be mentioned that if kernel.core_pattern (sysctl) is modified - from the default 'core' value this option is unlikely to work. - --crashemail email@address - This will send an email whenver asterisk crashes (does not terminate - cleanly with a zero exit code). You need a working sendmail binary. - --dumpcore sizelimit - Maximum size of core limit, or the word unlimited. Default is disabled - (sizelimit of 0). - --instance name - Updated label for sylog logger. - --maxfd maxfd - Sets the maximum number of file descriptors (default 4096). - --nicelevel nicelevel - Will set the asterisk nice level to the specified value. - --restartdelay delay_in_seconds - Number of seconds to wait before attempting to restart asterisk. This helps - to avoid tight-loop crashes. Defaults to 5s. Minimum 1. - --rundir path - Where to store the asterisk asterisk_wrapper.pid file. In order to terminate the - wrapper (when asterisk next terminates), remove this file. - --syslog - Pass to redirect output to syslog rather than using stdout and stderr. - --tty tty - If asterisk should be attached to a TTY device, then pass this, eg --tty /dev/tty8. - Use of this is not recommended in general. - -NOTE: There are some quirks with bash getopt shunting non-options prior to -- - to asterisk options, so be careful of this. Typically stuff will break. -USAGE -} - -while [ "$1" != "--" ]; do - case "$1" in - --corecompress|--corerename|--crashemail|--dumpcore|--instance|--maxfd|--nicelevel|--restartdelay|--rundir|--tty) - eval "${1:2}=\"\${2}\"" - shift 2 - ;; - --syslog) - eval "${1:2}=1" - shift - ;; - --help|-h) - usage - exit 0 - ;; - *) - echo "BUG: Don't know how to process option $1." >&2 - usage >&2 - exit 1 - ;; - esac -done -shift # -- - -ast_opts=("$@") - -if ! [[ "${restartdelay}" =~ ^[1-9][0-9]*$ ]]; then - echo "Invalid --restartdelay value ${restartdelay}, resetting to 5." >&2 - restartdelay=5 -fi - -if [[ -n "${corecompress}" && ! -x "${corecompress}" ]]; then - corecompress=$(which "${corecompress}" 2>/dev/null) - [[ -z "${corecompress}" ]] && echo "Error locating core compression tool, disabling core compression." >&2 -fi - -# Before here will still be output (potentially munged, to the terminal). -if [[ -n "${syslog}" ]]; then - exec 1> >(logger -t "asterisk_wrapper${instance:+:}${instance}" &>/dev/null) - exec 2>&1 -fi - -echo "Initializing ${progname}" - -function cleanup(){ - # There is a tiny race here, if this gets replaced inbetween the read and the rm. - # To fix this is quite complex in that we need to keep an fd, compare inode numbers - # and manage flock's. - [[ -r "${rundir}/${progname}.pid" ]] && \ - [[ "$(<"${rundir}/${progname}.pid")" = $$ ]] && \ - rm "${rundir}/${progname}.pid" -} -trap cleanup EXIT - -# We could be clobbering an old version's pid, in which case it'll just terminate on -# it's next iteration. Towards this end, if asterisk.pid exists, attempt to find it's -# config file and request a core stop when convenient so that we can take over. -echo $$ > "${rundir}/${progname}.pid" -if [[ -r "${rundir}/asterisk.pid" ]]; then - ast_pid="$(<"${rundir}/asterisk.pid")" - [[ -r "/proc/${ast_pid}/cmdline" ]] && ast_conf="$(tr '\0' '\n' < "/proc/${ast_pid}/cmdline" | grep -A1 '^-C$' | tail -n1)" && /usr/sbin/asterisk -C "${ast_conf:-/etc/asterisk/asterisk.conf}" -rx "core stop when convenient" - # We may hit a few (depending on how busy the server is a great many number) loop failures still ... -fi - -ulimit -c "${dumpcore}" -ulimit -n "${maxfd}" - -ast_cmd=() -if [ -n "${nicelevel}" ]; then - ast_cmd+=(nice -n "${nicelevel}") -fi -ast_cmd+=(/usr/sbin/asterisk "${ast_opts[@]}") - -while [[ -r "${rundir}/${progname}.pid" ]]; do - # Another instance is looking to replace us, so terminate. - if [[ "$(<"${rundir}/${progname}.pid")" != $$ ]]; then - break - fi - - echo "Starting asterisk with ${ast_opts[*]}" - if [ -n "${tty+yes}" ]; then - /bin/stty -F "${tty}" sane - "${ast_cmd[@]}" >"${tty}" 2>&1 <"${tty}" - result=$? - else - # Purposefully leave stderr alone, this will under certain odd cases (like exceptions, - # and other odd cases logged from glibc) result in those logs at least being captured - # in syslog. - "${ast_cmd[@]}" </dev/null >/dev/null - result=$? - fi - - if [ "$result" -eq 0 ]; then - echo "Asterisk terminated normally." - break - fi - - if [ "$result" -gt 128 ]; then - signal="$(( result - 128 ))" - signame="$(kill -l $signal 2>/dev/null)" - MSG="Asterisk terminated with Signal: $signal (SIG${signame:-???})" - - # TODO: figure out how to use /proc/sys/kernel/core_pattern here, but if someone is using - # that, chances are they're already dealing with what we want here. - if [[ -r core ]]; then - if [[ -n "${corerename+yes}" ]]; then - core_target="${core_pattern}" - core_target="${core_target//%h/"$(hostname)"}" - core_target="${core_target//%D/"$(date +%Y%m%d)"}" - core_target="${core_target//%T/"$(date +%H%M%S)"}" - mv core "${core_target}" - core_target=$(readlink -f "${core_target}") - else - core_target=$(readlink -f core) - fi - - if [[ -n "${corecompress}" && -x "${corecompress}" ]]; then - "${corecompress}" "${core_target}" - # TODO: Figure out a way to tag the extension onto core_target. - fi - - MSG="${MSG}\r\nCore dumped: ${core_target}" - fi - else - MSG="Asterisk terminated with return code: $result" - fi - - [ -n "${tty+yes}" ] \ - && echo "${MSG}" >"${tty}" \ - || echo "${MSG}" - - if [[ -n "${crashemail+yes}" && -x /usr/sbin/sendmail ]]; then - echo -e -n "Subject: Asterisk crashed\r\n${MSG}\r\n" |\ - /usr/sbin/sendmail "${crashemail}" - fi - echo "Restarting asterisk after ${restartdelay}s ..." - sleep "${restartdelay}" -done - -echo "Terminating $progname." -exit 0 diff --git a/net-misc/asterisk/files/asterisk_wrapper-18.17.1-20.2.1 b/net-misc/asterisk/files/asterisk_wrapper-18.17.1-20.2.1 deleted file mode 100644 index 1a85eccf9b25..000000000000 --- a/net-misc/asterisk/files/asterisk_wrapper-18.17.1-20.2.1 +++ /dev/null @@ -1,227 +0,0 @@ -#! /bin/sh -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -progname="$(basename "$0")" - -T="$(getopt -o "h" --long "help,corecompress:,corerename:,crashemail:,dumpcore:,instance:,maxfd:,nicelevel:,restartdelay:,rundir:,syslog,tty:" -n "$progname" -- "$@")" -eval set -- "${T}" - -# bash builtins are special ... -echo_e="$([ "${SHELL}" = "/bin/bash" ] && echo "echo -e" || echo echo)" - -rundir=/run/asterisk -restartdelay=5 -nicelevel=0 -maxfd=4096 -dumpcore=0 -unset tty instance syslog corecompress corerename crashemail - -usage() { - cat <<USAGE -USAGE: $progname [options] -- asterisk options" -OPTIONS: - -h|--help - Output this text and exit. - --corecompress[=tool] - asterisk's address space can get quite large, compressing the core dumps can - save significant space, especially if asterisk core dumps frequently. - --corerename pattern - It's assumed core files (if enabled) will go into PWD, this specifies a - rename pattern. The following % codes are recognised: - %h - hostname - %D - date in format YYYYMMDD - %T - time in format HHMMSS - It must be mentioned that if kernel.core_pattern (sysctl) is modified - from the default 'core' value this option is unlikely to work. - --crashemail email@address - This will send an email whenver asterisk crashes (does not terminate - cleanly with a zero exit code). You need a working sendmail binary. - --dumpcore sizelimit - Maximum size of core limit, or the word unlimited. Default is disabled - (sizelimit of 0). - --instance name - Updated label for sylog logger. - --maxfd maxfd - Sets the maximum number of file descriptors (default 4096). - --nicelevel nicelevel - Will set the asterisk nice level to the specified value. - --restartdelay delay_in_seconds - Number of seconds to wait before attempting to restart asterisk. This helps - to avoid tight-loop crashes. Defaults to 5s. Minimum 1. - --rundir path - Where to store the asterisk asterisk_wrapper.pid file. In order to terminate the - wrapper (when asterisk next terminates), remove this file. - --syslog - Pass to redirect output to syslog rather than using stdout and stderr. - --tty tty - If asterisk should be attached to a TTY device, then pass this, eg --tty /dev/tty8. - Use of this is not recommended in general. - -NOTE: There are some quirks with bash getopt shunting non-options prior to -- - to asterisk options, so be careful of this. Typically stuff will break. -USAGE -} - -matchreg() { - local v=$1 - shift - echo "$v" | grep -q "$@" -} - -while [ "$1" != "--" ]; do - case "$1" in - --corecompress|--corerename|--crashemail|--dumpcore|--instance|--maxfd|--nicelevel|--restartdelay|--rundir|--tty) - eval "${1#--}=\"\${2}\"" - shift 2 - ;; - --syslog) - eval "${1#--}=1" - shift - ;; - --help|-h) - usage - exit 0 - ;; - *) - echo "BUG: Don't know how to process option $1." >&2 - usage >&2 - exit 1 - ;; - esac -done -shift # -- - -if ! matchreg "${restartdelay}" "^[1-9][0-9]*$"; then - echo "Invalid --restartdelay value ${restartdelay}, resetting to 5." >&2 - restartdelay=5 -fi - -if ! matchreg "${maxfd}" "^[1-9][0-9]*$"; then - echo "Invalid --maxfd value, resetting to 4096." >&2 - maxfd=4096 -fi - -if [ $maxfd -lt 1024 ]; then - echo "maxfd is guaranteed too low, bumping to at least 1024" >&2 - maxfd=1024 -fi - -if [ -n "${nicelevel}" ] && ! matchreg "${nicelevel}" -E "^-?[0-9]+$"; then - echo "Invalid --nicelevel which much be a valid integer (values from -20 to 20 makes sense)." - exit 1 -fi - -if [ -n "${corecompress}" -a ! -x "${corecompress}" ]; then - corecompress=$(which "${corecompress}" 2>/dev/null) - [ -z "${corecompress}" ] && echo "Error locating core compression tool, disabling core compression." >&2 -fi - -# Before here will still be output (potentially munged, to the terminal). -if [ -n "${syslog}" ]; then - tdir="$(mktemp -d)" - tfifo="${tdir}/asterisk_wrapper.logger.fifo" - mkfifo "${tfifo}" - logger -t "asterisk_wrapper${instance:+:}${instance}" --id=$$ >/dev/null 2>&1 <"${tfifo}" & - exec 1>"${tfifo}" - exec 2>&1 - - rm "${tfifo}" - rmdir "${tdir}" -fi - -echo "Initializing ${progname}" - -cleanup(){ - # There is a tiny race here, if this gets replaced inbetween the read and the rm. - # To fix this is quite complex in that we need to keep an fd, compare inode numbers - # and manage flock's. - [ -r "${rundir}/${progname}.pid" ] && \ - [ "$(cat "${rundir}/${progname}.pid")" = $$ ] && \ - rm "${rundir}/${progname}.pid" -} -trap cleanup EXIT - -# We could be clobbering an old version's pid, in which case it'll just terminate on -# it's next iteration. Towards this end, if asterisk.pid exists, attempt to find it's -# config file and request a core stop when convenient so that we can take over. -echo $$ > "${rundir}/${progname}.pid" -if [ -r "${rundir}/asterisk.pid" ]; then - ast_pid="$(cat "${rundir}/asterisk.pid")" - [ -r "/proc/${ast_pid}/cmdline" ] && ast_conf="$(tr '\0' '\n' < "/proc/${ast_pid}/cmdline" | grep -A1 '^-C$' | tail -n1)" && /usr/sbin/asterisk -C "${ast_conf:-/etc/asterisk/asterisk.conf}" -rx "core stop when convenient" - # We may hit a few (depending on how busy the server is a great many number) loop failures still ... -fi - -prlimit --core=${dumpcore} --pid=$$ -prlimit --nofile=${maxfd} --pid=$$ - -ast_cmd=/usr/sbin/asterisk -if [ -n "${nicelevel}" ]; then - ast_cmd="nice -n ${nicelevel} ${ast_cmd}" -fi - -while [ -r "${rundir}/${progname}.pid" ]; do - # Another instance is looking to replace us, so terminate. - if [ "$(cat "${rundir}/${progname}.pid")" != $$ ]; then - break - fi - - echo "Starting asterisk with ${ast_cmd} $*" - if [ -n "${tty+yes}" ]; then - /bin/stty -F "${tty}" sane - ${ast_cmd} "$@" >"${tty}" 2>&1 <"${tty}" - result=$? - else - # Purposefully leave stderr alone, this will under certain odd cases (like exceptions, - # and other odd cases logged from glibc) result in those logs at least being captured - # in syslog. - ${ast_cmd} "$@" </dev/null >/dev/null - result=$? - fi - - if [ "$result" -eq 0 ]; then - echo "Asterisk terminated normally." - break - fi - - if [ "$result" -gt 128 ]; then - signal="$(( result - 128 ))" - signame="$(kill -l $signal 2>/dev/null)" - MSG="Asterisk terminated with Signal: $signal (SIG${signame:-???})" - - # TODO: figure out how to use /proc/sys/kernel/core_pattern here, but if someone is using - # that, chances are they're already dealing with what we want here. - if [ -r core ]; then - if [ -n "${corerename+yes}" ]; then - core_target="$(echo "${core_pattern}" | sed -e "s/%h/$(hostname)/" \ - -e "s/%D/$(date +%Y%m%d)/" -e "s/%T/$(date +%H%M%S)/")" - mv core "${core_target}" - core_target=$(readlink -f "${core_target}") - else - core_target=$(readlink -f core) - fi - - if [ -n "${corecompress}" && -x "${corecompress}" ]; then - "${corecompress}" "${core_target}" - fi - - MSG="${MSG}\r\nCore dumped: ${core_target}" - fi - else - MSG="Asterisk terminated with return code: $result" - fi - - [ -n "${tty+yes}" ] \ - && echo "${MSG}" >"${tty}" \ - || echo "${MSG}" - - if [ -n "${crashemail+yes}" && -x /usr/sbin/sendmail ]; then - $echo_e -n "Subject: Asterisk crashed\r\n${MSG}\r\n" |\ - /usr/sbin/sendmail "${crashemail}" - fi - echo "Restarting asterisk after ${restartdelay}s ..." - sleep "${restartdelay}" -done - -echo "Terminating $progname." -exit 0 diff --git a/net-misc/asterisk/files/confd-16.26.1-18.12.1 b/net-misc/asterisk/files/confd-16.26.1-18.12.1 deleted file mode 100644 index c350b7e9161d..000000000000 --- a/net-misc/asterisk/files/confd-16.26.1-18.12.1 +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# -# Additional options for asterisk -# -# see "asterisk -h" for a list of options -# -# No default. -# -#ASTERISK_OPTS="" - -# -# User and group to run asterisk as -# -# Value: double-colon separated list of user and group, or empty to run as root: -# -# -# "asterisk:asterisk" to run as user "asterisk" and group "asterisk" -# "asterisk" to run as user "asterisk" and all groups that user "asterisk" is a member of -# ":asterisk" to run as user "root" and group "asterisk" -# -# Default: asterisk -# -#ASTERISK_USER="asterisk" - -# -# Nicelevel -# -# Set the priority of the asterisk process -# -# Value: (highest) -20..19 (lowest) -# -# No default (leave scheduling to be system default). -# -#ASTERISK_NICE="19" - -# Send crash notifications emails to this address -# (needs a working mail service and /usr/sbin/sendmail to do so (e.g. ssmtp)) -# -# Value: Email address or empty to disable -# -# No default. -# -#ASTERISK_NOTIFY_EMAIL="root" - -# -# Send asterisk's output to this terminal -# -# Value: Full path to device node or a number -# -# No default. -# -#ASTERISK_TTY="/dev/tty9" - -# -# Start an asterisk console on the terminal specified by ASTERISK_TTY -# -# Warning! Use only for debugging, this is a potential security issue! -# -# Value: yes/no -# -# Default: no -# -#ASTERISK_CONSOLE="no" - -# -# Maximum size of core files. -# -# Value: Size in bytes, unlimited for no limit or empty to disable. -# -# Default: do not generate core dumps -# -#ASTERISK_CORE_SIZE="unlimited" - -# -# ASTERISK_CORE_DIR -# -# Value: Directory (will be created if non-existant). -# -# Default: /tmp -# -#ASTERISK_CORE_DIR="/var/lib/asterisk/core" - -# -# Max number of filedescriptors. asterisk can trivially run out of -# descriptors. In most (SIP) cases it uses at least four descriptors per call, -# and this is a conservative value. -# -# Value: Number of descriptors -# -# Default: leave system default in place. -# -ASTERISK_MAX_FD="4096" - -# -# Delay time before restarting asterisk after a crash. -# -# Value: Number of seconds to sleep after a crash before restarting. -# -# Default: 5 -# -#ASTERISK_RESTART_DELAY=5 - -# -# The stop mechanism to use. Asterisk can do gracefully, when convenient or now. -# By default we expect you to want to stop as soon as possible, so we default -# -# Default: gracefully -# -#ASTERISK_STOP_METHOD="when convenient" - -# -# By default the init script waits two minutes for asterisk to stop. This allows -# you to change that, or even completely disable and go into wait for ever mode (-1). -# The value here is in seconds. -# -# Default: 120 -# -#ASTERISK_STOP_TIMEOUT=-1 - -# -# ASTERISK_CONFDIR -# -# If you'd like an alternative folder to /etc/${RC_SVCNAME} to be used -# (typically /etc/asterisk) to be used for configuration. -# -# Default: /etc/${RC_SVCNAME} -# -#ASTERISK_CONFDIR="/etc/foo/bar" - -# ASTERISK_CACHEDIR -# -# Value: Directory to which astcachedir in asterisk.conf is set. -# -# Default: /var/cache/asterisk -# -#ASTERISK_CACHEDIR="/var/cache/asterisk" - - -# -# Normally the init script will not wait for asterisk to fully boot. With this -# setting set to yes/true/1 it will issue a "core waitfullybooted" directly -# after starting asterisk, and wait for asterisk to start up completely. This -# is useful in certain conditions where other software requires asterisk to be -# properly started before they themselves can be started. -# -# Default: no -# -#ASTERISK_WAITBOOTED=yes - -# -# When core-dumping, the default was to generate core-$(date +%Y%m%d-%H%M%S). -# In certain highly unusual configurations it's helpful to also get the -# hostname into this filename. By enabling this option the wrapper loop will -# adjust the core file to be named core-$(hostname)-$(date ...). -# -# Default: no -# -#ASTERISK_CORE_USEHOSTNAME=yes - -# -# When core-dumping, the default is to not compress these files. However, as it turns -# out, compressing these core files can save significant amount of space, so if you -# want them compressed, specify the tool to use here. -# -# Default: do not compress -# -#ASTERISK_CORE_COMPRESS=bzip2 diff --git a/net-misc/asterisk/files/initd-16.26.1-18.12.1 b/net-misc/asterisk/files/initd-16.26.1-18.12.1 deleted file mode 100644 index cc6a3dee575b..000000000000 --- a/net-misc/asterisk/files/initd-16.26.1-18.12.1 +++ /dev/null @@ -1,309 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -extra_started_commands="forcestop reload" - -depend() { - need net - use nscd dns dahdi mysql postgresql slapd capi -} - -is_running() { - [ -r "${ast_rundir}/asterisk.pid" ] || return 1 - PID="$(cat "${ast_rundir}/asterisk.pid")" - [ -d "/proc/${PID}" ] || return 1 - EXE="$(readlink -f /proc/${PID}/exe)" - EXE="${EXE% (deleted)}" # in case asterisk got upgraded and we're still looking at an old one. - [ "${EXE}" = /usr/sbin/asterisk ] || return 1 # pid got re-used for another process. - - # PID reported in pidfile is active, and is still an asterisk instance. - return 0 -} - -# Sets up a few variables for us for use -# ast_instancename: eg, asterisk when RC_SVCNAME=asterisk, or asterisk(foo) when asterisk.foo. -# ast_rundir: directory to be used as run folder (pid and ctl files). -setup_svc_variables() -{ - local t - - ast_instancename=asterisk - ast_rundir=/run/${RC_SVCNAME} - ast_logdir=/var/log/${RC_SVCNAME} - ast_confdir=/etc/${RC_SVCNAME} - ast_cachedir=/var/cache/asterisk - ast_stop_timeout=120 - ast_stop_method="gracefully" - - if [ "${RC_SVCNAME}" != "asterisk" ]; then - t="${RC_SVCNAME#asterisk.}" - if [ "${RC_SVCNAME}" = "${t}" ]; then - eerror "Invalid SVCNAME of ${RC_SVCNAME}, must be of the format asterisk.name." - return 1 - fi - ast_instancename="${ast_instancename}(${t})" - fi - - [ -n "${ASTERISK_RUNDIR}" ] && ast_rundir="${ASTERISK_RUNDIR}" - [ -n "${ASTERISK_LOGDIR}" ] && ast_logdir="${ASTERISK_LOGDIR}" - [ -n "${ASTERISK_CONFDIR}" ] && ast_confdir="${ASTERISK_CONFDIR}" - [ -n "${ASTERISK_CACHEDIR}" ] && ast_confdir="${ASTERISK_CACHEDIR}" - [ -n "${ASTERISK_STOP_TIMEOUT}" ] && ast_stop_timeout="${ASTERISK_STOP_TIMEOUT}" - case "${ASTERISK_STOP_METHOD}" in - gracefully|when\ convenient|now) - ast_stop_method="${ASTERISK_STOP_METHOD}" - ;; - esac - ast_group= - if [ -n "${ASTERISK_USER}" ]; then - ast_user="${ASTERISK_USER%%:*}" - if [ "${ast_user}" != "${ASTERISK_USER}" ]; then - ast_group="${ASTERISK_USER#*:}" - ast_group="${ast_group%%:*}" - fi - fi - - [ -z "${ast_user}" ] && ast_user=asterisk - - ast_pgroup="$(getent group $(getent passwd "${ast_user}" | awk -F: '{ print $4 }') | sed -re 's/:.*//')" - - return 0 -} - -start() { - local OPTS PID - local tmp x - - local OPTS ARGS WRAPPER_OPTS - - setup_svc_variables || return $? - - ebegin "Starting ${ast_instancename} PBX" - - eindent - - # filter (redundant) arguments - OPTS="$(echo "${ASTERISK_OPTS}" | sed -re "s:-[cfF]::g")" - - # default options - OPTS="${OPTS}${OPTS:+ }-C ${ast_confdir}/asterisk.conf -f" # don't fork / detach breaks wrapper script... - - WRAPPER_OPTS="--syslog" - if [ "${RC_SVCNAME}" != "asterisk" ]; then - WRAPPER_OPTS="${WRAPPER_OPTS} --instance ${RC_SVCNAME#asterisk.}" - fi - WRAPPER_OPTS="${WRAPPER_OPTS} --rundir ${ast_rundir}" - - # ensure that ASTERISK_RESTART_DELAY is integer. - ASTERISK_RESTART_DELAY="$(echo "${ASTERISK_RESTART_DELAY}" | sed -re 's/^([0-9]*).*/\1/')" - [ -z "${ASTERISK_RESTART_DELAY}" ] && ASTERISK_RESTART_DELAY=5 - WRAPPER_OPTS="${WRAPPER_OPTS} --restartdelay ${ASTERISK_RESTART_DELAY}" - - if [ -n "${ASTERISK_CORE_SIZE}" ] && - [ "${ASTERISK_CORE_SIZE}" != "0" ]; then - WRAPPER_OPTS="${WRAPPER_OPTS} --dumpcore ${ASTERISK_CORE_SIZE}" - OPTS="${OPTS} -g" - - if [ -n "${ASTERISK_CORE_DIR}" ] && \ - [ ! -d "${ASTERISK_CORE_DIR}" ] - then - checkpath -d -m 0755 -o ${ast_user}:${ast_group} "${ASTERISK_CORE_DIR}" - fi - ASTERISK_CORE_DIR="${ASTERISK_CORE_DIR:-/tmp}" - - cd "${ASTERISK_CORE_DIR}" - einfo "Core dump size : ${ASTERISK_CORE_SIZE}" - einfo "Core dump location : ${ASTERISK_CORE_DIR}" - - if [ -n "${ASTERISK_CORE_COMPRESS}" ]; then - einfo "Core compression tool : ${ASTERISK_CORE_COMPRESS}" - WRAPPER_OPTS="${WRAPPER_OPTS} --corecompress ${ASTERISK_CORE_COMPRESS}" - fi - - if yesno "${ASTERISK_CORE_USEHOSTNAME}"; then - WRAPPER_OPTS="${WRAPPER_OPTS} --corerename core-%H-%D-%T" - else - WRAPPER_OPTS="${WRAPPER_OPTS} --corerename core-%D-%T" - fi - fi - - if [ -n "${ASTERISK_MAX_FD}" ]; then - WRAPPER_OPTS="${WRAPPER_OPTS} --maxfd ${ASTERISK_MAX_FD}" - einfo "Max open filedescriptors : ${ASTERISK_MAX_FD}" - fi - - if [ -n "${ASTERISK_NICE}" ]; then - if [ ${ASTERISK_NICE} -ge -20 ] && \ - [ ${ASTERISK_NICE} -le 19 ]; then - einfo "Nice level : ${ASTERISK_NICE}" - WRAPPER_OPTS="${WRAPPER_OPTS} --nicelevel ${ASTERISK_NICE}" - else - eerror "Nice value must be between -20 and 19" - return 1 - fi - fi - - if [ -n "${ASTERISK_NOTIFY_EMAIL}" ]; then - if [ -x /usr/sbin/sendmail ]; then - einfo "Email notifications go to : ${ASTERISK_NOTIFY_EMAIL}" - WRAPPER_OPTS="${WRAPPER_OPTS} --crashemail ${ASTERISK_NOTIFY_EMAIL}" - else - ewarn "Notifications disabled, /usr/sbin/sendmail doesn't exist or is not executable!" - fi - fi - - if [ -n "${ASTERISK_TTY}" ]; then - for x in "${ASTERISK_TTY}" \ - "/dev/tty${ASTERISK_TTY}" \ - "/dev/vc/${ASTERISK_TTY}" - do - if [ -c "${x}" ]; then - TTY="${x}" - fi - done - if [ -n "${TTY}" ]; then - einfo "Messages are sent to : ${TTY}" - WRAPPER_OPTS="${WRAPPER_OPTS} --tty ${TTY}" - else - ewarn "ASTERISK_TTY=${TTY} ignored, not valid." - fi - fi - - if yesno "${ASTERISK_CONSOLE}" && [ -n "${TTY}" ]; then - einfo "Starting Asterisk console : Yes" - OPTS="${OPTS} -c" - fi - - if ! getent passwd "${ast_user}" >/dev/null 2>&1; then - eerror "Requested to run asterisk as ${ast_user}, which doesn't exist." - return 1 - fi - OPTS="${OPTS} -U ${ast_user}" - - if [ -n "${ast_group}" ] && ! getent group "${ast_group}" >/dev/null 2>&1; then - eerror "Requested to run ${ast_instancename} with group ${ast_group}, which doesn't exist." - return 1 - fi - [ -n "${ast_group}" ] && OPTS="${OPTS} -G ${ast_group}" - - if [ "${ast_user}" = root ]; then - ewarn "Starting asterisk as root is not recommended (SERIOUS SECURITY CONSIDERATIONS)." - elif [ "${ast_group}" = root ]; then - ewarn "Starting asterisk with group root is not recommended (SERIOUS SECURITY CONSIDERATIONS)." - fi - - checkpath -d -m 0755 -o "${ast_user}:${ast_group}" "${ast_logdir}" "${ast_rundir}" - checkpath -d -m 0750 -o "${ast_user}:${ast_group}" "${ast_cachedir}" - - einfo "Starting asterisk as : ${ast_user}:${ast_group:-${ast_pgroup} (+supplementaries)}" - einfo "Wrapper options : ${WRAPPER_OPTS}" - einfo "Asterisk options : ${OPTS}" - - /usr/sbin/asterisk_wrapper ${WRAPPER_OPTS} -- ${OPTS} & - result=$? - - if [ $result -eq 0 ]; then - # 2 seconds should be enough for asterisk to start - sleep 2 - is_running - result=$? - - [ $result -eq 0 ] || wrapperstop - fi - - eoutdent - eend $result - - if [ $result -eq 0 ] && yesno "${ASTERISK_WAITBOOTED}"; then - if [ ! -r "${ast_rundir}/asterisk.ctl" ]; then - # asterisk can crash during startup ... - ebegin "Waiting for ctl file to appear" - while is_running && [ ! -r "${ast_rundir}/asterisk.ctl" ]; do - sleep 1 - done - is_running - result=$? - eend $result - fi - if [ $result -eq 0 ]; then - ebegin "Waiting for ${ast_instancename} to fully boot" - /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "core waitfullybooted" >/dev/null 2>&1 - eend $? - fi - fi - - return $result -} - -wrapperstop() { - # Older path. - if [ -r "${ast_rundir}/wrapper_loop.running" ]; then - ebegin "Signalling ${ast_instancename} wrapper script to terminate" - rm "${ast_rundir}/wrapper_loop.running" - eend $? - fi - - if [ -r "${ast_rundir}/asterisk_wrapper.pid" ]; then - ebegin "Signalling ${ast_instancename} wrapper script to terminate" - rm "${ast_rundir}/asterisk_wrapper.pid" - eend $? - fi - - return 0 -} - -forcestop() { - setup_svc_variables || return $? - - # Just to be sure - when we want to forcestop we should make it all tear down. - wrapperstop - - ebegin "Stopping ${ast_instancename} PBX" - start-stop-daemon --stop --pidfile /run/asterisk/asterisk.pid - eend $? -} - -stop() { - setup_svc_variables || return $? - - wrapperstop - - if ! is_running; then - eerror "${ast_instancename} is not running!" - return 0 - fi - - ebegin "Stopping ${ast_instancename} PBX ${ast_stop_method}" - /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "core stop ${ast_stop_method}" >/dev/null 2>&1 - # Now we have to wait until asterisk has _really_ stopped. - sleep 1 - if is_running; then - einfon "Waiting for ${ast_instancename} to shutdown ." - local cnt=0 - while is_running; do - cnt="$(expr $cnt + 2)" - if [ ${ast_stop_timeout} -gt 0 -a $cnt -gt ${ast_stop_timeout} ] ; then - echo - eend 1 "Failed waiting for ${ast_instancename} to stop." - return 1 - fi - sleep 2 - printf "." - done - echo - fi - eend 0 -} - -reload() { - setup_svc_variables || return $? - - if is_running; then - ebegin "Requesting ${ast_instancename} to reload configuration" - /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "module reload" >/dev/null 2>&1 - eend $? - else - eerror "${ast_instancename} is not running!" - fi -} diff --git a/net-misc/asterisk/files/initd-18.17.1-20.2.1 b/net-misc/asterisk/files/initd-18.17.1-20.2.1 deleted file mode 100644 index 7d48b36456bf..000000000000 --- a/net-misc/asterisk/files/initd-18.17.1-20.2.1 +++ /dev/null @@ -1,311 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -extra_started_commands="forcestop reload" - -depend() { - need net - use nscd dns dahdi mysql postgresql slapd capi -} - -is_running() { - [ -r "${ast_rundir}/asterisk.pid" ] || return 1 - PID="$(cat "${ast_rundir}/asterisk.pid")" - [ -d "/proc/${PID}" ] || return 1 - EXE="$(readlink -f /proc/${PID}/exe)" - EXE="${EXE% (deleted)}" # in case asterisk got upgraded and we're still looking at an old one. - [ "${EXE}" = /usr/sbin/asterisk ] || return 1 # pid got re-used for another process. - - # PID reported in pidfile is active, and is still an asterisk instance. - return 0 -} - -# Sets up a few variables for us for use -# ast_instancename: eg, asterisk when RC_SVCNAME=asterisk, or asterisk(foo) when asterisk.foo. -# ast_rundir: directory to be used as run folder (pid and ctl files). -setup_svc_variables() -{ - local t - - ast_instancename=asterisk - ast_rundir=/run/${RC_SVCNAME} - ast_logdir=/var/log/${RC_SVCNAME} - ast_confdir=/etc/${RC_SVCNAME} - ast_cachedir=/var/cache/asterisk - ast_stop_timeout=120 - ast_stop_method="gracefully" - - if [ "${RC_SVCNAME}" != "asterisk" ]; then - t="${RC_SVCNAME#asterisk.}" - if [ "${RC_SVCNAME}" = "${t}" ]; then - eerror "Invalid SVCNAME of ${RC_SVCNAME}, must be of the format asterisk.name." - return 1 - fi - ast_instancename="${ast_instancename}(${t})" - fi - - [ -n "${ASTERISK_RUNDIR}" ] && ast_rundir="${ASTERISK_RUNDIR}" - [ -n "${ASTERISK_LOGDIR}" ] && ast_logdir="${ASTERISK_LOGDIR}" - [ -n "${ASTERISK_CONFDIR}" ] && ast_confdir="${ASTERISK_CONFDIR}" - [ -n "${ASTERISK_CACHEDIR}" ] && ast_confdir="${ASTERISK_CACHEDIR}" - [ -n "${ASTERISK_STOP_TIMEOUT}" ] && ast_stop_timeout="${ASTERISK_STOP_TIMEOUT}" - case "${ASTERISK_STOP_METHOD}" in - gracefully|when\ convenient|now) - ast_stop_method="${ASTERISK_STOP_METHOD}" - ;; - esac - ast_group= - if [ -n "${ASTERISK_USER}" ]; then - ast_user="${ASTERISK_USER%%:*}" - if [ "${ast_user}" != "${ASTERISK_USER}" ]; then - ast_group="${ASTERISK_USER#*:}" - ast_group="${ast_group%%:*}" - fi - fi - - [ -z "${ast_user}" ] && ast_user=asterisk - - ast_pgroup="$(getent group $(getent passwd "${ast_user}" | awk -F: '{ print $4 }') | sed -re 's/:.*//')" - - return 0 -} - -start() { - local OPTS PID - local tmp x - - local OPTS ARGS WRAPPER_OPTS - - setup_svc_variables || return $? - - ebegin "Starting ${ast_instancename} PBX" - - eindent - - # filter (redundant) arguments - OPTS="$(echo "${ASTERISK_OPTS}" | sed -re "s:-[cfF]::g")" - - # default options - OPTS="${OPTS}${OPTS:+ }-C ${ast_confdir}/asterisk.conf -f" # don't fork / detach breaks wrapper script... - - WRAPPER_OPTS="--syslog" - if [ "${RC_SVCNAME}" != "asterisk" ]; then - WRAPPER_OPTS="${WRAPPER_OPTS} --instance ${RC_SVCNAME#asterisk.}" - fi - WRAPPER_OPTS="${WRAPPER_OPTS} --rundir ${ast_rundir}" - - # ensure that ASTERISK_RESTART_DELAY is integer. - ASTERISK_RESTART_DELAY="$(echo "${ASTERISK_RESTART_DELAY}" | sed -re 's/^([0-9]*).*/\1/')" - [ -z "${ASTERISK_RESTART_DELAY}" ] && ASTERISK_RESTART_DELAY=5 - WRAPPER_OPTS="${WRAPPER_OPTS} --restartdelay ${ASTERISK_RESTART_DELAY}" - - if [ -n "${ASTERISK_CORE_SIZE}" ] && - [ "${ASTERISK_CORE_SIZE}" != "0" ]; then - WRAPPER_OPTS="${WRAPPER_OPTS} --dumpcore ${ASTERISK_CORE_SIZE}" - OPTS="${OPTS} -g" - - if [ -n "${ASTERISK_CORE_DIR}" ] && \ - [ ! -d "${ASTERISK_CORE_DIR}" ] - then - checkpath -d -m 0755 -o ${ast_user}:${ast_group} "${ASTERISK_CORE_DIR}" - fi - ASTERISK_CORE_DIR="${ASTERISK_CORE_DIR:-/tmp}" - - cd "${ASTERISK_CORE_DIR}" - einfo "Core dump size : ${ASTERISK_CORE_SIZE}" - einfo "Core dump location : ${ASTERISK_CORE_DIR}" - - if [ -n "${ASTERISK_CORE_COMPRESS}" ]; then - einfo "Core compression tool : ${ASTERISK_CORE_COMPRESS}" - WRAPPER_OPTS="${WRAPPER_OPTS} --corecompress ${ASTERISK_CORE_COMPRESS}" - fi - - if yesno "${ASTERISK_CORE_USEHOSTNAME}"; then - WRAPPER_OPTS="${WRAPPER_OPTS} --corerename core-%H-%D-%T" - else - WRAPPER_OPTS="${WRAPPER_OPTS} --corerename core-%D-%T" - fi - else - cd / - fi - - if [ -n "${ASTERISK_MAX_FD}" ]; then - WRAPPER_OPTS="${WRAPPER_OPTS} --maxfd ${ASTERISK_MAX_FD}" - einfo "Max open filedescriptors : ${ASTERISK_MAX_FD}" - fi - - if [ -n "${ASTERISK_NICE}" ]; then - if [ ${ASTERISK_NICE} -ge -20 ] && \ - [ ${ASTERISK_NICE} -le 19 ]; then - einfo "Nice level : ${ASTERISK_NICE}" - WRAPPER_OPTS="${WRAPPER_OPTS} --nicelevel ${ASTERISK_NICE}" - else - eerror "Nice value must be between -20 and 19" - return 1 - fi - fi - - if [ -n "${ASTERISK_NOTIFY_EMAIL}" ]; then - if [ -x /usr/sbin/sendmail ]; then - einfo "Email notifications go to : ${ASTERISK_NOTIFY_EMAIL}" - WRAPPER_OPTS="${WRAPPER_OPTS} --crashemail ${ASTERISK_NOTIFY_EMAIL}" - else - ewarn "Notifications disabled, /usr/sbin/sendmail doesn't exist or is not executable!" - fi - fi - - if [ -n "${ASTERISK_TTY}" ]; then - for x in "${ASTERISK_TTY}" \ - "/dev/tty${ASTERISK_TTY}" \ - "/dev/vc/${ASTERISK_TTY}" - do - if [ -c "${x}" ]; then - TTY="${x}" - fi - done - if [ -n "${TTY}" ]; then - einfo "Messages are sent to : ${TTY}" - WRAPPER_OPTS="${WRAPPER_OPTS} --tty ${TTY}" - else - ewarn "ASTERISK_TTY=${TTY} ignored, not valid." - fi - fi - - if yesno "${ASTERISK_CONSOLE}" && [ -n "${TTY}" ]; then - einfo "Starting Asterisk console : Yes" - OPTS="${OPTS} -c" - fi - - if ! getent passwd "${ast_user}" >/dev/null 2>&1; then - eerror "Requested to run asterisk as ${ast_user}, which doesn't exist." - return 1 - fi - OPTS="${OPTS} -U ${ast_user}" - - if [ -n "${ast_group}" ] && ! getent group "${ast_group}" >/dev/null 2>&1; then - eerror "Requested to run ${ast_instancename} with group ${ast_group}, which doesn't exist." - return 1 - fi - [ -n "${ast_group}" ] && OPTS="${OPTS} -G ${ast_group}" - - if [ "${ast_user}" = root ]; then - ewarn "Starting asterisk as root is not recommended (SERIOUS SECURITY CONSIDERATIONS)." - elif [ "${ast_group}" = root ]; then - ewarn "Starting asterisk with group root is not recommended (SERIOUS SECURITY CONSIDERATIONS)." - fi - - checkpath -d -m 0755 -o "${ast_user}:${ast_group}" "${ast_logdir}" "${ast_rundir}" - checkpath -d -m 0750 -o "${ast_user}:${ast_group}" "${ast_cachedir}" - - einfo "Starting asterisk as : ${ast_user}:${ast_group:-${ast_pgroup} (+supplementaries)}" - einfo "Wrapper options : ${WRAPPER_OPTS}" - einfo "Asterisk options : ${OPTS}" - - /usr/sbin/asterisk_wrapper ${WRAPPER_OPTS} -- ${OPTS} & - result=$? - - if [ $result -eq 0 ]; then - # 2 seconds should be enough for asterisk to start - sleep 2 - is_running - result=$? - - [ $result -eq 0 ] || wrapperstop - fi - - eoutdent - eend $result - - if [ $result -eq 0 ] && yesno "${ASTERISK_WAITBOOTED}"; then - if [ ! -r "${ast_rundir}/asterisk.ctl" ]; then - # asterisk can crash during startup ... - ebegin "Waiting for ctl file to appear" - while is_running && [ ! -r "${ast_rundir}/asterisk.ctl" ]; do - sleep 1 - done - is_running - result=$? - eend $result - fi - if [ $result -eq 0 ]; then - ebegin "Waiting for ${ast_instancename} to fully boot" - /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "core waitfullybooted" >/dev/null 2>&1 - eend $? - fi - fi - - return $result -} - -wrapperstop() { - # Older path. - if [ -r "${ast_rundir}/wrapper_loop.running" ]; then - ebegin "Signalling ${ast_instancename} wrapper script to terminate" - rm "${ast_rundir}/wrapper_loop.running" - eend $? - fi - - if [ -r "${ast_rundir}/asterisk_wrapper.pid" ]; then - ebegin "Signalling ${ast_instancename} wrapper script to terminate" - rm "${ast_rundir}/asterisk_wrapper.pid" - eend $? - fi - - return 0 -} - -forcestop() { - setup_svc_variables || return $? - - # Just to be sure - when we want to forcestop we should make it all tear down. - wrapperstop - - ebegin "Stopping ${ast_instancename} PBX" - start-stop-daemon --stop --pidfile /run/asterisk/asterisk.pid - eend $? -} - -stop() { - setup_svc_variables || return $? - - wrapperstop - - if ! is_running; then - eerror "${ast_instancename} is not running!" - return 0 - fi - - ebegin "Stopping ${ast_instancename} PBX ${ast_stop_method}" - /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "core stop ${ast_stop_method}" >/dev/null 2>&1 - # Now we have to wait until asterisk has _really_ stopped. - sleep 1 - if is_running; then - einfon "Waiting for ${ast_instancename} to shutdown ." - local cnt=0 - while is_running; do - cnt="$(expr $cnt + 2)" - if [ ${ast_stop_timeout} -gt 0 -a $cnt -gt ${ast_stop_timeout} ] ; then - echo - eend 1 "Failed waiting for ${ast_instancename} to stop." - return 1 - fi - sleep 2 - printf "." - done - echo - fi - eend 0 -} - -reload() { - setup_svc_variables || return $? - - if is_running; then - ebegin "Requesting ${ast_instancename} to reload configuration" - /usr/sbin/asterisk -C "${ast_confdir}/asterisk.conf" -r -x "module reload" >/dev/null 2>&1 - eend $? - else - eerror "${ast_instancename} is not running!" - fi -} |