diff options
author | V3n3RiX <venerix@koprulu.sector> | 2025-02-24 19:24:56 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2025-02-24 19:24:56 +0000 |
commit | d4653056cc74d97f24bef0d56b4ebe11c53c8b76 (patch) | |
tree | 5d4be0715302fad2089468027fadaa0372afd1d1 /net-wireless | |
parent | 575bcb9220287a6f0d2577db1fd9fe55d9d8b745 (diff) |
gentoo auto-resync : 24:02:2025 - 19:24:56
Diffstat (limited to 'net-wireless')
44 files changed, 1968 insertions, 203 deletions
diff --git a/net-wireless/Manifest.gz b/net-wireless/Manifest.gz Binary files differindex 6cd6761966b4..5b1d2aabaa81 100644 --- a/net-wireless/Manifest.gz +++ b/net-wireless/Manifest.gz diff --git a/net-wireless/broadcom-sta/Manifest b/net-wireless/broadcom-sta/Manifest index 47a9926bcc15..d68b0c65e737 100644 --- a/net-wireless/broadcom-sta/Manifest +++ b/net-wireless/broadcom-sta/Manifest @@ -1,22 +1,25 @@ -AUX 001-null-pointer-fix.patch 1270 BLAKE2B 41191fefabfd4bb5d1feaecefaf0f836e68b1190e420b54a7b5155a1ffea645c34740dc0fbc0ae60a2dac448e9e412c0c22b824f18aded70f685a2efa58c130e SHA512 885a3677304e900aeb624dbe50b5c2102d17da64551a0a4108a1da31ccc59b9349b3ba1344d4da9c0342c34927e40457105a542a74d51818301c65843f19ce9e -AUX 002-rdtscl.patch 786 BLAKE2B bbc80e1ac01683ccc2d940212347fc11c74bdc252d492ca79a292015ac25df6a153ac97cb6c0f0a8d51c1c33d5dc0de4fdd61b1958499b946dc817d29646b72f SHA512 b483a4fd5fbb5a4697365b6ddcd8034b4d90ddee9bf2aecf003b0fd6838a708d3e84be33b08acdbe165d440480da25fdf0dfff0d2fe12fa2c5271c51d6ac74c0 -AUX 003-linux47.patch 3897 BLAKE2B ecf3eb75f8eb3331b0a36b39851536de43cffd3b303db9e9f4fe6fe55d463c3343aba17a99668448427764a719e15e3e862d6a3dc0bc61cb68da9934fb427c6f SHA512 f61ecfb6b8c5a377c7a4da7549c9ec75677782fa2f97e64de0df1259e0ec3b993cfa3eaa4ff50331703ee18ef28f2af0d09839dd3b63ed994e6b29cbfe8ed73f -AUX 004-linux48.patch 1835 BLAKE2B 7e091ac44616ea4cfa80b3a5563f4c6a235d2431b911f6bc52074a76b2c1d609dc546430f048abf042f862907f573c6b1dfa24c8c424aeefe73ff13ae3f34900 SHA512 e5959921b6f0cd5d61d7ed568f549b0920f394458c28257c05064b89d7067ce11c8e44ed0e5a48a65bd041c6193d9ae2d02fca2f5efbfb787d3f9001786a4578 +AUX 001-null-pointer-fix.patch 1027 BLAKE2B 4ac6a744814f8151082c991f32bb53c50ad17aec30b5418f201d6abb4860fb9ba22f856888d3b0cb2241cd8bb80daaf04d4011b0f324edf6d95ec79b7381c949 SHA512 5002709d99e0a5c1ef9fd50ceff4084da83643406e5b50dc44b21d723016adffa976d7f808236fc23704457921adcad0c15abd740abd3d4603472345524f00e9 +AUX 002-rdtscl.patch 655 BLAKE2B 78080155ef2c28150f19470fae945e2a8da58f829dba8d0b6b148420e805e8cf87c0cc5a2ade6d29b63c7ec4531bd89883748814d5bae73f57b6cb8ce8800112 SHA512 56c43d1c76bce21dd98fa405009b448a586823a383b977c6617b4e9d700ace2a7f15ba09dac57ab4f0bb364041e87526b39c6783bd62f87288078a521c40c313 +AUX 003-linux47.patch 3825 BLAKE2B 7d188853d437809f63b5cf7b144b8f6f5b06b8fee827d3613eb82bb6fb82ea339875b89e1110cba566f9d52a850aec239bca988bd22dc5f7c0fab8347eee57cf SHA512 4b5460a18f4020a5e5e81daa779c15b360b4a801f8d1fd200f09eca6b5190754276c0ce9f92a26f336c3677cd58f5cd8578c4a7b61b46a1b653c27907c2c875f +AUX 004-linux48.patch 1626 BLAKE2B 9fb2fec1197919543d5a94be404b55cc40651a484ba9ef731a438d8d4c8fe4ab570d2ad3c5d73ffca27254542730980f90b2fabb3779f40ea61912e4d6a72745 SHA512 d3a2d4de8c4a269c190901fdce9b4eab8248d921b932e9970e627af4f7b62e7d10cb784919aad439c2b8cec6ab01944874f02d4788ad0ccf2fac67f2f610410f AUX 005-debian-fix-kernel-warnings.patch 5013 BLAKE2B 3b65cccde7ed80bd88bf945cca6b71fca9eccc4a910666dad4df56a24471535e1d6007e1ea24567002c927357b525683b02c6a7ad2986aca738fc81ab736219f SHA512 6209a0a5a46a3efcede3cb1e263467173153d779b6267ba4c20f46421a9abd8743a7068527ace350a3da3ef3046b0399e09b37aba917fabe020c8c2600b60fdf -AUX 006-linux411.patch 800 BLAKE2B 28ef5e50fa11fc15b409f3b3ee42aaf329756354ba8b7923d1b27939a6b21bd64b72a4adfb2eeff3c48bb8c4c1bc4294e8fd7744b83768974bf5d0592e20c148 SHA512 b7db17e30731a9cbc940b83f7b62f059529cff6c134e47e2176cd7c6fcd8d028334ed4fe1fdce7cf1aef87590f9664b463383ae3302a6e2aabe1baa79fbc5c95 -AUX 007-linux412.patch 2776 BLAKE2B 06035b1bca121c72b5e6bf120df644d5496d6020cf8537ec83917bb0f5b5a0a25129730f46201da2cc61e48cbcf4e9d3ed7757f3223e1d3b6e29b531c4c8fabb SHA512 d4acd891023ff8d4b9308afdd55c4e971cdf7773570c8e3a545400ed9e414eeca5016ebc8a530002e7858fd44f1fd5b0ae70c0d0a3cdbbffd5bd9abb702b2cde -AUX 008-linux415.patch 1063 BLAKE2B 091e1da266ebaa0d429663facf3e81c849fe900c446e1c270ba23b65c15a99efeb1ae6c20905dfcc21b5f4bc3f91b32eb3b7bc9841f2a23508c71312403af774 SHA512 2fb5c3eebd48b6099fb87a9fd92545c17b2abf318b040a434c1b0bdd75a7a682b6e7ec9f80245c198f1c306bbaef35a2488123c5ba8764d5a83eb18132c0857b -AUX 009-fix_mac_profile_discrepancy.patch 492 BLAKE2B 7c8012fa51592a3fca6dfde7a7a9c6dd37eb6c406d3f8695927e32c9e714c3faa23295b116a6cd97ec0403b123747b9095883bd7e3abe6c1888c3c9a4630f9f4 SHA512 97d34398d18ac9a7943233c12e01cf7006bf0648938303100932cabf5000c346f1a852978e3c8c48bb6e8652177e625ce1190047d580624319e680a13802ce92 -AUX 010-linux56.patch 1866 BLAKE2B 21f7fc163ffcf6857f3a21a8519a42600fd6b3658d14b32191ef1142c817c10c8dc691a3bc39228927ac29d7b7ac5c3a62eb786853046bacb9cc74efb51b6cb0 SHA512 8fb320c1272246c91fdd99cade2fb67a6ecd924a132c1b9432fa1ff0338444700451ffc6a1cb35e07188c58c5bd1ccaf59ebf014c49f44cb6ba33d1ec732859d -AUX 011-linux59.patch 5933 BLAKE2B c1f522f6554a7bfe0f7b789b042ada14316ecc87bc196c83bec95f684152f323a4c31f60ff26843e36338b8c7949bf36719a5c8afa439ff71f7c74dae4c755b6 SHA512 b9a0193ab604da92c99051e2a4fd91e43c3b6aeea7dbda15635b43eabd35b414e197bf5f25ac0d4ec905a1cb75abc15f165428470bc788dbefd73f178d165099 -AUX 012-linux517.patch 2790 BLAKE2B d84d08161530bb9f05f627ec798a0897643869ea9b80781ae9eee85b072922c52e5127e55f04265c53fcfedc4e9da166eb3bb9f9fc2e139d62517ec54c2f45bb SHA512 ec34a2800d7a70a7a1ff8a96ba87c2327f68066addf5adc9f60ba303cfda9cee39159f110013f075e357988f92efe802010e9c1d7884a5dfb1908df1489bd608 -AUX 013-linux518.patch 2337 BLAKE2B e5ae3570dc2f27105c50e6dec807c1f4f1a2824995e0951e7ff405114d519e4f33992d8d2ea2c2d4fc3f9271d57f89bfb5b6b5c79af2c89492209a86ad673456 SHA512 b815a4ff9289d81ddbe7f76553b092df19ee137438c9e33811c3a8b15e8a3896763715975b42391b4edfb60cfb0db46b71f4fee0f33a7b07f8d45cc4608d3faa -AUX 014-linux414.patch 936 BLAKE2B 0b1075bd59e8046969052ceb9cbe305ac2373b5d1600701ffcffb5219d3765ef5d15465c3aff63bbc547ed4f663dc4816d1b4fa09176d6c78828e488a9a863c4 SHA512 30207d8872ee8925a7c7412184e3b4fd6935f8017fb46e1173aca77333c99fb4316ef1511a83e345593c369210d4cbf976eea53995e229b4d856d97662c98961 -AUX 015-linux600.patch 1267 BLAKE2B 7d4dfe48577456436d0932bd1eca78fc1f0a952e141f13641b93bb24161a9f6847152966631cc05a6d707f9cf8adbded55a19aeaa2c15c963fffb5db9eff9f63 SHA512 21cf9b0b01ad4b30fa8541638e9a8428c8c68c89992b7e15c19f8526e8df6f8c5ff20de5ae2759b36fead07deacd1805749a9ed82611d15fb75dc94812e4941e -AUX 016-linux601.patch 4316 BLAKE2B 6c627b392a5b05248e3fb78c9be0329deee601b70d88334f5f61e1af14643a7367fabbf3d3fce23b0cae317456ecdc7e7985ce019c3bc283117f3ba2be5b25b5 SHA512 8879aeb0a79b7e82ca5e70fd33acefda1733594d7e78940932d2c220cad48b643fc2c0cb8e79f1fc3ebaaa5a4383a0caf6798214f911c2f5859c8fab1c8532e8 +AUX 006-linux411.patch 702 BLAKE2B 8fc2ad06beac301609738b44ae4b8bb722fc55ed3373462dc1e37867a9e0302368324ea5d4f6b14513fa8b7e237bb9d4e86af33b71d51a91f3df997a75900880 SHA512 1f1358ad4f6ccbd727900057fd06a1eeb1eb8be638f50afd09263cbcb8019c01c737df00455c30d02a699d47c43388c923a1704bf72848c6e0ab68ed5cb31e83 +AUX 007-linux412.patch 2544 BLAKE2B e73e78eb26f5f862ca3f0e9853d213acc0dd89cc6af2189f6916c281f671b3c4f504257e5be367d51860243ffd8d6285e0db7c5542c08c44f21a12f31973e2d4 SHA512 c65a5fd1eaefbe4f6719c8e7e055c473327186eda1bc1305ecb40a1a757e0b6bf7a86b855af25f124696b0bc1bbe5a44d16d30cb665ced0cddc3f67698908f16 +AUX 008-linux415.patch 991 BLAKE2B b7429aad683d20197ba467ee25258fe0948d63fb9e120db6d8f0b511eeac70ebae89c61c2f4c65ffb2a88494b5b5f9d357c150a6c95b3562380da223531a00f1 SHA512 758e8caa7356a00834e4c9bb554195c6e4f08851bbc64816790a83c83e5cae462d6e5d5d309a3e65040c0424de626fb18c81855f5281f9ae3d4d42d6059193df +AUX 009-fix_mac_profile_discrepancy.patch 420 BLAKE2B 5caf4cf96a21b883f865fa30a6ddbb84324865d020b498eca6885ea40d1669e273670da34bebb9824120be444ee34e19a8334aa8f633b6aea2de6fd7e060ad3e SHA512 76159e4b5ea8a7e12638da96c96b8a12feec1b0acefd126d2f8dacd37cd3a688c4621b2a06cac2d7a78254cb37b838333263a712d7671ceb3ae3d0392b2ecef1 +AUX 010-linux56.patch 1686 BLAKE2B 9365929984459764d01b77c86d81e9189f56f2cd2d7778f48fac78d7f9bb2c6c3bc23ca6b057fb3dbc8daefd9991827096923c3924fa90bc5300e94161623c60 SHA512 2949045cd3d34f180fd4513a95cd66ce8c1e057b722982237790d0c7c201ec6b236dc6c4e95f4d4972e5643a05fe82c62681f455fc2d1cb094986ba8434926e3 +AUX 011-linux59.patch 5146 BLAKE2B 0f9b96d618bea41cbe7111062542dbd32a074bb8c570cab1289fab62085d1f28c6c93b4939be6d6120b9c121ecaa975aff56b8d3a5d6e16c8c251121e72c0659 SHA512 a4d5545af37b655489d31802b56c9f22767cc1798fcd53b224bda0bf750e2317c8355baf27f1161cdc290db21a3f60beb82745393f6baa0a5baf888c2f49d2c5 +AUX 012-linux517.patch 2601 BLAKE2B dcea7ea4b6749cd0a6306be6906c61052eaa645086c6fe75862b714f3c3195972c70bffec871435072c3912a6997d3144977c421965b267ac05b8814dc344fa6 SHA512 e95f8558d4a6cf13994c1172c704e44bf1bc2dccebf5427c210b98999f5ab027f5907957e714bc4da2914323580bbb7595b14a742712faee2836f2c1ad573ede +AUX 013-linux518.patch 2204 BLAKE2B 78d610e50b11a320a17dd2f38ab3e190623ca1c6c12cddc6c35718ae911454f0b4c61baec6541448519caf5f6f5515d429a5999fc0cc1e55e88df7036468cb04 SHA512 8e345dc798033bf1d993024587c71951c483176c8830605c823ed5b1db1e3c0d9461fc3615095511645de20053122284fd735f97eb648cc488a62b5685acbc59 +AUX 014-linux414.patch 748 BLAKE2B 463464cd9fa94562773521207b5a8100b66359d1a00526df57978a9c09b66d09dbe7027c2ca5c775ef78f7463699c6e59a2a5a3ae7971b8d0a1df4d71bb57a58 SHA512 3f585962e6cac1650c9eff2bfe4e1c51efa23a18aa0f19d007244c1254d18b320f6f3fe42b6b3b2ee5ab9f166c352faa65980e61f22a2e26bc92bdd25d763585 +AUX 015-linux600.patch 1078 BLAKE2B 1c8e5d72f3333285ccdbfa3bc84be280274c94521f2958a26b77f642e0093a55ed581d6cffd4647b476bbbfa5a74e272abece0a68be3fccaafde58d21f264833 SHA512 db47fa36cd7d8ba6ce034efc6cf60fd4c6d38d6335099a8b8a02cb354e5c0244c65a62529baf16468527e1047827612807a404ae7a03ac15cfe3a0bd9d5bfe91 +AUX 016-linux601.patch 4159 BLAKE2B 20ae46a34a42b2c93ecc73f4c4d3efdadf3150cd5b039c92b8ced62804dfb5f6dcd59b4599c06770b2b6fc801049085ebaac3f2c0d0c8be5c014deea7d662e7c SHA512 5de9714c279d0ee7d7cfbee59c7842f587c3b37ba292e15eb6a8b331f1fa609fa9aea01968a1995a90f9d924a0862a3601611ca8af0819840628944835c0204e +AUX 017-handle-new-header-name-6.12.patch 909 BLAKE2B a1910049f7d9d976b05284fdee0f92d5c8ddd131f637652bc57c692b4eb5e35bef98f9f14cc27b3cd7b2bb9e179ca56c5fb86974d83f43efc81ec55cef1c0351 SHA512 5c649993d108593e3bfa278dae10bee8b4b0c2377469c716d8c315e74b623619b6e0b81fdaff3b33fa0a6ef7fdf0e1462b894152f49b888816ff42634f1f4779 +AUX 018-broadcom-wl-fix-linux-6.13.patch 978 BLAKE2B 72197f3ef943324d35ddeba243c5779b278ed9d844d6351a8b2a292bfe02dd1f790dd62646c03315747e0545185a4dc1a59c8b72f0a818398aa92a1a0d939e86 SHA512 1a676c4f646845bf104506c8ac88c31c4de138b81999ff0347cad3c48bb2fcb1a37ea2339f433bd55ba2bdf1dbdaf7f63c0ef7a8b7a4484784234374634b1592 +AUX 019-broadcom-wl-fix-linux-6.14.patch 1810 BLAKE2B 03533c2de71c0f4b8d827af6f799b50359ec673c8adcaa53d8b4c159c63000d4016209c7b08ef41f1c09bd0cbf55e7727e07be43e4e49fab4141dbaf227b9d8e SHA512 de37991b61884379fb3edbf55e798fa4751f7b6b2e9eabdcbe2a099401ec17ad079aeaa269ae0ec4b5fd30d1d160bb4856334a7516a2e293d03caa81ac82708a AUX broadcom-sta-modules.conf 335 BLAKE2B 25faab24a10f9a20b2178ac18e832e09a8a664e36d3eb794d4bf09db0ae7e0220105908d128523edb1bd218b8f090b9056700de93cf8a7eac7ac70f3f6dc575f SHA512 c882b853948e695b35f9c8d366d992ae73efa7aefd1c167ad36cd8e83edc5988e4b0caf36046d88481051a00e3c88bd42d4e83d88e36910f3c62d725e063af27 DIST README-broadcom-sta-6.30.223.271.txt 17216 BLAKE2B af6db6e129911d1589d7d6cb7166bee32ce1ca98a4e5c9b3515a44e48681d8a7a7a6b697419b2bcd9c46f0f4ca1f7ece632b63531b4a4ecd91df4f9dddf043c9 SHA512 672ecc5afcd8535a9f8beb4baea5a40c584b7682844e9ff0e4f66b7406b42118a99dce1fcd580118187fdc506781334b8243082def2b78dce916d90c55ab3663 DIST hybrid-v35-nodebug-pcoem-6_30_223_271.tar.gz 2869247 BLAKE2B 2e3189c468cec50b1a980452a4b2bd0f9657d9adf6fae2a95a8b1c2d1df2f5f6beb4cb903f72f444eddf823fe4375299864cd62191c9d59c4f77598b5d3aa246 SHA512 0361ba30d97bcb1dedf46c11ef1b9a16f09cde3faa6be87b3ccc28679f34183c2fdf511e7c3b5c26b304f6961da454ccf71844b92bbb2f25aa876249496a2f1b DIST hybrid-v35_64-nodebug-pcoem-6_30_223_271.tar.gz 2928541 BLAKE2B e9d01c1a1a63c07f720e3ee53ee3ef634ab12694135300cb0ce47ade0e9e0084967a0b6df64d983e8184240eb3defb128f650bddb7727e901d50315307f3398a SHA512 6855781f7c69a9aecb9461932423688964879d5a4df571f01ae7adaa7bf21a410bef839605d555afb6c8f4eec92fe8510af6cb120930095617ff6cdcccedaf17 -EBUILD broadcom-sta-6.30.223.271-r7.ebuild 3769 BLAKE2B 9334cc504b4e48211b7029842511b94685297edf10faa159a65ef68d86986a3c3e73d3b74b6dabfc347356c6e2e53208bdb042f706c13d6332383f5051b5c062 SHA512 8fc1532c434d42f4a8f07dd47cac429201e69346c3fc514f8851357761095983eea4c57316901e114734c017140f10426c4bc20a050f77271e9ca442f99ed8cc +EBUILD broadcom-sta-6.30.223.271-r8.ebuild 4063 BLAKE2B 509aa1bf12f5a42ec2e3144f26c545ff439f3c9001f9207d55c62e5fc66709d7635679faf2939de2f49f89ceaf36079ac539dbb54f4909c57c0a6a28670157b4 SHA512 4a8e21d9b66690479a6fd0bc65c4811be412c635d6ed90481c2f0a18b84c17ab576458c8780366ba09d6330f45c1e314fee22694091d9e9ffc8e9956e1486f5f MISC metadata.xml 250 BLAKE2B 3418f6ba3586bffc26461ed5b80518671c845466e4f0ceb2468b5f9a12efa0ee7bee2dedd74908c11bcdd7bc92fbf3c018f18e011c2cb9c319945e185147233f SHA512 b0ea50f3526de06f698a5914ba34edeb1df5f04ab23f457e63685875f938b4dc70b8602266a90f7d07e9e2ebe547b37ff5b577eebb08256d5606046438582032 diff --git a/net-wireless/broadcom-sta/broadcom-sta-6.30.223.271-r7.ebuild b/net-wireless/broadcom-sta/broadcom-sta-6.30.223.271-r8.ebuild index efe1beb913de..e8bf4205ee86 100644 --- a/net-wireless/broadcom-sta/broadcom-sta-6.30.223.271-r7.ebuild +++ b/net-wireless/broadcom-sta/broadcom-sta-6.30.223.271-r8.ebuild @@ -1,26 +1,28 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 + inherit linux-mod-r1 DESCRIPTION="Broadcom's IEEE 802.11a/b/g/n hybrid Linux device driver" HOMEPAGE="https://www.broadcom.com/support/802.11" SRC_BASE="https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/hybrid-v35" -SRC_URI="x86? ( ${SRC_BASE}-nodebug-pcoem-${PV//\./_}.tar.gz ) +SRC_URI=" + x86? ( ${SRC_BASE}-nodebug-pcoem-${PV//\./_}.tar.gz ) amd64? ( ${SRC_BASE}_64-nodebug-pcoem-${PV//\./_}.tar.gz ) - https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/README_${PV}.txt -> README-${P}.txt" + https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/README_${PV}.txt -> README-${P}.txt +" +S="${WORKDIR}" LICENSE="Broadcom" SLOT="0" + KEYWORDS="-* ~amd64 ~x86" RESTRICT="mirror" DEPEND="virtual/linux-sources" -RDEPEND="" - -S="${WORKDIR}" PATCHES=( "${FILESDIR}/001-null-pointer-fix.patch" @@ -39,6 +41,9 @@ PATCHES=( "${FILESDIR}/014-linux414.patch" "${FILESDIR}/015-linux600.patch" "${FILESDIR}/016-linux601.patch" + "${FILESDIR}/017-handle-new-header-name-6.12.patch" + "${FILESDIR}/018-broadcom-wl-fix-linux-6.13.patch" + "${FILESDIR}/019-broadcom-wl-fix-linux-6.14.patch" ) pkg_pretend() { @@ -62,6 +67,7 @@ pkg_setup() { # b43 via udev rules. Moreover, previous fix broke binpkgs support. CONFIG_CHECK="~!B43 ~!BCMA ~!SSB ~!X86_INTEL_LPSS" CONFIG_CHECK2="LIB80211 ~!MAC80211 ~LIB80211_CRYPT_TKIP" + CONFIG_CHECK3="~!MAC80211" ERROR_B43="B43: If you insist on building this, you must blacklist it!" ERROR_BCMA="BCMA: If you insist on building this, you must blacklist it!" ERROR_SSB="SSB: If you insist on building this, you must blacklist it!" @@ -70,7 +76,9 @@ pkg_setup() { ERROR_PREEMPT_RCU="PREEMPT_RCU: Please do not set the Preemption Model to \"Preemptible Kernel\"; choose something else." ERROR_LIB80211_CRYPT_TKIP="LIB80211_CRYPT_TKIP: You will need this for WPA." ERROR_X86_INTEL_LPSS="X86_INTEL_LPSS: Please disable it. The module does not work with it enabled." - if kernel_is ge 3 8 8; then + if kernel_is ge 6 1 127; then + CONFIG_CHECK="${CONFIG_CHECK} ${CONFIG_CHECK3} CFG80211 ~!PREEMPT_RCU ~!PREEMPT" + elif kernel_is ge 3 8 8; then CONFIG_CHECK="${CONFIG_CHECK} ${CONFIG_CHECK2} CFG80211 ~!PREEMPT_RCU ~!PREEMPT" elif kernel_is ge 2 6 32; then CONFIG_CHECK="${CONFIG_CHECK} ${CONFIG_CHECK2} CFG80211" diff --git a/net-wireless/broadcom-sta/files/001-null-pointer-fix.patch b/net-wireless/broadcom-sta/files/001-null-pointer-fix.patch index 0ebe1e242243..6b1bb33180ff 100644 --- a/net-wireless/broadcom-sta/files/001-null-pointer-fix.patch +++ b/net-wireless/broadcom-sta/files/001-null-pointer-fix.patch @@ -4,12 +4,6 @@ Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=773713 Bug-Ubuntu: https://launchpad.net/bugs/1415880 Last-Update: 2015-08-18 ---- - src/wl/sys/wl_linux.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c -index 860b935..295156f 100644 --- a/src/wl/sys/wl_linux.c +++ b/src/wl/sys/wl_linux.c @@ -2157,8 +2157,8 @@ wl_start(struct sk_buff *skb, struct net_device *dev) @@ -25,8 +19,8 @@ index 860b935..295156f 100644 -- 1.9.1 ---- a/src/wl/sys/wl_linux.a 2023-04-16 23:06:52.255588442 -0500 -+++ b/src/wl/sys/wl_linux.c 2023-04-16 23:07:22.315309655 -0500 +--- a/src/wl/sys/wl_linux.a ++++ b/src/wl/sys/wl_linux.c @@ -737,9 +737,6 @@ dev->name, device, WL_ALL_PASSIVE_ENAB(wl) ? ", Passive Mode" : "", EPI_VERSION_STR); diff --git a/net-wireless/broadcom-sta/files/002-rdtscl.patch b/net-wireless/broadcom-sta/files/002-rdtscl.patch index 1b9862cc3d8d..8612895d7082 100644 --- a/net-wireless/broadcom-sta/files/002-rdtscl.patch +++ b/net-wireless/broadcom-sta/files/002-rdtscl.patch @@ -5,9 +5,8 @@ new function. References: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=fe47ae6e1a5005b2e82f7eab57b5c3820453293a https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=4ea1636b04dbd66536fa387bae2eea463efc705b -diff -ru a/src/shared/linux_osl.c b/src/shared/linux_osl.c ---- a/src/shared/linux_osl.c 2015-09-19 01:47:15.000000000 +0300 -+++ b/src/shared/linux_osl.c 2015-11-21 15:20:30.585902518 +0200 +--- a/src/shared/linux_osl.c ++++ b/src/shared/linux_osl.c @@ -932,7 +932,11 @@ uint cycles; diff --git a/net-wireless/broadcom-sta/files/003-linux47.patch b/net-wireless/broadcom-sta/files/003-linux47.patch index 566680a09140..3ad02380ebdb 100644 --- a/net-wireless/broadcom-sta/files/003-linux47.patch +++ b/net-wireless/broadcom-sta/files/003-linux47.patch @@ -9,8 +9,8 @@ This patch refactors the references of IEEE80211_BAND_* to NL80211_BAND_* Reference: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=57fbcce37be7c1d2622b56587c10ade00e96afa3 ---- a/src/wl/sys/wl_cfg80211_hybrid.c 2016-06-13 11:57:36.159340297 -0500 -+++ b/src/wl/sys/wl_cfg80211_hybrid.c 2016-06-13 11:58:18.442323435 -0500 +--- a/src/wl/sys/wl_cfg80211_hybrid.c ++++ b/src/wl/sys/wl_cfg80211_hybrid.c @@ -236,7 +236,7 @@ #endif diff --git a/net-wireless/broadcom-sta/files/004-linux48.patch b/net-wireless/broadcom-sta/files/004-linux48.patch index 20e8a9ae49d2..10315f7f2326 100644 --- a/net-wireless/broadcom-sta/files/004-linux48.patch +++ b/net-wireless/broadcom-sta/files/004-linux48.patch @@ -4,12 +4,6 @@ Date: Fri, 2 Sep 2016 17:35:34 +0200 Subject: [PATCH 1/1] Add support for Linux 4.8 Orginal author: Krzysztof Kolasa ---- - src/wl/sys/wl_cfg80211_hybrid.c | 22 ++++++++++++++++++++++ - 1 file changed, 22 insertions(+) - -diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c -index 2fc71fe..ec5e472 100644 --- a/src/wl/sys/wl_cfg80211_hybrid.c +++ b/src/wl/sys/wl_cfg80211_hybrid.c @@ -2388,8 +2388,16 @@ wl_bss_connect_done(struct wl_cfg80211_priv *wl, struct net_device *ndev, diff --git a/net-wireless/broadcom-sta/files/006-linux411.patch b/net-wireless/broadcom-sta/files/006-linux411.patch index 7a2e8c0c6cb0..87715a9c8e2a 100644 --- a/net-wireless/broadcom-sta/files/006-linux411.patch +++ b/net-wireless/broadcom-sta/files/006-linux411.patch @@ -1,4 +1,3 @@ -diff -u sys0/wl_cfg80211_hybrid.c sys/wl_cfg80211_hybrid.c --- a/src/wl/sys/wl_cfg80211_hybrid.c +++ b/src/wl/sys/wl_cfg80211_hybrid.c @@ -39,6 +39,10 @@ @@ -12,7 +11,6 @@ diff -u sys0/wl_cfg80211_hybrid.c sys/wl_cfg80211_hybrid.c #define EVENT_TYPE(e) dtoh32((e)->event_type) #define EVENT_FLAGS(e) dtoh16((e)->flags) #define EVENT_STATUS(e) dtoh32((e)->status) -diff -u sys0/wl_linux.c sys/wl_linux.c --- a/src/wl/sys/wl_linux.c +++ b/src/wl/sys/wl_linux.c @@ -2915,7 +2915,9 @@ diff --git a/net-wireless/broadcom-sta/files/007-linux412.patch b/net-wireless/broadcom-sta/files/007-linux412.patch index 1673f063cdb5..8fb62bdfde5f 100644 --- a/net-wireless/broadcom-sta/files/007-linux412.patch +++ b/net-wireless/broadcom-sta/files/007-linux412.patch @@ -5,12 +5,6 @@ Subject: [PATCH] Apply patch from Debian bug #867258 Compile fix with kernel 4.12 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=867258 ---- - src/wl/sys/wl_cfg80211_hybrid.c | 29 +++++++++++++++++++++++++---- - 1 file changed, 25 insertions(+), 4 deletions(-) - -diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c -index c46944a..1a9840a 100644 --- a/src/wl/sys/wl_cfg80211_hybrid.c +++ b/src/wl/sys/wl_cfg80211_hybrid.c @@ -53,7 +53,11 @@ u32 wl_dbg_level = WL_DBG_ERR; diff --git a/net-wireless/broadcom-sta/files/008-linux415.patch b/net-wireless/broadcom-sta/files/008-linux415.patch index 1bced2f68ab1..fbaa08bc7057 100644 --- a/net-wireless/broadcom-sta/files/008-linux415.patch +++ b/net-wireless/broadcom-sta/files/008-linux415.patch @@ -1,5 +1,5 @@ ---- a/src/wl/sys/wl_linux.c 2017-07-17 00:11:24.000000000 +0100 -+++ b/src/wl/sys/wl_linux.c 2018-01-27 09:49:47.057799596 +0000 +--- a/src/wl/sys/wl_linux.c ++++ b/src/wl/sys/wl_linux.c @@ -93,7 +93,11 @@ #include <wlc_wowl.h> diff --git a/net-wireless/broadcom-sta/files/009-fix_mac_profile_discrepancy.patch b/net-wireless/broadcom-sta/files/009-fix_mac_profile_discrepancy.patch index 4260eba5057a..bcc6d50dc8ac 100644 --- a/net-wireless/broadcom-sta/files/009-fix_mac_profile_discrepancy.patch +++ b/net-wireless/broadcom-sta/files/009-fix_mac_profile_discrepancy.patch @@ -1,5 +1,5 @@ ---- a/src/wl/sys/wl_cfg80211_hybrid.c 2015-09-19 00:47:30.000000000 +0200 -+++ b/src/wl/sys/wl_cfg80211_hybrid.c 2018-11-14 14:06:03.313487995 +0100 +--- a/src/wl/sys/wl_cfg80211_hybrid.c ++++ b/src/wl/sys/wl_cfg80211_hybrid.c @@ -1444,11 +1444,10 @@ s32 rate; s32 err = 0; diff --git a/net-wireless/broadcom-sta/files/010-linux56.patch b/net-wireless/broadcom-sta/files/010-linux56.patch index f8d5783819cd..4cee72e9081d 100644 --- a/net-wireless/broadcom-sta/files/010-linux56.patch +++ b/net-wireless/broadcom-sta/files/010-linux56.patch @@ -1,5 +1,3 @@ -diff --git a/src/shared/linux_osl.c b/src/shared/linux_osl.c -index 6157d18..8237ec7 100644 --- a/src/shared/linux_osl.c +++ b/src/shared/linux_osl.c @@ -942,7 +942,7 @@ osl_getcycles(void) @@ -11,8 +9,6 @@ index 6157d18..8237ec7 100644 } void -diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c -index 0d05100..2ed1f0d 100644 --- a/src/wl/sys/wl_linux.c +++ b/src/wl/sys/wl_linux.c @@ -582,7 +582,7 @@ wl_attach(uint16 vendor, uint16 device, ulong regs, diff --git a/net-wireless/broadcom-sta/files/011-linux59.patch b/net-wireless/broadcom-sta/files/011-linux59.patch index 6ef476464c0c..9494ed6f1f50 100644 --- a/net-wireless/broadcom-sta/files/011-linux59.patch +++ b/net-wireless/broadcom-sta/files/011-linux59.patch @@ -15,16 +15,6 @@ See also: https://lwn.net/Articles/722267/ https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=5e6e9852d6f76e01b2e6803c74258afa5b432bc5 Signed-off-by: Joan Bruguera <joanbrugueram@gmail.com> ---- - src/wl/sys/wl_cfg80211_hybrid.c | 25 ++------------------- - src/wl/sys/wl_iw.c | 25 ++------------------- - src/wl/sys/wl_linux.c | 40 ++++++++++++++++++++++++++++----- - src/wl/sys/wl_linux.h | 2 ++ - src/wl/sys/wlc_pub.h | 1 + - 5 files changed, 42 insertions(+), 51 deletions(-) - -diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c -index 7b606e0..1e0adb7 100644 --- a/src/wl/sys/wl_cfg80211_hybrid.c +++ b/src/wl/sys/wl_cfg80211_hybrid.c @@ -38,6 +38,7 @@ @@ -67,8 +57,6 @@ index 7b606e0..1e0adb7 100644 } static s32 -diff --git a/src/wl/sys/wl_iw.c b/src/wl/sys/wl_iw.c -index c4c610b..e346b15 100644 --- a/src/wl/sys/wl_iw.c +++ b/src/wl/sys/wl_iw.c @@ -37,6 +37,7 @@ typedef const struct si_pub si_t; @@ -110,8 +98,6 @@ index c4c610b..e346b15 100644 } static int -diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c -index 947cef3..f04c148 100644 --- a/src/wl/sys/wl_linux.c +++ b/src/wl/sys/wl_linux.c @@ -1643,10 +1643,7 @@ wl_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd) @@ -175,8 +161,6 @@ index 947cef3..f04c148 100644 static struct net_device_stats* wl_get_stats(struct net_device *dev) { -diff --git a/src/wl/sys/wl_linux.h b/src/wl/sys/wl_linux.h -index 5b1048e..c8c1f41 100644 --- a/src/wl/sys/wl_linux.h +++ b/src/wl/sys/wl_linux.h @@ -22,6 +22,7 @@ @@ -195,8 +179,6 @@ index 5b1048e..c8c1f41 100644 extern struct net_device * wl_netdev_get(wl_info_t *wl); #endif -diff --git a/src/wl/sys/wlc_pub.h b/src/wl/sys/wlc_pub.h -index 53a98b8..2b5a029 100644 --- a/src/wl/sys/wlc_pub.h +++ b/src/wl/sys/wlc_pub.h @@ -24,6 +24,7 @@ diff --git a/net-wireless/broadcom-sta/files/012-linux517.patch b/net-wireless/broadcom-sta/files/012-linux517.patch index 6f23316691c8..9bc7a11d79cc 100644 --- a/net-wireless/broadcom-sta/files/012-linux517.patch +++ b/net-wireless/broadcom-sta/files/012-linux517.patch @@ -16,12 +16,6 @@ Applies on top of all the patches applied to broadcom-wl-dkms 6.30.223.271-28 on See also: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=adeef3e32146a8d2a73c399dc6f5d76a449131b1 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=359745d78351c6f5442435f81549f0207ece28aa ---- - src/wl/sys/wl_linux.c | 16 +++++++++++++--- - 1 file changed, 13 insertions(+), 3 deletions(-) - -diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c -index e491df7..e4614fb 100644 --- a/src/wl/sys/wl_linux.c +++ b/src/wl/sys/wl_linux.c @@ -93,6 +93,10 @@ struct iw_statistics *wl_get_wireless_stats(struct net_device *dev); diff --git a/net-wireless/broadcom-sta/files/013-linux518.patch b/net-wireless/broadcom-sta/files/013-linux518.patch index d837429a6899..dbac7f85c9ad 100644 --- a/net-wireless/broadcom-sta/files/013-linux518.patch +++ b/net-wireless/broadcom-sta/files/013-linux518.patch @@ -1,6 +1,5 @@ -diff -u -r a/src/shared/linux_osl.c b/src/shared/linux_osl.c ---- a/src/shared/linux_osl.c 2022-05-24 20:51:15.662604980 +0000 -+++ b/src/shared/linux_osl.c 2022-05-24 21:13:38.264472425 +0000 +--- a/src/shared/linux_osl.c ++++ b/src/shared/linux_osl.c @@ -599,6 +599,8 @@ va = kmalloc(size, GFP_ATOMIC | __GFP_ZERO); if (va) diff --git a/net-wireless/broadcom-sta/files/014-linux414.patch b/net-wireless/broadcom-sta/files/014-linux414.patch index 0576aa5cf97c..256a4d90216b 100644 --- a/net-wireless/broadcom-sta/files/014-linux414.patch +++ b/net-wireless/broadcom-sta/files/014-linux414.patch @@ -4,12 +4,6 @@ Subject: linux414 Origin: https://bugs.debian.org/885885 linux 4.14 changed the kernel_read function prototype. ---- - src/shared/linux_osl.c | 12 +++++++++++- - 1 files changed, 12 insertions(+), 1 deletion(-) - -diff --git a/src/shared/linux_osl.c b/src/shared/linux_osl.c -index 9adc392..b24a973 100644 --- a/src/shared/linux_osl.c +++ b/src/shared/linux_osl.c @@ -1076,11 +1076,21 @@ osl_os_get_image_block(char *buf, int len, void *image) diff --git a/net-wireless/broadcom-sta/files/015-linux600.patch b/net-wireless/broadcom-sta/files/015-linux600.patch index 8645907bbae4..2b02046cb328 100644 --- a/net-wireless/broadcom-sta/files/015-linux600.patch +++ b/net-wireless/broadcom-sta/files/015-linux600.patch @@ -9,12 +9,6 @@ See also: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/com Original patch by Joan Bruguera: https://gist.github.com/joanbm/207210d74637870c01ef5a3c262a597d ---- - src/wl/sys/wl_cfg80211_hybrid.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c -index 5e9e6d3..5ec35c5 100644 --- a/src/wl/sys/wl_cfg80211_hybrid.c +++ b/src/wl/sys/wl_cfg80211_hybrid.c @@ -2412,7 +2412,11 @@ wl_bss_roaming_done(struct wl_cfg80211_priv *wl, struct net_device *ndev, diff --git a/net-wireless/broadcom-sta/files/016-linux601.patch b/net-wireless/broadcom-sta/files/016-linux601.patch index 721967d275c2..e099b789bd6c 100644 --- a/net-wireless/broadcom-sta/files/016-linux601.patch +++ b/net-wireless/broadcom-sta/files/016-linux601.patch @@ -1,6 +1,5 @@ -diff -Nurp -u -r a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c ---- a/src/wl/sys/wl_cfg80211_hybrid.c 2022-12-12 00:23:30.821615599 +0000 -+++ b/src/wl/sys/wl_cfg80211_hybrid.c 2022-12-12 00:35:47.854975024 +0000 +--- a/src/wl/sys/wl_cfg80211_hybrid.c ++++ b/src/wl/sys/wl_cfg80211_hybrid.c @@ -105,14 +105,28 @@ static s32 wl_cfg80211_get_tx_power(stru static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, s32 *dbm); #endif diff --git a/net-wireless/broadcom-sta/files/017-handle-new-header-name-6.12.patch b/net-wireless/broadcom-sta/files/017-handle-new-header-name-6.12.patch new file mode 100644 index 000000000000..f9906f16aeb0 --- /dev/null +++ b/net-wireless/broadcom-sta/files/017-handle-new-header-name-6.12.patch @@ -0,0 +1,33 @@ +https://bugs.gentoo.org/947928 + +Adds support for the new name of the asm/unaligned.h header file for kernels >=6.12.0 (header file was renamed to "linux/unaligned.h") +Bug found by Sam Petch +Patch by Sam Petch + +TESTING DETAILS: + +Bugfix tested by Sam Petch on kernels: gentoo-sources:6.6.67, gentoo-sources:6.12.4-r1, gentoo-sources:6.12.9 + +Patch tested on kernels: gentoo-sources:6.6.67, gentoo-sources:6.12.9 + +Bugfix and patch tested on device: 2012 Macbook Pro (A1278) running Gentoo Linux with Gnome Desktop / OpenRC profile + +Chipset: BCM4331 (Broadcom) + +Contact: sam.petch.recall824@passinbox.com + +--- a/src/wl/sys/wl_linux.c ++++ b/src/wl/sys/wl_linux.c +@@ -56,7 +56,12 @@ + #include <asm/irq.h> + #include <asm/pgtable.h> + #include <asm/uaccess.h> ++ ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 12, 0) ++#include <linux/unaligned.h> ++#else + #include <asm/unaligned.h> ++#endif + + #include <proto/802.1d.h> + diff --git a/net-wireless/broadcom-sta/files/018-broadcom-wl-fix-linux-6.13.patch b/net-wireless/broadcom-sta/files/018-broadcom-wl-fix-linux-6.13.patch new file mode 100644 index 000000000000..940eb7978c53 --- /dev/null +++ b/net-wireless/broadcom-sta/files/018-broadcom-wl-fix-linux-6.13.patch @@ -0,0 +1,27 @@ +From https://gist.github.com/joanbm/72189c81ff67b39d36a660cf00483ccb +From: =?UTF-8?q?Joan=20Bruguera=20Mic=C3=B3?= <joanbrugueram@gmail.com> +Date: Sat, 12 Oct 2024 11:54:40 +0000 +Subject: [PATCH] Tentative patch for broadcom-wl 6.30.223.271 driver for Linux + 6.13-rc1 + +The net/lib80211.h header has been removed by commit +"wifi: ipw2x00/lib80211: move remaining lib80211 into libipw" +(Johannes Berg, 7 Oct 2024). +The header does not appear to be actually used anywhere, so remove it. + + #include <asm/irq.h> + #include <asm/pgtable.h> +--- a/src/include/linuxver.h ++++ b/src/include/linuxver.h +@@ -147,7 +147,7 @@ typedef irqreturn_t(*FN_ISR) (int irq, void *dev_id, struct pt_regs *ptregs); + #include <linux/sched.h> + #endif + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) && LINUX_VERSION_CODE < KERNEL_VERSION(6, 13, 0) + #include <net/lib80211.h> + #endif + #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) +-- +2.47.0 + diff --git a/net-wireless/broadcom-sta/files/019-broadcom-wl-fix-linux-6.14.patch b/net-wireless/broadcom-sta/files/019-broadcom-wl-fix-linux-6.14.patch new file mode 100644 index 000000000000..a431b8f060d8 --- /dev/null +++ b/net-wireless/broadcom-sta/files/019-broadcom-wl-fix-linux-6.14.patch @@ -0,0 +1,40 @@ +From https://gist.github.com/joanbm/b711bafdcb065d57364a701061b902a3 +From: =?UTF-8?q?Joan=20Bruguera=20Mic=C3=B3?= <joanbrugueram@gmail.com> +Date: Sun, 8 Dec 2024 17:57:43 +0000 +Subject: [PATCH] Tentative fix for broadcom-wl 6.30.223.271 driver for Linux + 6.14-rc1 + +Related to the new parameter for get_tx_power introduced in +"wifi: cfg80211: send MLO links tx power info in GET_INTERFACE" +(Rameshkumar Sundaram, 25 Nov 2024). + +As the driver doesn't support Multi-Link, we just ignore it afterwards. +--- a/src/wl/sys/wl_cfg80211_hybrid.c ++++ b/src/wl/sys/wl_cfg80211_hybrid.c +@@ -99,7 +99,10 @@ static s32 wl_cfg80211_set_tx_power(struct wiphy *wiphy, + enum tx_power_setting type, s32 dbm); + #endif + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 14, 0) ++static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, ++ unsigned int link_id, s32 *dbm); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) + static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, s32 *dbm); + #else + static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, s32 *dbm); +@@ -1152,7 +1155,10 @@ wl_cfg80211_set_tx_power(struct wiphy *wiphy, enum tx_power_setting type, s32 db + return err; + } + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 14, 0) ++static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, ++ unsigned int link_id, s32 *dbm) ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) + static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, s32 *dbm) + #else + static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, s32 *dbm) +-- +2.48.1 + diff --git a/net-wireless/dump1090/Manifest b/net-wireless/dump1090/Manifest index 2ee0b1a0e254..29aa4801086a 100644 --- a/net-wireless/dump1090/Manifest +++ b/net-wireless/dump1090/Manifest @@ -3,12 +3,15 @@ AUX dump1090-5.0-further-32bit-fix.patch 1742 BLAKE2B 2cc502d6a88f4dd79a70efca53 AUX dump1090-5.0.confd 927 BLAKE2B 144a8c2f51ba714b7c41a50ae58e893c1cfa2e9494a962c9033201c09fc889411b4b868b16934521709fe7402e593767be77ad6c43c0a4b4a9fba8b231756f58 SHA512 930267650aedb8012c2a92c1555d318789cf29ab42568109a9935a7d83a13fba4482cffff91b27062f74d9fde514e95060e0a53cb9438d39ede292ea9ca15b90 AUX dump1090-5.0.initd 372 BLAKE2B f4e1ca0db565f56c104401b221af77966f499ad00f1fba5c804ee529fbc61fd75149c3d2d503d4a5e119784fcc10998ebbbad80cb09c1a27dba804a0d8a86c24 SHA512 0f9717d3f161658aefcd29f135bd3401bb539a0e83f40fdacf7326b48a96782d211dde1fc9237a822ee3d09a8b5b17ab22da63f6e93aceb526ff22c02eaa300e AUX dump1090-6.1-libdir.patch 586 BLAKE2B 20d358289b55e9f1ae11904b74035b8f1ba61061c741e7b71bf449350b255a630c1468b604f1ac98e02632346f26c5f8d7f34a00765e1b1a73dd232ab0a39e6d SHA512 470d8840b3da26f2bbb8be24f36ba17457a28d9b63080ea1483693b78e86ca38f69687a45209baf6767bac1e206bf62bd392024e9963926d4044fcf88e1fc5c6 +AUX dump1090-9.0-gcc14.patch 779 BLAKE2B 9e37dd486892990a0373e064b51ee08cb410ace7a988e9eb7a21c76440d4de0433c88c67445bbc0d8d799c8b70cdc76c33884ed00505756a7a2a3d99badeb213 SHA512 54970b9e25dc6963e81d1309f5f45abefbe875eb8be54ff3b825fcfd44121368525c57409207258d5af7f97454a888f875dc1dc6f1e6f5fdd33b70a7bd0bc963 AUX tmpfilesd-dump1090-5.0.conf 212 BLAKE2B 081b8340377a40adbb3a9dfa87ede06729979ad50a138cb3caf6b0dac55203222df6c71714103c096b6fbdcd2b115dd2c40bd767b7e5ff1dd0360addc021882a SHA512 d44170620addbc3590d524ae540c38be31115d22f69fd55a075877ab482c0bbcdfe86e2eac3c3007c5476408c18623a0e179fadd2247beab01d1df296d7467b6 DIST dump1090-4.0.tar.gz 6663754 BLAKE2B bf0a6c8dfd8b2da5ed0e7ae5f7b862c57a54e5d48bc24b29e42ebffec4e0606604fbe4b8502e85df60a3a618568bf9e2eba88e5ad2fdec7fb93043b823435362 SHA512 97dc872e4d0ac8df2f46e17b590e970a62a78baf81e18a9beeb23d37a4401a2e52591ca96cc01e1465b22aa234cf9e88f84a7b0f27d0144b3afeac62f6252c95 DIST dump1090-5.0.tar.gz 10124422 BLAKE2B d6b26a444f73cccd002558b6863431537078e1fe9f61e4e240d4a5f06181b9ff713387aad623c2ee8257c2568bd4dd373746606c356ac3ff0f27f411d4949997 SHA512 1104982308db788993bf5dc130a5ca369c8bfaaae56cd5a435bbd22ed99b0633594789334d7f256bad2b288c4906923baf8bc73e2f7b7f9f52f7068b9b519142 DIST dump1090-6.1.tar.gz 9879362 BLAKE2B 716c1abe6df7958fb5ec94c35ed6af75fdb6180a56cdfba72443a7b34d1614cede6ec29aaac22a1e15f31d05bf1d1971eebccdff21cf9442ae69617e7c535ae6 SHA512 5f20d52f1fda754e33774faab852252d802ae5da8694e768cbf92df56f7693cd2da788df9e0a422f1801603e62498fb0af0143f5ea3292e9d607296cd5983dc2 +DIST dump1090-9.0.tar.gz 5743616 BLAKE2B 3276075d441f7d410b63fc08b702102637b3c95b0ec5ed3dbd1ea93ecd6af1e322929842db398a23e9e2bca690e601e8bb1916b9998fce1cc80194ca83484dbf SHA512 07408c5680e626eccd3f74d35a6e8a7538dfffd31675f036580003dbba2a78f2487e1980d72d3ec7e44d3f94880e3f231ab1c97bd99ba1ca6cdcfa0ebf198aff EBUILD dump1090-4.0.ebuild 1250 BLAKE2B acd1dc457eced589b99528333cdbfa5bb0c29bacac3cb0eb18c6daaa902f3c5f498c7c6a6810c83f92155b87f6e3511fd87d1dff51fb46e462b48af47fa66948 SHA512 27c238ddb2d0d2223f1cbc286c0bf6860706d6ef6c76902af25c3c542deb6382ac71c5ab2f9b8576b2d0906633bd1acb72b6ba870f8cb62b9b353d96818cc5d9 EBUILD dump1090-5.0.ebuild 2626 BLAKE2B dececa48e1b48005a4855cd056977490a1e0d6bdc412463b777ad006e3c96f74648e17362801b74ee9b751e38d58ff184390bd3c1142f8699b909677fc25c73d SHA512 36765019ee228703a9fc6798323323cf685a5647c8bac66557e095203b7e3ea3042ef8e7ee62f0d8897a53d09e5f90120a4a642ed4a2c0fb1e6b434a4dd513c1 EBUILD dump1090-6.1.ebuild 2584 BLAKE2B 280a8fe7401ad4d049970e1c62cf012e9adf91594c87b3f751b71074d65860b293dcda6415d64e83036c8335ac63f710f7a4f3637d3c2809c8a782e9f36bff48 SHA512 b13fa3e352ff4a4a859ae0ef8ace3597f72902a53752f9a69ad932f44289c30a66b2a6b366194a2110902aa70e26909ebe33bc0afc417750165c8a686b3cc37d -EBUILD dump1090-9999.ebuild 2535 BLAKE2B 5560a564b3dbf4e3d89441afa783aa9f00e463dc68e11a3f6036ee18e81844477f3aaa79330ac61da5c381f81f355bd67e90e4b70e2fa987eb52d317ce555cd4 SHA512 e4f883236856a078c28fadddab095a2da894ad165ff0a200fdefd94b33dc3b1d54c0afc8942ae36fdfb1683e48ff977cc1fc0b8dd03703be8ec6d069abc49743 -MISC metadata.xml 658 BLAKE2B 6dd0aec90915a420b69849188a8b29211db8cad5824442d4c1d1c07cf1bd88c4d477a3fa35481b745c2dbfd7ea1c8459751cc2c037932430d230a6f24ccfbb64 SHA512 fb0c280c0bf81c614f91ff9a4dad532ac61db9419c48e335e86ed37a592183fd8181fe0f6ade7e165a16e734b1be50b05db57efc1f1b27c01ec38be68565a61d +EBUILD dump1090-9.0.ebuild 2494 BLAKE2B 71461fe76e6cb02b0e2fd6fd947d2e552f6e5f593528022b5a3ab4a66bb487bba75a976d82c0aac4044af15aff6ce80cfadee5455f5706b35be364dba501aea6 SHA512 527df3ac55e4d0face363f0d8afc9c8e5a205c08082a0b2d014f0a5d81481b683f393d85afe675dac09646c93e0853a524376e01e603ede2220204e714da02ac +EBUILD dump1090-9999.ebuild 2494 BLAKE2B 71461fe76e6cb02b0e2fd6fd947d2e552f6e5f593528022b5a3ab4a66bb487bba75a976d82c0aac4044af15aff6ce80cfadee5455f5706b35be364dba501aea6 SHA512 527df3ac55e4d0face363f0d8afc9c8e5a205c08082a0b2d014f0a5d81481b683f393d85afe675dac09646c93e0853a524376e01e603ede2220204e714da02ac +MISC metadata.xml 770 BLAKE2B 1103e032746ddcf4246c232a9a4b5160a7939f1b15b8899c4c62bf1f0cebd19bc2d466971d41ea41d2cdafe48ac30b413d080fc37f68f70fa4567c6e0013e6f0 SHA512 055c05533ab883057a22113d861c236fe7f0bcfc28b90e1893638bdd5267575ef18fbaf509c85835f9ac0c686e239694563aa71bc07c2ae00fc12f64b7d5e567 diff --git a/net-wireless/dump1090/dump1090-9.0.ebuild b/net-wireless/dump1090/dump1090-9.0.ebuild new file mode 100644 index 000000000000..b61294afb217 --- /dev/null +++ b/net-wireless/dump1090/dump1090-9.0.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit tmpfiles toolchain-funcs + +DESCRIPTION="Simple Mode S decoder for RTLSDR devices" +HOMEPAGE="https://github.com/flightaware/dump1090" + +if [[ ${PV} == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/flightaware/${PN}.git" +else + KEYWORDS="~amd64 ~x86" + SRC_URI="https://github.com/flightaware/dump1090/archive/v${PV}.tar.gz -> ${P}.tar.gz" +fi + +LICENSE="BSD GPL-2+" +SLOT="0" +IUSE="bladerf hackrf minimal +rtlsdr" + +DEPEND=" + sys-libs/ncurses:=[tinfo] + bladerf? ( + net-wireless/bladerf:= + virtual/libusb:1 + ) + hackrf? ( + net-libs/libhackrf:= + virtual/libusb:1 + ) + rtlsdr? ( + net-wireless/rtl-sdr:= + virtual/libusb:1 + ) +" +RDEPEND="${DEPEND}" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/${PN}-6.1-libdir.patch + "${FILESDIR}"/${PN}-9.0-gcc14.patch +) + +src_prepare() { + default + + sed \ + -e '/CFLAGS/s# -O3 -g -Wall -Wmissing-declarations -Werror -W # #' \ + -e "/LIBS_CURSES/s#-lncurses#$($(tc-getPKG_CONFIG) --libs ncurses)#" \ + -i Makefile || die +} + +src_compile() { + myemakeargs=( + BLADERF="$(usex bladerf)" + CC="$(tc-getCC)" + CPUFEATURES="yes" + HACKRF="$(usex hackrf)" + LIMESDR="no" + RTLSDR="$(usex rtlsdr)" + ) + + emake "${myemakeargs[@]}" +} + +src_install() { + dobin dump1090 view1090 + + # DSP config files for bladeRF + if use bladerf; then + insinto usr/share/dump1090/bladerf + doins bladerf/* + fi + + newtmpfiles "${FILESDIR}"/tmpfilesd-dump1090-5.0.conf dump1090.conf + newconfd "${FILESDIR}"/dump1090-5.0.confd dump1090 + newinitd "${FILESDIR}"/dump1090-5.0.initd dump1090 + + einstalldocs + + if use !minimal; then + # Install tools + insinto /usr/share/dump1090 + doins -r tools + + # Install lighthttps example files + insinto /usr/share/dump1090/lighttpd + doins debian/lighttpd/{88-dump1090-fa-statcache.conf,89-skyaware.conf} + + # Some tooling expects the -fa variant directory to contain the files + dosym ../../usr/share/dump1090 /usr/share/dump1090-fa + + # Install html docs + docinto html + doins -r public_html/* + + # See README.md for how to use custom wisdom files + exeinto /usr/share/dump1090/wisdom + doexe debian/generate-wisdom + insinto /usr/share/dump1090/wisdom + doins wisdom.* + doins wisdom/wisdom.* + + # For /etc/dump1090-fa/wisdom.local + keepdir /etc/dump1090-fa/ + + # Tooling to generate custom wisdom: + exeinto /usr/libexec/dump1090 + doexe starch-benchmark + fi +} + +pkg_postinst() { + tmpfiles_process dump1090.conf +} diff --git a/net-wireless/dump1090/dump1090-9999.ebuild b/net-wireless/dump1090/dump1090-9999.ebuild index 04ee546dcf91..b61294afb217 100644 --- a/net-wireless/dump1090/dump1090-9999.ebuild +++ b/net-wireless/dump1090/dump1090-9999.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 inherit tmpfiles toolchain-funcs -DESCRIPTION="simple Mode S decoder for RTLSDR devices" +DESCRIPTION="Simple Mode S decoder for RTLSDR devices" HOMEPAGE="https://github.com/flightaware/dump1090" if [[ ${PV} == *9999 ]] ; then @@ -16,84 +16,102 @@ else SRC_URI="https://github.com/flightaware/dump1090/archive/v${PV}.tar.gz -> ${P}.tar.gz" fi -LICENSE="BSD" +LICENSE="BSD GPL-2+" SLOT="0" -IUSE="bladerf hackrf +rtlsdr minimal" +IUSE="bladerf hackrf minimal +rtlsdr" DEPEND=" sys-libs/ncurses:=[tinfo] - bladerf? ( net-wireless/bladerf:= virtual/libusb:1 ) - hackrf? ( net-libs/libhackrf:= virtual/libusb:1 ) - rtlsdr? ( net-wireless/rtl-sdr:= virtual/libusb:1 )" + bladerf? ( + net-wireless/bladerf:= + virtual/libusb:1 + ) + hackrf? ( + net-libs/libhackrf:= + virtual/libusb:1 + ) + rtlsdr? ( + net-wireless/rtl-sdr:= + virtual/libusb:1 + ) +" RDEPEND="${DEPEND}" BDEPEND="virtual/pkgconfig" +PATCHES=( + "${FILESDIR}"/${PN}-6.1-libdir.patch + "${FILESDIR}"/${PN}-9.0-gcc14.patch +) + src_prepare() { default - sed -i -e '/CFLAGS/s# -O3 -g -Wall -Wmissing-declarations -Werror -W # #' Makefile || die - sed -i -e "/LIBS_CURSES/s#-lncurses#$($(tc-getPKG_CONFIG) --libs ncurses)#" Makefile || die + + sed \ + -e '/CFLAGS/s# -O3 -g -Wall -Wmissing-declarations -Werror -W # #' \ + -e "/LIBS_CURSES/s#-lncurses#$($(tc-getPKG_CONFIG) --libs ncurses)#" \ + -i Makefile || die } src_compile() { - emake CC="$(tc-getCC)" \ - BLADERF=$(usex bladerf) \ - RTLSDR=$(usex rtlsdr) \ - HACKRF=$(usex hackrf) \ - CPUFEATURES=yes \ - LIMESDR=no + myemakeargs=( + BLADERF="$(usex bladerf)" + CC="$(tc-getCC)" + CPUFEATURES="yes" + HACKRF="$(usex hackrf)" + LIMESDR="no" + RTLSDR="$(usex rtlsdr)" + ) + + emake "${myemakeargs[@]}" } src_install() { - dobin ${PN} - dobin view1090 - dodoc README.md README-json.md - # DSP config for bladerf + dobin dump1090 view1090 + + # DSP config files for bladeRF if use bladerf; then - insinto usr/share/${PN}/bladerf + insinto usr/share/dump1090/bladerf doins bladerf/* fi - newtmpfiles "${FILESDIR}"/tmpfilesd-dump1090-5.0.conf ${PN}.conf - newconfd "${FILESDIR}"/dump1090-5.0.confd ${PN} - newinitd "${FILESDIR}"/dump1090-5.0.initd ${PN} + newtmpfiles "${FILESDIR}"/tmpfilesd-dump1090-5.0.conf dump1090.conf + newconfd "${FILESDIR}"/dump1090-5.0.confd dump1090 + newinitd "${FILESDIR}"/dump1090-5.0.initd dump1090 + + einstalldocs if use !minimal; then - insinto /usr/share/${PN} + # Install tools + insinto /usr/share/dump1090 doins -r tools + # Install lighthttps example files + insinto /usr/share/dump1090/lighttpd + doins debian/lighttpd/{88-dump1090-fa-statcache.conf,89-skyaware.conf} + # Some tooling expects the -fa variant directory to contain the files - dosym ../../usr/share/${PN} /usr/share/dump1090-fa + dosym ../../usr/share/dump1090 /usr/share/dump1090-fa - # Older HTML - insinto /usr/share/${PN}/html + # Install html docs + docinto html doins -r public_html/* - # Newer HTML - insinto /usr/share/skyaware/html - doins -r public_html_merged/* - - # One of these this should be included into other lighttpd configs - insinto /usr/share/${PN}/lighttpd - # Old style: - doins debian/lighttpd/89-dump1090-fa.conf - doins debian/lighttpd/88-dump1090-fa-statcache.conf - # New style: - doins debian/lighttpd/89-skyaware.conf # See README.md for how to use custom wisdom files - exeinto /usr/share/${PN}/wisdom + exeinto /usr/share/dump1090/wisdom doexe debian/generate-wisdom - insinto /usr/share/${PN}/wisdom + insinto /usr/share/dump1090/wisdom doins wisdom.* doins wisdom/wisdom.* + # For /etc/dump1090-fa/wisdom.local keepdir /etc/dump1090-fa/ # Tooling to generate custom wisdom: - exeinto /usr/libexec/${PN} + exeinto /usr/libexec/dump1090 doexe starch-benchmark fi } pkg_postinst() { - tmpfiles_process ${PN}.conf + tmpfiles_process dump1090.conf } diff --git a/net-wireless/dump1090/files/dump1090-9.0-gcc14.patch b/net-wireless/dump1090/files/dump1090-9.0-gcc14.patch new file mode 100644 index 000000000000..25e5ea8e4ce0 --- /dev/null +++ b/net-wireless/dump1090/files/dump1090-9.0-gcc14.patch @@ -0,0 +1,24 @@ +Fix -Werror=calloc-transposed-args error with gcc 14. + +--- dump1090-9.0-origin/adaptive.c ++++ dump1090-9.0/adaptive.c +@@ -195,7 +195,7 @@ + adaptive_burst_window_remaining = adaptive_samples_per_window; + adaptive_burst_window_counter = 0; + +- adaptive_range_radix = calloc(sizeof(unsigned), 65536); ++ adaptive_range_radix = calloc(65536, sizeof(unsigned)); + adaptive_range_state = RANGE_RESCAN_UP; + + // select and enforce gain limits +--- dump1090-9.0-origin/net_io.c ++++ dump1090-9.0/net_io.c +@@ -104,7 +104,7 @@ + { + struct net_service *service; + +- if (!(service = calloc(sizeof(*service), 1))) { ++ if (!(service = calloc(1, sizeof(*service)))) { + fprintf(stderr, "Out of memory allocating service %s\n", descr); + exit(1); + } diff --git a/net-wireless/dump1090/metadata.xml b/net-wireless/dump1090/metadata.xml index c06f9ae821ad..77285a4f188c 100644 --- a/net-wireless/dump1090/metadata.xml +++ b/net-wireless/dump1090/metadata.xml @@ -5,11 +5,15 @@ <email>radio@gentoo.org</email> <name>Radio</name> </maintainer> + <maintainer type="person"> + <email>conikost@gentoo.org</email> + <name>Conrad kostecki</name> + </maintainer> <use> <flag name="bladerf">Build with Nuand BladeRF support</flag> <flag name="hackrf">Build with Great Scott Gadgets HackRF support</flag> - <flag name="rtlsdr">Build with Realtek RTL2832U (rtlsdr) support</flag> <flag name="minimal">Exclude all HTML/webserver extras for a tiny build, e.g. to export data only</flag> + <flag name="rtlsdr">Build with Realtek RTL2832U (rtlsdr) support</flag> </use> <upstream> <remote-id type="github">flightaware/dump1090</remote-id> diff --git a/net-wireless/kismet/Manifest b/net-wireless/kismet/Manifest index c7fe982996ac..185e5b1d9307 100644 --- a/net-wireless/kismet/Manifest +++ b/net-wireless/kismet/Manifest @@ -7,7 +7,7 @@ AUX kismet.initd-r3 332 BLAKE2B e3d4987a41acf7b76aa0a08da7d11bb7c49807a5f60e4540 DIST kismet-2022-08-R1.tar.xz 10700692 BLAKE2B 9f6b3a651eca34b90e34b8a8357be493a8966cdd5c54f5f1c38383cc3ad74f2c78ab265df882b0a5b985bed98ad61f4741ead7b443d9b79f2769ca7edc72427f SHA512 befca2dcd7016d96a17e97babbd6d88195fa61750ed616d104d10a85828ec160672c33bd2a1eae554d375feb55ea45a040a3e53c4410a3ff8c9bfa4b5c8bcdb1 DIST kismet-2023-07-R1.tar.xz 11144120 BLAKE2B c43f0665c784ff9245289e624e23cb3eb4ffcb79f050deede50129cf6b07662e817f9c9aaf6cc608395045b5b449b87d22ff314d7dbc8f04b29db2df86dc5f84 SHA512 b8b320b8e09be5be582848ce8a1a66f71a96eccc3c78f52d3f1f18122abbe614ff3b5a55b5fcedf3e6a1fc959a72838adc0d7278ffd6c25a1c179a1caf5584ce DIST kismet-2023.07.1-stdint-fix.patch 144077 BLAKE2B 77a4ca3da4ed54e567d21c7d8d0a718751802827bcefc1122318c989cde93a2132753c910e6f503e74dac30024111edc788d9df65ef4c4749ab918485d818ee3 SHA512 cb9220cdd5e14d030ef303e28a32dced61916ff64aa5960c412c2355c1b714dc423e34b33ef701e1daa2a22c9562a85a739dc130c4ec5761924338ffb462286b -EBUILD kismet-2022.08.1-r2.ebuild 6221 BLAKE2B de706cf2d1dd2f152c2f67c6fffbfe955bd4e7b8b977195a2e5934f654015356f3ee4141cad98319a407953b0233c5a445643be26087766633b8e0dda3bc0bbb SHA512 01a49a7ce814ea1bc18aaae92987542000cb4f72b9c5a9d5a94ba211d151c72a2c901107490dc4db4b9ad3304ff92e6acf4a3813cd9157a9032a73c667d08c98 +EBUILD kismet-2022.08.1-r2.ebuild 6217 BLAKE2B e4e4455a37f4903529bfaf14d8bd5b8813abf9bd232f9db8f221e69901d26aba55e923ca7723a4888119f6a3f64fd05df7ad21e37690f92871c71db782e6b70d SHA512 a05e823d4a60a48396c9c55dd2ce46726e973548da3c55a881dbd41075e6aea2a56b8916b6dc5fe5fb5781b80b0ea8e1f8ce721f1f53033d0e38df9592c0780d EBUILD kismet-2023.07.1-r1.ebuild 6053 BLAKE2B 67901b98264964d78a6942ed9d7d63687b07c15559b83aae8b7d4209c47c8d83b0c45c99499750cdc0ca6b31384963db84f80f49d64d98ba1c7bbe59eb29b909 SHA512 eb54d32c983a8d083b0e62c78f6f5da164e8d3d398c5cad3032e121d81019d97ba49199560c0647f97d7313ae2a50caed821fbea528652e63e4a8b2c7e5024fc EBUILD kismet-9999.ebuild 5941 BLAKE2B bae04efd1b0c4fee42f70dbf18454f29e92979ab1208799793107ae57d5a80c5a8f10c9697e1634d19406535139148ab76c9eb9e09716badfa69707bc4946c30 SHA512 dab579b64f24977e0e1054d0c1acc3d111746b579ca7f97002003516f4e2eab41f55b030b18af46c7f5b7855d76456d01b582e19080b4931ec8b060e38ea7a1a MISC metadata.xml 1177 BLAKE2B f53196e9d3a504d77a0a272bb5c189f7a662003661727f8a66b38ed387f7358c01dd27f2c0d7ec49b2069c2004fd7d5dd921f971c4989cf49363d226802928fe SHA512 65ef90c42e4c6cc6581ca533705114bae2e35c6e04e3011e88496c79aca30ebc3dfe85873e0935835577e2bd74fe199206247214f1a29842cdf3c20b6bf4001e diff --git a/net-wireless/kismet/kismet-2022.08.1-r2.ebuild b/net-wireless/kismet/kismet-2022.08.1-r2.ebuild index 3cdf4407a7e8..271645980ba9 100644 --- a/net-wireless/kismet/kismet-2022.08.1-r2.ebuild +++ b/net-wireless/kismet/kismet-2022.08.1-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -110,7 +110,7 @@ src_prepare() { # log_tools/kismetdb_to_wiglecsv.cc trackedcomponent.h \ # trackedelement.h trackedelement_workers.h - eapply_user + default if [ "${PV}" = "9999" ]; then eautoreconf diff --git a/net-wireless/rtl-sdr/Manifest b/net-wireless/rtl-sdr/Manifest index 7b5f13c7552d..8d288055c494 100644 --- a/net-wireless/rtl-sdr/Manifest +++ b/net-wireless/rtl-sdr/Manifest @@ -1,7 +1,14 @@ AUX rtl-sdl-0.6.0_p2020802-fix-pkgconfig-libdir.patch 423 BLAKE2B 885b014e776f0342d147e066b879d251a99850f86c907f573e7c89364bf04b2103de95c66c866dd6572c71ab91506760e72e9fb5a7777dcb637c3062562c061c SHA512 f559e5d72b36f9abe689e4726fb6b0b1ab571796acbca02d8b49d5e568f567fbd73579c3b8f0cfe343cd442dc7141d7743f9ba0a795f66e791239f65cb4859d0 +AUX rtl-sdr-2.0.2-disable-static.patch 2334 BLAKE2B 018fb65f7aa67c2b77c19a0b01f9c670669f116cf7c482669355ed6e3b2d712a7b099ed727215e23762a84ae636af249f30d632ac7d6da55c6f70ec47d49c1e9 SHA512 0f135e5f7f563f5b6cd168c0ab81f2a6bf2fffdd508a496fc97ef04b2bec4b7a528296a9d2e67811decde5d8fe606fa268384f7aed13ba5b74d1377a454ccb7b +AUX rtl-sdr-2.0.2-pkgconfig-libdir.patch 320 BLAKE2B 2ab264947e23c7f0a7b2765133e417d24028946f206792c2cba31fffb063725cf4878bc43cebdc72d1068392dd0e82f3f33c16df146b23db7a2fbf7a1df094a5 SHA512 606c690278d6641c57c2fb3a75557e810e392a3b02d974fc188315d12f6105a43aa76a5328b9dff1d7ef079ef7b96965483e18d01ef7aadd6161e8ea6402b213 +AUX rtl-sdr-2.0.2-udev-rules-path.patch 277 BLAKE2B dfbccf26802f83802fa295f658b3be4ea97908682c1e963c0d2c0e04583f65ff7e85da3c43347fa6db2920c2f1025d1bcb34a9c6647b5c69e7507df12a08339b SHA512 817a82c12f54c69e5695a4c1c1b28690accba475baee642e532c5d11c6cf98b4ddb79cdff56e69f0bebb774beac68d3e6400b6f20ec92fedcc0907003e16fd62 AUX rtl_tcp.confd 138 BLAKE2B 04df300f0add96490ab861d99301b53ae45d414891f808780f79ef7c6c1cd7b0a48696510933b0cb8fc04c65ef4b2cd23109bcf266472225a8ee4a2ff430d404 SHA512 48324164cc7adab2e7c7f44b45a3a590ef9bcb161b4f6b22a94b4c4abf989b353a37c7b28ad1d81ffdff96dda84c10ba36bc9948f70a6b1f1c767394dc03ab77 +AUX rtl_tcp.confd-r1 310 BLAKE2B 2b352e54c507fd14c53ec4b164563420674f71e7a4f10819bbd4dc1fe1ed52fbec91f1bb4553e543bb59c6d4897bc1f707a78676ed6fed360c27797d6923d9a1 SHA512 33a2afc074f27f3440e4664d2c51492a0c86c51d03383034d6c52ee7addef247896bfbe31803882858bc526b5b36f0110e674e1af6e42595a11336713055d9f2 AUX rtl_tcp.initd 483 BLAKE2B 1e2feb9f481677792319b60fa99d0a2ed5c4a489c85c97a3a0e54e65fc8fe0c4b1ed8c1c6d4ea5991736fa232d26bb17b3e31fa8e6d01c111ec4ccae4c9df924 SHA512 7ac01b0568b1c12e906ae0d102708070b9aacca97d590b61d80125dac9f84587438fe5b582765552d37b0a9b730e00fca8894f8d5ff0c6a518fa2fb5dd4fb407 +AUX rtl_tcp.initd-r1 306 BLAKE2B 8c6376b8bd3665500372f3705283b19a6e75feb6a878bcd3a43a99d44508fe739a0d39d87f6382217946958731c2c492b8ebaaea0880ce9eb242523950653757 SHA512 5f2ab517d045d5c7ef74b0ef44452c03160c160b4cdf2ffffdcbf14586f9b1e3b73a9045a0da4ffacc369f2eb72a6b3c469e4a3a1fff8762edc37a3342fbde8e DIST rtl-sdr-2.0.1.gh.tar.gz 135727 BLAKE2B 46bb64e2e35d5f6164acb15b0b1e4c0c988bac8de8fd494faec85f4d36f2db3f73ebb0dc46ce42d4b2ff00a9025f145259aeff25563dd82623c2a3502cda1059 SHA512 ed7b84f05d524d89afc1db384a4e1c4bb2a66e9c6b42623ab42ac9d55829bde77eb12529044e1778664b5a97a48dc5b64bed19161a430c9d91c04dd08cb6b7ac +DIST rtl-sdr-2.0.2.gh.tar.gz 136512 BLAKE2B 48c8ed688f7eb1fce9400accfef3e7762fc40bb5c4e578bf19fdbb7c90bce55dcd1606d57d656c5860fd26e86fc70cae499e9e981695985571a6d51bb2ddd96b SHA512 20a1630df7d4da5d263c5ffd4d83a7c2a6fc674e3838bf02b2b59c1da8d946dafc48790d410ab2fcbc0362c2ac70e5cdcae9391c5f04803bf2cdddafd6f58483 EBUILD rtl-sdr-2.0.1.ebuild 1327 BLAKE2B 3e650039eb13750a6d839d08ecac461d33956cef401189d4ac0f82f52ce89e56fe270226788a1d442ab568473610c41f3d79a57f270d9e14bd57f96590538eb3 SHA512 d984fe47a11c1d12fc0dd0bb9f63c85010cb12a5d4faedbc50d9fc72bce017f829d099d14c1d6d16a8f279075a7e8c5ba62cd8cd874bf546bdadf5346d68904c -EBUILD rtl-sdr-9999.ebuild 1326 BLAKE2B fef6bfecfdedaf2985473de624f2ea327788a466fb0dacbfffa6a886afb2b1fa0126b23014205d46ed862c7a3e507f7389b1c5d789a63aa5436fdb0d15b827b7 SHA512 186f7941c67a262534086388e61f0590d1f6398c33f2579bf9ccd27fcc19d161f37be8466ba3897b9c77814d16badeeba9ba31b055ec6dfede67cd74c03b812b -MISC metadata.xml 407 BLAKE2B 0d901e2279b5c54a094be851b6e0997d422e32224fb1f5032185a6ddeaadf12b5cc445813d1e8526a1c9920546fca2149045656401f69e45493ad1aa2f034da4 SHA512 5d04dd4d2f97dfa558a7313c60437d60527aa0c00009e7c274223374a7271f576af83b374948f36e788c3710077bb3b10a1dab26dbd74d7d3cd67d834bbd9d5d +EBUILD rtl-sdr-2.0.2.ebuild 1265 BLAKE2B 83835aa215c9537681d9526317ab983d07dbd54c67979d1b7edd5f5f035881005a7bc61eb49a82a2bd66cf30976f3d472c4e624af8d2cd1456c8a0433a404adb SHA512 2d3e8c28557144f84a72c6496f207d014ca4975a3d317aa26a9054472f4c108a32b8442221e0d56f51a34706ba66b909748efe2097eaee2cfa7e4cc6fdd29f68 +EBUILD rtl-sdr-9999.ebuild 1265 BLAKE2B 83835aa215c9537681d9526317ab983d07dbd54c67979d1b7edd5f5f035881005a7bc61eb49a82a2bd66cf30976f3d472c4e624af8d2cd1456c8a0433a404adb SHA512 2d3e8c28557144f84a72c6496f207d014ca4975a3d317aa26a9054472f4c108a32b8442221e0d56f51a34706ba66b909748efe2097eaee2cfa7e4cc6fdd29f68 +MISC metadata.xml 518 BLAKE2B d025587eab3ccb4e572e2db6d88018fae57f674fc174a37a558bd3fca51036af4f7dcf25dae8ae3d3b833965b8c52c230cc6c648967b3df10056d9bbdbf6e4dd SHA512 4f59f9145db46caca3c9e545e436ed95a130486dfca5914ffbb37603af49244a6d2f7df40f318a1137cf1e414c591781ebccd2d9ed7b0ec275f816553e0d8501 diff --git a/net-wireless/rtl-sdr/files/rtl-sdr-2.0.2-disable-static.patch b/net-wireless/rtl-sdr/files/rtl-sdr-2.0.2-disable-static.patch new file mode 100644 index 000000000000..aff87deed756 --- /dev/null +++ b/net-wireless/rtl-sdr/files/rtl-sdr-2.0.2-disable-static.patch @@ -0,0 +1,55 @@ +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -34,25 +34,6 @@ + generate_export_header(rtlsdr) + + ######################################################################## +-# Setup static library variant +-######################################################################## +-add_library(rtlsdr_static STATIC librtlsdr.c +- tuner_e4k.c tuner_fc0012.c tuner_fc0013.c tuner_fc2580.c tuner_r82xx.c) +-target_link_libraries(rtlsdr ${LIBUSB_LIBRARIES} ${THREADS_PTHREADS_LIBRARY}) +-target_include_directories(rtlsdr_static PUBLIC +- $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/include> +- $<INSTALL_INTERFACE:include> # <prefix>/include +- ${LIBUSB_INCLUDE_DIRS} +- ${THREADS_PTHREADS_INCLUDE_DIR} +- ) +-set_property(TARGET rtlsdr_static APPEND PROPERTY COMPILE_DEFINITIONS "rtlsdr_STATIC" ) +-if(NOT WIN32) +-# Force same library filename for static and shared variants of the library +-set_target_properties(rtlsdr_static PROPERTIES OUTPUT_NAME rtlsdr) +-endif() +-generate_export_header(rtlsdr_static) +- +-######################################################################## + # Set up Windows DLL resource files + ######################################################################## + IF(MSVC) +@@ -63,7 +44,6 @@ + ${CMAKE_CURRENT_BINARY_DIR}/rtlsdr.rc + @ONLY) + target_sources(rtlsdr PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/rtlsdr.rc) +- target_sources(rtlsdr_static PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/rtlsdr.rc) + ENDIF(MSVC) + + ######################################################################## +@@ -94,7 +74,7 @@ + add_executable(rtl_adsb rtl_adsb.c) + add_executable(rtl_power rtl_power.c) + add_executable(rtl_biast rtl_biast.c) +-set(INSTALL_TARGETS rtlsdr rtlsdr_static rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power rtl_biast) ++set(INSTALL_TARGETS rtlsdr rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power rtl_biast) + + target_link_libraries(rtl_sdr rtlsdr convenience_static + ${LIBUSB_LIBRARIES} +@@ -163,9 +143,6 @@ + install(TARGETS rtlsdr EXPORT RTLSDR-export + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} # .so/.dylib file + ) +-install(TARGETS rtlsdr_static EXPORT RTLSDR-export +- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} # .so/.dylib file +- ) + install(TARGETS rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power rtl_biast + DESTINATION ${CMAKE_INSTALL_BINDIR} + ) diff --git a/net-wireless/rtl-sdr/files/rtl-sdr-2.0.2-pkgconfig-libdir.patch b/net-wireless/rtl-sdr/files/rtl-sdr-2.0.2-pkgconfig-libdir.patch new file mode 100644 index 000000000000..831fc0063947 --- /dev/null +++ b/net-wireless/rtl-sdr/files/rtl-sdr-2.0.2-pkgconfig-libdir.patch @@ -0,0 +1,11 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -174,7 +174,7 @@ + set(prefix "${CMAKE_INSTALL_PREFIX}") + set(exec_prefix \${prefix}) + set(includedir \${prefix}/include) +-set(libdir \${exec_prefix}/lib) ++set(libdir \${exec_prefix}/${CMAKE_INSTALL_LIBDIR}) + + CONFIGURE_FILE( + ${CMAKE_CURRENT_SOURCE_DIR}/librtlsdr.pc.in diff --git a/net-wireless/rtl-sdr/files/rtl-sdr-2.0.2-udev-rules-path.patch b/net-wireless/rtl-sdr/files/rtl-sdr-2.0.2-udev-rules-path.patch new file mode 100644 index 000000000000..e164bc553956 --- /dev/null +++ b/net-wireless/rtl-sdr/files/rtl-sdr-2.0.2-udev-rules-path.patch @@ -0,0 +1,11 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -113,7 +113,7 @@ + if (INSTALL_UDEV_RULES) + install ( + FILES rtl-sdr.rules +- DESTINATION "/etc/udev/rules.d" ++ DESTINATION "/lib/udev/rules.d" + COMPONENT "udev" + ) + else (INSTALL_UDEV_RULES) diff --git a/net-wireless/rtl-sdr/files/rtl_tcp.confd-r1 b/net-wireless/rtl-sdr/files/rtl_tcp.confd-r1 new file mode 100644 index 000000000000..653d292de3cd --- /dev/null +++ b/net-wireless/rtl-sdr/files/rtl_tcp.confd-r1 @@ -0,0 +1,7 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Options which will be passed to rtl_tcp. +# Default is listen on localhost with default port 1234 on first device. +# See `rtl_tcp -h` for all available options. +RTL_TCP_OPTIONS="-a localhost -d0 -p 1234" diff --git a/net-wireless/rtl-sdr/files/rtl_tcp.initd-r1 b/net-wireless/rtl-sdr/files/rtl_tcp.initd-r1 new file mode 100644 index 000000000000..6dd8f795e190 --- /dev/null +++ b/net-wireless/rtl-sdr/files/rtl_tcp.initd-r1 @@ -0,0 +1,11 @@ +#!/sbin/openrc-run +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +error_log="/var/log/rtl_tcp.log" +pidfile="/run/rtl_tcp.pid" +output_log="/var/log/rtl_tcp.log" + +command="/usr/bin/rtl_tcp" +command_background="true" +command_args="${RTL_TCP_OPTIONS}" diff --git a/net-wireless/rtl-sdr/metadata.xml b/net-wireless/rtl-sdr/metadata.xml index cacbce26183d..67d416851e57 100644 --- a/net-wireless/rtl-sdr/metadata.xml +++ b/net-wireless/rtl-sdr/metadata.xml @@ -5,6 +5,10 @@ <email>radio@gentoo.org</email> <name>Radio</name> </maintainer> + <maintainer type="person"> + <email>conikost@gentoo.org</email> + <name>Conrad Kostecki</name> + </maintainer> <use> <flag name="zerocopy">may cause a bus error on some ARM systems</flag> </use> diff --git a/net-wireless/rtl-sdr/rtl-sdr-2.0.2.ebuild b/net-wireless/rtl-sdr/rtl-sdr-2.0.2.ebuild new file mode 100644 index 000000000000..846819c0a2da --- /dev/null +++ b/net-wireless/rtl-sdr/rtl-sdr-2.0.2.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake udev + +DESCRIPTION="Turns your Realtek RTL2832 based DVB dongle into a SDR receiver" +HOMEPAGE="https://sdr.osmocom.org/trac/wiki/rtl-sdr" + +if [[ ${PV} == 9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://git.osmocom.org/${PN}" +else + SRC_URI="https://github.com/osmocom/rtl-sdr/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" +fi + +LICENSE="GPL-2+ GPL-3+" +SLOT="0" +IUSE="+zerocopy" + +RDEPEND="virtual/libusb:1" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-2.0.2-disable-static.patch" + "${FILESDIR}/${PN}-2.0.2-pkgconfig-libdir.patch" + "${FILESDIR}/${PN}-2.0.2-udev-rules-path.patch" + +) + +src_configure() { + local mycmakeargs=( + -DDETACH_KERNEL_DRIVER="ON" + -DENABLE_ZEROCOPY="$(usex zerocopy)" + -DINSTALL_UDEV_RULES="ON" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + newinitd "${FILESDIR}"/rtl_tcp.initd-r1 rtl_tcp + newconfd "${FILESDIR}"/rtl_tcp.confd-r1 rtl_tcp +} + +pkg_postinst() { + udev_reload + elog "Only users in the usb group can capture." + elog "Just run 'gpasswd -a <USER> usb', then have <USER> re-login." +} + +pkg_postrm() { + udev_reload +} diff --git a/net-wireless/rtl-sdr/rtl-sdr-9999.ebuild b/net-wireless/rtl-sdr/rtl-sdr-9999.ebuild index dd2530e97a36..846819c0a2da 100644 --- a/net-wireless/rtl-sdr/rtl-sdr-9999.ebuild +++ b/net-wireless/rtl-sdr/rtl-sdr-9999.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit cmake +inherit cmake udev DESCRIPTION="Turns your Realtek RTL2832 based DVB dongle into a SDR receiver" HOMEPAGE="https://sdr.osmocom.org/trac/wiki/rtl-sdr" @@ -12,41 +12,45 @@ if [[ ${PV} == 9999* ]]; then inherit git-r3 EGIT_REPO_URI="https://git.osmocom.org/${PN}" else - #COMMIT="142325a93c6ad70f851f43434acfdf75e12dfe03" - #SRC_URI="https://github.com/osmocom/rtl-sdr/archive/${COMMIT}.tar.gz -> ${P}.tar.gz" - #S="${WORKDIR}/${PN}-${COMMIT}" SRC_URI="https://github.com/osmocom/rtl-sdr/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz" - KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86" fi -LICENSE="GPL-2+" +LICENSE="GPL-2+ GPL-3+" SLOT="0" IUSE="+zerocopy" -DEPEND="virtual/libusb:1" -RDEPEND="${DEPEND}" +RDEPEND="virtual/libusb:1" +DEPEND="${RDEPEND}" PATCHES=( - "${FILESDIR}"/rtl-sdl-0.6.0_p2020802-fix-pkgconfig-libdir.patch + "${FILESDIR}/${PN}-2.0.2-disable-static.patch" + "${FILESDIR}/${PN}-2.0.2-pkgconfig-libdir.patch" + "${FILESDIR}/${PN}-2.0.2-udev-rules-path.patch" + ) src_configure() { - #the udev rules are 666, we don't want that local mycmakeargs=( - -DINSTALL_UDEV_RULES=OFF - -DDETACH_KERNEL_DRIVER=ON + -DDETACH_KERNEL_DRIVER="ON" -DENABLE_ZEROCOPY="$(usex zerocopy)" + -DINSTALL_UDEV_RULES="ON" ) cmake_src_configure } src_install() { cmake_src_install - newinitd "${FILESDIR}"/rtl_tcp.initd rtl_tcp - newconfd "${FILESDIR}"/rtl_tcp.confd rtl_tcp + newinitd "${FILESDIR}"/rtl_tcp.initd-r1 rtl_tcp + newconfd "${FILESDIR}"/rtl_tcp.confd-r1 rtl_tcp } pkg_postinst() { + udev_reload elog "Only users in the usb group can capture." elog "Just run 'gpasswd -a <USER> usb', then have <USER> re-login." } + +pkg_postrm() { + udev_reload +} diff --git a/net-wireless/uhd/Manifest b/net-wireless/uhd/Manifest index 071e03ceeb4e..4163675f87a2 100644 --- a/net-wireless/uhd/Manifest +++ b/net-wireless/uhd/Manifest @@ -1,5 +1,7 @@ AUX uhd-4.6.0.0-boost-1.85-1.patch 3665 BLAKE2B 1fe78699d1e3c6e2359733ca8ca46ed11cc159f7975a339b7ffc7a3bf91f0b91d031fcaa0c523ae3313c806c8398583ef7b1ec73c41df33bd0fa56c158fd16bf SHA512 db66bfc5af671546d8d7ad2fe0c2d1515846d466d564864e2f9ca9bc4140094944ce997efd03d667d41e5a6e059041b727ff2fc1def7f38fe756a614c346cf29 AUX uhd-4.6.0.0-boost-1.85-2.patch 1155 BLAKE2B 84002da36d755899d3921a68d5748f80cf12a65f289001843bfdc04d6e69e3a3003c75099564d13cc8e8b6e7f8069c677f033d5fdc74469cb2d9de4c9129430c SHA512 0705b4102b3e73a2dd046f2b00d1d8f08f4324c7c9a5c41a9ce1a998c7439b8532cc77d97eeea23b191e5a0bb6c831e9a0d68659bb03f158c2fb8913c4bbaf8e +AUX uhd-4.6.0.0-boost-1.87-1.patch 43586 BLAKE2B ab4bb57eca11c38573103899fc1673efe587c07400cf23503ab018320f1e81310b6bffd3a939e9e7ed39b5f789491d70b981f23bcfc0f85bc91276bfe9feb4c4 SHA512 b6f849e8255d560dc0d28d3d239494a10d381c62de0d4f3626b9793db868de9192e43f14d8fe5456360896a0540266e1c769d4ba5294850f87dd1fc475158092 +AUX uhd-4.6.0.0-boost-1.87-2.patch 941 BLAKE2B ab1bed4e0e0492137893327b05cb29ef5596b4f249f7071df5c61c4319d4d7cf2267a0a83c8fc7fd26dc746f946f90dd0dd71333b9fd291ef5aacf4611d588a0 SHA512 b7cb6acfd7afc9e1eb50c982128bda982f2aba0ccef893416d69fd0543e62211724704b0ec362af02d65a75caec9e549911b02372aa9de498d98bc3cc0b7baff DIST EttusResearch-UHD-4.4.0.0.tar.gz 38210999 BLAKE2B defc2ae91c1422491c0c434f76852c253d84e2bdc43f6768069e23c40803d33aac8f087d51c28037102ab4760c5f3d5e04dc090655ddca26eef3440bf703db61 SHA512 3c9b57dc776e0fadc991ffeede84c2367f7403bfae6fd30a045baf1c9cfb21889310b9a8340a35ea13eea00208bf678cccd7b82e190dfb6b9d61e42bdef3b21a DIST EttusResearch-UHD-4.6.0.0.tar.gz 41235519 BLAKE2B 4a9c9d0064bf52edd4a4a93ee8602eaa61029b5350728431e4e2e17d9f4a06de21c2598a6ffde0832ecfd5a499344d190ba113f1c5d96ffea0a029186f95de87 SHA512 de9bb10e5109bd860a9b2f61841e3ade55fbbc7d8000f385fcdf1c831585c9d25999d159a7da95e3e3f0b74330c1512265994e9aacf00b1b0891f9ba6db58e30 DIST EttusResearch-UHD-4.8.0.0.tar.gz 41358938 BLAKE2B c69af5aabcd7e02290b4a168f319dc43bb6cb277e235407a5ded8eb617fe957ca1326042a892efa7b688cfae52f3c345e0930a614ff59b25c05e8b202d62e82e SHA512 61e92209e69994b1c5d3a2a88f749ddca612a3fa3c1580c00a9577e25fab5055d7c80571f2843cca3951fc941d1a81566bafc21070fb93cb3e566228c46331e7 @@ -7,6 +9,6 @@ DIST uhd-images_4.4.0.0.tar.xz 127558912 BLAKE2B bb7135241c4e39db2450e0fca8c8c6b DIST uhd-images_4.6.0.0.tar.xz 180745328 BLAKE2B f698c68c66e706146cd2163abca10bc2d3660827e2425f395b9096b1ccecdadaf563730912e930e29b6f286dd77a83dc2ab0280e0d55ceb550496de03c208917 SHA512 944a26bea2f11d0df630e14a2a586d07e185e2c9bf40e10ff17cc103a33a8cf32c37b676e15cf55a1c1efd17c82384c7323526aed4b0624fda0b58d39ed487d3 DIST uhd-images_4.8.0.0.tar.xz 180420544 BLAKE2B 5cce16db59c6c78035512e5275ac36b02a5d928104ff77877f8a13a9df64d0bde6c832497675b27a0090debef78ef4c284c48ef3b6169fae3420ca4d87e8209e SHA512 4203e5b7f642d7850e9563ba495a60efe965a64223d9208c780e1400ea755b322125fff53c3f8a3fb010617b57a4da638dc3cf80bf7d95604e20788cc469edb9 EBUILD uhd-4.4.0.0.ebuild 3707 BLAKE2B 0bef82e613b6f7fdfc89487382d5358db8787d53c308431697170c204deb57986e00578bd6a3c648aa57df9449af6e26a362d812c033d334d32273bdba8f2209 SHA512 e55d9be83e3262c094a3087ac77b5db2afff622be05df27a728d4e95affcc3d4a60e25dbf39de8a523d5f4b98e4ac4335e1d841d3744075ef4df82e5da3b500f -EBUILD uhd-4.6.0.0.ebuild 3785 BLAKE2B 053a1491f98f9dd4a0b42654a5e83b92331c962e2094c94991772053a8389d2f9fca8d88a6041440564239a3cff2ee74f360aa8cea921ad68bdea991f23e1870 SHA512 4b1066656133de967249fab37c5369b2cd9ef75a74cd0e5d23a9aa74760a39260e6d7cefdaa061c8b41024b00e99a87b399246b7daca244b0d129922bbc50004 +EBUILD uhd-4.6.0.0.ebuild 3877 BLAKE2B 11e4c123d3092e465f77ddf3a1eb379b74add6878c9d0ed5de0f95be6a42894b2881e4215dd87cc54eaa819356bb5a2061f622e04e02d1b16ce8f5a47f03b343 SHA512 3b3faf2ebfddf03fb7fa2d41a7b29a15abfd78b318af70ed3d6a870372504490b9521c1e00092988afe62ff4d59baf243721ed347259ce0fe53a4255e9cbf360 EBUILD uhd-4.8.0.0.ebuild 3695 BLAKE2B 829a811d04e180dc82d76fc8ca7dba3e70cb5f5489e4f61a1fd7a34935f865a0ecb5d68285c94c035f7e0882e38cd1cc321d7888cd59374875fd5110e54499b0 SHA512 3ade952792eedf5fb946bb4b9374cd3f98931d58bd9cc35bc77b570fefd0248ffc1adf09e83850b6e88c39951683206a2b32b29591ec1f16137106b0e355a1c3 MISC metadata.xml 1112 BLAKE2B 7bf2e25d7618581200731789b4c5ee05c6cd6b33c21a7912b3904ffd53e6948d4d2e36bb071d3f966febb5b3da1523c2316558f66d4297341264d534e08d122f SHA512 ac48857213ada598edec618d0c39fc8faaa2b405444b37958e47dc23068fdd61d80bffb8033b20428f2fa63caf8ca322eb4bb765c59389d4a070fee260dee66d diff --git a/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.87-1.patch b/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.87-1.patch new file mode 100644 index 000000000000..c9f922c22bf0 --- /dev/null +++ b/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.87-1.patch @@ -0,0 +1,938 @@ +https://github.com/EttusResearch/uhd/commit/adfe953d965e58b5931c1b1968899492c8087cf6 +https://bugs.gentoo.org/946371#c12 + +From adfe953d965e58b5931c1b1968899492c8087cf6 Mon Sep 17 00:00:00 2001 +From: Martin Braun <martin.braun@ettus.com> +Date: Tue, 3 Dec 2024 12:05:50 +0100 +Subject: [PATCH] uhd: Update ASIO usage to modern style, compatible with Boost + 1.87 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Starting with Boost 1.66 and the corresponding ASIO version, there were +some changes introduced based on the C++ Networking TS. This includes +changes like replacing io_service with io_context, deprecating some +functions, etc. Starting with Boost 1.87, the old style is no longer +supported. + +This commit updates all usage of ASIO in a way that makes UHD compatible +with future versions of ASIO. However, this makes UHD no longer +compatible with Boost 1.65 and below. + +Summary of changes: +- Replace asio::io_service with asio::io_context +- Replace asio::io_service::strand with + asio::strand<asio::io_context::executor_type> + - This implies using asio::post() instead of asio::strand::post() +- Replace asio::buffer_cast<T>(buf) with static_cast<T>(buf.data()) +- Update resolve(query) with new API +- Replace references to endpoint_iterator with resolver::results_type +- Replace ip::address::from_string() with ip::make_address() + +Co-authored-by: Jörg Hofrichter <joerg.hofrichter@emerson.com> +--- + host/examples/network_relay.cpp | 18 ++++----- + .../uhd/transport/nirio/rpc/rpc_client.hpp | 14 +++---- + .../rpclib/include/rpc/detail/async_writer.h | 12 +++--- + .../include/rpc/detail/server_session.h | 6 +-- + host/lib/deps/rpclib/lib/rpc/client.cc | 24 +++++------ + .../rpclib/lib/rpc/detail/server_session.cc | 23 +++++------ + host/lib/deps/rpclib/lib/rpc/server.cc | 4 +- + .../uhdlib/transport/udp_boost_asio_link.hpp | 2 +- + .../include/uhdlib/transport/udp_common.hpp | 9 ++--- + .../lib/include/uhdlib/utils/eeprom_utils.hpp | 12 +++--- + host/lib/transport/dpdk_simple.cpp | 4 +- + host/lib/transport/if_addrs.cpp | 4 +- + host/lib/transport/nirio/rpc/rpc_client.cpp | 24 +++++------ + host/lib/transport/udp_boost_asio_link.cpp | 2 +- + host/lib/transport/udp_simple.cpp | 19 ++++----- + host/lib/transport/udp_wsa_zero_copy.cpp | 8 ++-- + host/lib/transport/udp_zero_copy.cpp | 4 +- + host/lib/usrp/cores/xport_adapter_ctrl.cpp | 9 ++--- + host/lib/usrp/usrp1/mb_eeprom.cpp | 1 + + host/lib/usrp/usrp2/io_impl.cpp | 12 +++--- + host/lib/usrp/usrp2/mb_eeprom.cpp | 9 ++--- + host/lib/usrp/x300/x300_mb_eeprom.cpp | 32 ++++++++++----- + .../usrp_clock/octoclock/octoclock_eeprom.cpp | 6 +-- + host/tests/eeprom_utils_test.cpp | 40 +++++++++++++++---- + 24 files changed, 164 insertions(+), 134 deletions(-) + +tomjbe@gentoo.org +Modified default capture elements for session.cc according to +https://github.com/EttusResearch/uhd/commit/2dc7b3e572830c71d49ee0648eef445e7f3abfd6 + +diff --git a//examples/network_relay.cpp b//examples/network_relay.cpp +index 9105844523..2387f3b2ab 100644 +--- a//examples/network_relay.cpp ++++ b//examples/network_relay.cpp +@@ -78,21 +78,21 @@ class udp_relay_type + : _port(port) + { + { +- asio::ip::udp::resolver resolver(_io_service); +- asio::ip::udp::resolver::query query(asio::ip::udp::v4(), server_addr, port); +- asio::ip::udp::endpoint endpoint = *resolver.resolve(query); ++ asio::ip::udp::resolver resolver(_io_context); ++ asio::ip::udp::endpoint endpoint = ++ *resolver.resolve(asio::ip::udp::v4(), server_addr, port).begin(); + + _server_socket = std::shared_ptr<asio::ip::udp::socket>( +- new asio::ip::udp::socket(_io_service, endpoint)); ++ new asio::ip::udp::socket(_io_context, endpoint)); + resize_buffs(_server_socket, server_rx_size, server_tx_size); + } + { +- asio::ip::udp::resolver resolver(_io_service); +- asio::ip::udp::resolver::query query(asio::ip::udp::v4(), client_addr, port); +- asio::ip::udp::endpoint endpoint = *resolver.resolve(query); ++ asio::ip::udp::resolver resolver(_io_context); ++ asio::ip::udp::endpoint endpoint = ++ *resolver.resolve(asio::ip::udp::v4(), client_addr, port).begin(); + + _client_socket = std::shared_ptr<asio::ip::udp::socket>( +- new asio::ip::udp::socket(_io_service)); ++ new asio::ip::udp::socket(_io_context)); + _client_socket->open(asio::ip::udp::v4()); + _client_socket->connect(endpoint); + resize_buffs(_client_socket, client_rx_size, client_tx_size); +@@ -173,7 +173,7 @@ class udp_relay_type + + const std::string _port; + boost::thread_group _thread_group; +- asio::io_service _io_service; ++ asio::io_context _io_context; + asio::ip::udp::endpoint _endpoint; + std::mutex _endpoint_mutex; + socket_type _server_socket, _client_socket; +diff --git a//include/uhd/transport/nirio/rpc/rpc_client.hpp b//include/uhd/transport/nirio/rpc/rpc_client.hpp +index 844e36c763..98f1e2860d 100644 +--- a//include/uhd/transport/nirio/rpc/rpc_client.hpp ++++ b//include/uhd/transport/nirio/rpc/rpc_client.hpp +@@ -56,20 +56,20 @@ class rpc_client : private uhd::noncopyable + const boost::system::error_code& err, size_t transferred, size_t expected); + void _wait_for_next_response_header(); + +- inline void _stop_io_service() ++ inline void _stop_io_context() + { +- if (_io_service_thread.get()) { ++ if (_io_context_thread.get()) { + UHD_LOG_DEBUG("NIRIO", "rpc_client stopping..."); +- _io_service.stop(); +- _io_service_thread->join(); +- _io_service_thread.reset(); ++ _io_context.stop(); ++ _io_context_thread->join(); ++ _io_context_thread.reset(); + UHD_LOG_DEBUG("NIRIO", "rpc_client stopped."); + } + } + + // Services +- boost::asio::io_service _io_service; +- std::unique_ptr<boost::thread> _io_service_thread; ++ boost::asio::io_context _io_context; ++ std::unique_ptr<boost::thread> _io_context_thread; + boost::asio::ip::tcp::socket _socket; + // Handshake info + hshake_args_t _hshake_args_client; +diff --git a//lib/deps/rpclib/include/rpc/detail/async_writer.h b//lib/deps/rpclib/include/rpc/detail/async_writer.h +index 1e17f1292a..2b97361c86 100644 +--- a//lib/deps/rpclib/include/rpc/detail/async_writer.h ++++ b//lib/deps/rpclib/include/rpc/detail/async_writer.h +@@ -19,9 +19,9 @@ namespace detail { + //! \brief Common logic for classes that have a write queue with async writing. + class async_writer : public std::enable_shared_from_this<async_writer> { + public: +- async_writer(boost::asio::io_service *io, ++ async_writer(boost::asio::io_context* io, + boost::asio::ip::tcp::socket socket) +- : socket_(std::move(socket)), write_strand_(*io), exit_(false) {} ++ : socket_(std::move(socket)), write_strand_(io->get_executor()), exit_(false) {} + + void do_write() { + if (exit_) { +@@ -31,9 +31,9 @@ class async_writer : public std::enable_shared_from_this<async_writer> { + auto &item = write_queue_.front(); + // the data in item remains valid until the handler is called + // since it will still be in the queue physically until then. +- boost::asio::async_write( +- socket_, boost::asio::buffer(item.data(), item.size()), +- write_strand_.wrap( ++ boost::asio::async_write(socket_, ++ boost::asio::buffer(item.data(), item.size()), ++ boost::asio::bind_executor(write_strand_, + [this, self](boost::system::error_code ec, std::size_t transferred) { + (void)transferred; + if (!ec) { +@@ -69,7 +69,7 @@ class async_writer : public std::enable_shared_from_this<async_writer> { + + protected: + boost::asio::ip::tcp::socket socket_; +- boost::asio::io_service::strand write_strand_; ++ boost::asio::strand<boost::asio::io_context::executor_type> write_strand_; + std::atomic_bool exit_{false}; + bool exited_ = false; + std::mutex m_exit_; +diff --git a//lib/deps/rpclib/include/rpc/detail/server_session.h b//lib/deps/rpclib/include/rpc/detail/server_session.h +index 754c0879cd..474e4b589b 100644 +--- a//lib/deps/rpclib/include/rpc/detail/server_session.h ++++ b//lib/deps/rpclib/include/rpc/detail/server_session.h +@@ -22,7 +22,7 @@ namespace detail { + + class server_session : public async_writer { + public: +- server_session(server *srv, boost::asio::io_service *io, ++ server_session(server* srv, boost::asio::io_context* io, + boost::asio::ip::tcp::socket socket, + std::shared_ptr<dispatcher> disp, bool suppress_exceptions); + void start(); +@@ -34,8 +34,8 @@ class server_session : public async_writer { + + private: + server* parent_; +- boost::asio::io_service *io_; +- boost::asio::io_service::strand read_strand_; ++ boost::asio::io_context* io_; ++ boost::asio::strand<boost::asio::io_context::executor_type> read_strand_; + std::shared_ptr<dispatcher> disp_; + RPCLIB_MSGPACK::unpacker pac_; + RPCLIB_MSGPACK::sbuffer output_buf_; +diff --git a//lib/deps/rpclib/lib/rpc/client.cc b//lib/deps/rpclib/lib/rpc/client.cc +index ed4a8e329f..b3d8579832 100644 +--- a//lib/deps/rpclib/lib/rpc/client.cc ++++ b//lib/deps/rpclib/lib/rpc/client.cc +@@ -38,7 +38,7 @@ struct client::impl { + impl(client *parent, std::string const &addr, uint16_t port) + : parent_(parent), + io_(), +- strand_(io_), ++ strand_(io_.get_executor()), + call_idx_(0), + addr_(addr), + port_(port), +@@ -50,11 +50,11 @@ struct client::impl { + pac_.reserve_buffer(default_buffer_size); + } + +- void do_connect(tcp::resolver::iterator endpoint_iterator) { ++ void do_connect(const tcp::resolver::results_type& endpoints) { + LOG_INFO("Initiating connection."); + boost::asio::async_connect( +- writer_->socket_, endpoint_iterator, +- [this](boost::system::error_code ec, tcp::resolver::iterator) { ++ writer_->socket_, endpoints, ++ [this](boost::system::error_code ec, tcp::endpoint) { + std::unique_lock<std::mutex> lock(mut_connection_finished_); + if (!ec) { + LOG_INFO("Client connected to {}:{}", addr_, port_); +@@ -101,7 +101,7 @@ struct client::impl { + std::get<1>(current_call) + .set_exception(std::current_exception()); + } +- strand_.post( ++ boost::asio::post(strand_, + [this, id]() { ongoing_calls_.erase(id); }); + } + +@@ -144,8 +144,8 @@ struct client::impl { + std::pair<std::string, std::promise<RPCLIB_MSGPACK::object_handle>>; + + client *parent_; +- boost::asio::io_service io_; +- boost::asio::io_service::strand strand_; ++ boost::asio::io_context io_; ++ boost::asio::strand<boost::asio::io_context::executor_type> strand_; + std::atomic<int> call_idx_; /// The index of the last call made + std::unordered_map<uint32_t, call_t> ongoing_calls_; + std::string addr_; +@@ -164,9 +164,9 @@ struct client::impl { + client::client(std::string const &addr, uint16_t port) + : pimpl(new client::impl(this, addr, port)) { + tcp::resolver resolver(pimpl->io_); +- auto endpoint_it = +- resolver.resolve({pimpl->addr_, std::to_string(pimpl->port_)}); +- pimpl->do_connect(endpoint_it); ++ auto endpoints = ++ resolver.resolve(pimpl->addr_, std::to_string(pimpl->port_)); ++ pimpl->do_connect(endpoints); + std::thread io_thread([this]() { + RPCLIB_CREATE_LOG_CHANNEL(client) + name_thread("client"); +@@ -190,7 +190,7 @@ int client::get_next_call_idx() { + void client::post(std::shared_ptr<RPCLIB_MSGPACK::sbuffer> buffer, int idx, + std::string const &func_name, + std::shared_ptr<rsp_promise> p) { +- pimpl->strand_.post([=]() { ++ boost::asio::post(pimpl->strand_, [buffer, idx, func_name, p, this]() { + pimpl->ongoing_calls_.insert( + std::make_pair(idx, std::make_pair(func_name, std::move(*p)))); + pimpl->write(std::move(*buffer)); +@@ -198,7 +198,7 @@ void client::post(std::shared_ptr<RPCLIB_MSGPACK::sbuffer> buffer, int idx, + } + + void client::post(RPCLIB_MSGPACK::sbuffer *buffer) { +- pimpl->strand_.post([=]() { ++ boost::asio::post(pimpl->strand_, [buffer, this]() { + pimpl->write(std::move(*buffer)); + delete buffer; + }); +diff --git a//lib/deps/rpclib/lib/rpc/detail/server_session.cc b//lib/deps/rpclib/lib/rpc/detail/server_session.cc +index d3e13c89fa..1468a62e5a 100644 +--- a//lib/deps/rpclib/lib/rpc/detail/server_session.cc ++++ b//lib/deps/rpclib/lib/rpc/detail/server_session.cc +@@ -22,14 +22,14 @@ namespace detail { + + static constexpr std::size_t default_buffer_size = rpc::constants::DEFAULT_BUFFER_SIZE; + +-server_session::server_session(server *srv, boost::asio::io_service *io, ++server_session::server_session(server *srv, boost::asio::io_context *io, + boost::asio::ip::tcp::socket socket, + std::shared_ptr<dispatcher> disp, + bool suppress_exceptions) + : async_writer(io, std::move(socket)), + parent_(srv), + io_(io), +- read_strand_(*io), ++ read_strand_(io->get_executor()), + disp_(disp), + pac_(), + suppress_exceptions_(suppress_exceptions) { +@@ -42,7 +42,7 @@ void server_session::start() { do_read(); } + void server_session::close() { + LOG_INFO("Closing session."); + exit_ = true; +- write_strand_.post([this]() { ++ boost::asio::post(write_strand_, [this]() { + try { + socket_.close(); + } catch (const boost::system::system_error&) { +@@ -54,12 +54,11 @@ void server_session::close() { + void server_session::do_read() { + auto self(shared_from_this()); + constexpr std::size_t max_read_bytes = default_buffer_size; +- socket_.async_read_some( +- boost::asio::buffer(pac_.buffer(), default_buffer_size), ++ socket_.async_read_some(boost::asio::buffer(pac_.buffer(), default_buffer_size), + // I don't think max_read_bytes needs to be captured explicitly + // (since it's constexpr), but MSVC insists. +- read_strand_.wrap([this, self, max_read_bytes](boost::system::error_code ec, +- std::size_t length) { ++ boost::asio::bind_executor(read_strand_, [this, self, max_read_bytes](boost::system::error_code ec, ++ std::size_t length) { + if (!ec) { + pac_.buffer_consumed(length); + RPCLIB_MSGPACK::unpacked result; +@@ -69,7 +68,7 @@ void server_session::do_read() { + + // any worker thread can take this call + auto z = std::shared_ptr<RPCLIB_MSGPACK::zone>(result.zone().release()); +- io_->post([ ++ boost::asio::post(io_->get_executor(), [ + this, msg, z + ]() { + this_handler().clear(); +@@ -102,10 +101,10 @@ void server_session::do_read() { + if (!resp.is_empty()) { + #ifdef _MSC_VER + // doesn't compile otherwise. +- write_strand_.post( ++ boost::asio::post(write_strand_, + [=]() { write(resp.get_data()); }); + #else +- write_strand_.post( ++ boost::asio::post(write_strand_, + [this, resp, z]() { write(resp.get_data()); }); + #endif + } +@@ -114,14 +113,14 @@ void server_session::do_read() { + LOG_WARN("Session exit requested from a handler."); + // posting through the strand so this comes after + // the previous write +- write_strand_.post([this]() { exit_ = true; }); ++ boost::asio::post(write_strand_, [this]() { exit_ = true; }); + } + + if (this_server().stopping_) { + LOG_WARN("Server exit requested from a handler."); + // posting through the strand so this comes after + // the previous write +- write_strand_.post( ++ boost::asio::post(write_strand_, + [this]() { parent_->close_sessions(); }); + } + }); +diff --git a//lib/deps/rpclib/lib/rpc/server.cc b//lib/deps/rpclib/lib/rpc/server.cc +index 4facb93a85..d0638cb8fc 100644 +--- a//lib/deps/rpclib/lib/rpc/server.cc ++++ b//lib/deps/rpclib/lib/rpc/server.cc +@@ -25,7 +25,7 @@ struct server::impl { + : parent_(parent), + io_(), + acceptor_(io_, +- tcp::endpoint(ip::address::from_string(address), port)), ++ tcp::endpoint(ip::make_address(address), port)), + socket_(io_), + suppress_exceptions_(false) {} + +@@ -66,7 +66,7 @@ struct server::impl { + } + + server *parent_; +- io_service io_; ++ io_context io_; + ip::tcp::acceptor acceptor_; + ip::tcp::socket socket_; + rpc::detail::thread_group loop_workers_; +diff --git a//lib/include/uhdlib/transport/udp_boost_asio_link.hpp b//lib/include/uhdlib/transport/udp_boost_asio_link.hpp +index 8944aa9991..80b585af73 100644 +--- a//lib/include/uhdlib/transport/udp_boost_asio_link.hpp ++++ b//lib/include/uhdlib/transport/udp_boost_asio_link.hpp +@@ -146,7 +146,7 @@ class udp_boost_asio_link : public recv_link_base<udp_boost_asio_link>, + std::vector<udp_boost_asio_frame_buff> _recv_buffs; + std::vector<udp_boost_asio_frame_buff> _send_buffs; + +- boost::asio::io_service _io_service; ++ boost::asio::io_context _io_context; + std::shared_ptr<boost::asio::ip::udp::socket> _socket; + int _sock_fd; + adapter_id_t _adapter_id; +diff --git a//lib/include/uhdlib/transport/udp_common.hpp b//lib/include/uhdlib/transport/udp_common.hpp +index 96146a7017..b4b0ec309f 100644 +--- a//lib/include/uhdlib/transport/udp_common.hpp ++++ b//lib/include/uhdlib/transport/udp_common.hpp +@@ -81,17 +81,16 @@ UHD_INLINE bool wait_for_recv_ready(int sock_fd, int32_t timeout_ms) + } + + UHD_INLINE socket_sptr open_udp_socket( +- const std::string& addr, const std::string& port, boost::asio::io_service& io_service) ++ const std::string& addr, const std::string& port, boost::asio::io_context& io_context) + { + using udp = boost::asio::ip::udp; + + // resolve the address +- udp::resolver resolver(io_service); +- udp::resolver::query query(udp::v4(), addr, port); +- udp::endpoint receiver_endpoint = *resolver.resolve(query); ++ udp::resolver resolver(io_context); ++ udp::endpoint receiver_endpoint = *resolver.resolve(udp::v4(), addr, port).begin(); + + // create, open, and connect the socket +- socket_sptr socket = socket_sptr(new udp::socket(io_service)); ++ socket_sptr socket = socket_sptr(new udp::socket(io_context)); + socket->open(udp::v4()); + socket->connect(receiver_endpoint); + +diff --git a//lib/include/uhdlib/utils/eeprom_utils.hpp b//lib/include/uhdlib/utils/eeprom_utils.hpp +index d3be4c03c4..ea05136738 100644 +--- a//lib/include/uhdlib/utils/eeprom_utils.hpp ++++ b//lib/include/uhdlib/utils/eeprom_utils.hpp +@@ -10,7 +10,6 @@ + #include <uhd/types/dict.hpp> + #include <uhd/types/mac_addr.hpp> + #include <uhd/utils/log.hpp> +-#include <boost/asio/ip/address_v4.hpp> + #include <string> + #include <vector> + +@@ -29,7 +28,7 @@ std::string uint16_bytes_to_string(const uhd::byte_vector_t& bytes); + * see if the resulting contents will contain duplicates. Useful error + * messages are logged describing any duplicates. + * +- * <field_type> must provide to_string() and from_string() functions ++ * <field_type> must provide from_string() functions + * + * \param error_label Label to put on error messages + * \param new_eeprom New EEPROM contents +@@ -38,12 +37,13 @@ std::string uint16_bytes_to_string(const uhd::byte_vector_t& bytes); + * \param keys Keys to examine for duplicate values + * \return true if duplicates are found, false if not + */ +-template <typename field_type> ++template <typename str_normalizer_type> + bool check_for_duplicates(const std::string& error_label, + const uhd::dict<std::string, std::string>& new_eeprom, + const uhd::dict<std::string, std::string>& curr_eeprom, + const std::string& category, +- const std::vector<std::string>& keys) ++ const std::vector<std::string>& keys, ++ str_normalizer_type&& str_normalizer) + { + bool has_duplicates = false; + for (size_t i = 0; i < keys.size(); i++) { +@@ -54,7 +54,7 @@ bool check_for_duplicates(const std::string& error_label, + continue; + } + +- auto value = field_type::from_string(new_eeprom[key]).to_string(); ++ auto value = str_normalizer(new_eeprom[key]); + + // Check other values in new_eeprom for duplicate + // Starting at key index i+1 so the same duplicate is not found twice +@@ -63,7 +63,7 @@ bool check_for_duplicates(const std::string& error_label, + if (not new_eeprom.has_key(other_key)) { + continue; + } +- auto other_value = field_type::from_string(new_eeprom[other_key]).to_string(); ++ auto other_value = str_normalizer(new_eeprom[other_key]); + if (value == other_value) { + // Value is a duplicate of another supplied value + UHD_LOG_ERROR(error_label, +diff --git a//lib/transport/dpdk_simple.cpp b//lib/transport/dpdk_simple.cpp +index e258ddb2f8..f2787ba8c8 100644 +--- a//lib/transport/dpdk_simple.cpp ++++ b//lib/transport/dpdk_simple.cpp +@@ -96,7 +96,7 @@ class dpdk_simple_impl : public dpdk_simple + // Extract buff and sanity check + const size_t nbytes = boost::asio::buffer_size(user_buff); + UHD_ASSERT_THROW(nbytes <= _link->get_send_frame_size()) +- const uint8_t* user_data = boost::asio::buffer_cast<const uint8_t*>(user_buff); ++ const uint8_t* user_data = static_cast<const uint8_t*>(user_buff.data()); + + // Get send buff + auto buff = _send_io->get_send_buff(SEND_TIMEOUT_MS); +@@ -120,7 +120,7 @@ class dpdk_simple_impl : public dpdk_simple + size_t recv(const boost::asio::mutable_buffer& user_buff, double timeout) override + { + size_t user_buff_size = boost::asio::buffer_size(user_buff); +- uint8_t* user_data = boost::asio::buffer_cast<uint8_t*>(user_buff); ++ uint8_t* user_data = static_cast<uint8_t*>(user_buff.data()); + + auto buff = _recv_io->get_recv_buff(static_cast<int32_t>(timeout * 1e3)); + if (!buff) { +diff --git a//lib/transport/if_addrs.cpp b//lib/transport/if_addrs.cpp +index a1cb6909f0..4c43c95d57 100644 +--- a//lib/transport/if_addrs.cpp ++++ b//lib/transport/if_addrs.cpp +@@ -50,8 +50,8 @@ std::vector<uhd::transport::if_addrs_t> uhd::transport::get_if_addrs(void) + == boost::asio::ip::address_v4(0)) { + // manually calculate broadcast address + // https://svn.boost.org/trac/boost/ticket/5198 +- const uint32_t addr = sockaddr_to_ip_addr(iter->ifa_addr).to_ulong(); +- const uint32_t mask = sockaddr_to_ip_addr(iter->ifa_netmask).to_ulong(); ++ const uint32_t addr = sockaddr_to_ip_addr(iter->ifa_addr).to_uint(); ++ const uint32_t mask = sockaddr_to_ip_addr(iter->ifa_netmask).to_uint(); + const uint32_t bcast = (addr & mask) | ~mask; + if_addr.bcast = boost::asio::ip::address_v4(bcast).to_string(); + } +diff --git a//lib/transport/nirio/rpc/rpc_client.cpp b//lib/transport/nirio/rpc/rpc_client.cpp +index 16dd5aa823..aaa9753ee9 100644 +--- a//lib/transport/nirio/rpc/rpc_client.cpp ++++ b//lib/transport/nirio/rpc/rpc_client.cpp +@@ -27,7 +27,7 @@ rpc_client::rpc_client(const std::string& server, + const std::string& port, + uint32_t process_id, + uint32_t host_id) +- : _socket(_io_service), _hshake_args_server() ++ : _socket(_io_context), _hshake_args_server() + { + // Fill in handshake info + _hshake_args_client.version = CURRENT_VERSION; +@@ -38,16 +38,14 @@ rpc_client::rpc_client(const std::string& server, + + try { + // Synchronous resolve + connect +- tcp::resolver resolver(_io_service); +- // Create flags object with all special flags disabled. Especially the following: ++ tcp::resolver resolver(_io_context); ++ // All special flags disabled. Especially the following: + //- address_configured: Only return addresses if a non-loopback address is + // configured for the system. + //- numeric_host: No name resolution should be attempted for host + //- numeric_service: No name resolution should be attempted for service +- tcp::resolver::query::flags query_flags(tcp::resolver::query::passive); +- tcp::resolver::query query(tcp::v4(), server, port, query_flags); +- tcp::resolver::iterator iterator = resolver.resolve(query); +- boost::asio::connect(_socket, iterator); ++ auto endpoints = resolver.resolve(server, port, tcp::resolver::passive); ++ boost::asio::connect(_socket, endpoints); + + UHD_LOGGER_TRACE("NIRIO") << "rpc_client connected to server."; + +@@ -73,10 +71,10 @@ rpc_client::rpc_client(const std::string& server, + UHD_LOGGER_TRACE("NIRIO") << "rpc_client bound to server."; + _wait_for_next_response_header(); + +- // Spawn a thread for the io_service callback handler. This thread will ++ // Spawn a thread for the io_context callback handler. This thread will + // run until rpc_client is destroyed. +- _io_service_thread.reset(new boost::thread( +- boost::bind(&boost::asio::io_service::run, &_io_service))); ++ _io_context_thread.reset(new boost::thread( ++ boost::bind(&boost::asio::io_context::run, &_io_context))); + } else { + UHD_LOGGER_DEBUG("NIRIO") << "rpc_client handshake failed."; + _exec_err.assign(boost::asio::error::connection_refused, +@@ -100,7 +98,7 @@ rpc_client::rpc_client(const std::string& server, + + rpc_client::~rpc_client() + { +- _stop_io_service(); ++ _stop_io_context(); + } + + const boost::system::error_code& rpc_client::call(func_id_t func_id, +@@ -110,7 +108,7 @@ const boost::system::error_code& rpc_client::call(func_id_t func_id, + { + std::unique_lock<std::mutex> lock(_mutex); + +- if (_io_service_thread.get()) { ++ if (_io_context_thread.get()) { + _request.header.func_id = func_id; + in_args.store(_request.data); + _request.header.func_args_size = uhd::narrow_cast<uint32_t>(_request.data.size()); +@@ -147,7 +145,7 @@ const boost::system::error_code& rpc_client::call(func_id_t func_id, + UHD_LOGGER_DEBUG("NIRIO") << "rpc_client connection dropped."; + _exec_err.assign(boost::asio::error::connection_aborted, + boost::asio::error::get_system_category()); +- _stop_io_service(); ++ _stop_io_context(); + } + + // Verify that we are talking to the correct endpoint +diff --git a//lib/transport/udp_boost_asio_link.cpp b//lib/transport/udp_boost_asio_link.cpp +index f91bad09e1..b6a6b550c1 100644 +--- a//lib/transport/udp_boost_asio_link.cpp ++++ b//lib/transport/udp_boost_asio_link.cpp +@@ -37,7 +37,7 @@ udp_boost_asio_link::udp_boost_asio_link( + } + + // create, open, and connect the socket +- _socket = open_udp_socket(addr, port, _io_service); ++ _socket = open_udp_socket(addr, port, _io_context); + _sock_fd = _socket->native_handle(); + + auto info = udp_boost_asio_adapter_info(*_socket); +diff --git a//lib/transport/udp_simple.cpp b//lib/transport/udp_simple.cpp +index c83e72d03b..2d031f2b00 100644 +--- a//lib/transport/udp_simple.cpp ++++ b//lib/transport/udp_simple.cpp +@@ -8,7 +8,6 @@ + #include <uhd/transport/udp_simple.hpp> + #include <uhd/utils/log.hpp> + #include <uhdlib/transport/udp_common.hpp> +-#include <boost/format.hpp> + + using namespace uhd::transport; + namespace asio = boost::asio; +@@ -23,17 +22,19 @@ class udp_simple_impl : public udp_simple + const std::string& addr, const std::string& port, bool bcast, bool connect) + : _connected(connect) + { +- UHD_LOGGER_TRACE("UDP") +- << boost::format("Creating udp transport for %s %s") % addr % port; ++ UHD_LOG_TRACE("UDP", "Creating udp transport for " << addr << " " << port); + + // resolve the address +- asio::ip::udp::resolver resolver(_io_service); +- asio::ip::udp::resolver::query query( +- asio::ip::udp::v4(), addr, port, asio::ip::resolver_query_base::all_matching); +- _send_endpoint = *resolver.resolve(query); ++ asio::ip::udp::resolver resolver(_io_context); ++ _send_endpoint = *resolver ++ .resolve(asio::ip::udp::v4(), ++ addr, ++ port, ++ asio::ip::resolver_query_base::all_matching) ++ .begin(); + + // create and open the socket +- _socket = socket_sptr(new asio::ip::udp::socket(_io_service)); ++ _socket = socket_sptr(new asio::ip::udp::socket(_io_context)); + _socket->open(asio::ip::udp::v4()); + + // allow broadcasting +@@ -72,7 +73,7 @@ class udp_simple_impl : public udp_simple + + private: + bool _connected; +- asio::io_service _io_service; ++ asio::io_context _io_context; + socket_sptr _socket; + asio::ip::udp::endpoint _send_endpoint; + asio::ip::udp::endpoint _recv_endpoint; +diff --git a//lib/transport/udp_wsa_zero_copy.cpp b//lib/transport/udp_wsa_zero_copy.cpp +index 55773296fe..f189396361 100644 +--- a//lib/transport/udp_wsa_zero_copy.cpp ++++ b//lib/transport/udp_wsa_zero_copy.cpp +@@ -216,10 +216,10 @@ class udp_zero_copy_wsa_impl : public udp_zero_copy + UHD_ASSERT_THROW(_num_send_frames <= WSA_MAXIMUM_WAIT_EVENTS); + + // resolve the address +- asio::io_service io_service; +- asio::ip::udp::resolver resolver(io_service); +- asio::ip::udp::resolver::query query(asio::ip::udp::v4(), addr, port); +- asio::ip::udp::endpoint receiver_endpoint = *resolver.resolve(query); ++ asio::io_context io_context; ++ asio::ip::udp::resolver resolver(io_context); ++ asio::ip::udp::endpoint receiver_endpoint = ++ *resolver.resolve(asio::ip::udp::v4(), addr, port).begin(); + + // create the socket + _sock_fd = +diff --git a//lib/transport/udp_zero_copy.cpp b//lib/transport/udp_zero_copy.cpp +index be527be5cb..1a43f9d6be 100644 +--- a//lib/transport/udp_zero_copy.cpp ++++ b//lib/transport/udp_zero_copy.cpp +@@ -161,7 +161,7 @@ class udp_zero_copy_asio_impl : public udp_zero_copy + check_registry_for_fast_send_threshold(this->get_send_frame_size()); + #endif /*CHECK_REG_SEND_THRESH*/ + +- _socket = open_udp_socket(addr, port, _io_service); ++ _socket = open_udp_socket(addr, port, _io_context); + _sock_fd = _socket->native_handle(); + + UHD_LOGGER_TRACE("UDP") << boost::format("Local UDP socket endpoint: %s:%s") +@@ -252,7 +252,7 @@ class udp_zero_copy_asio_impl : public udp_zero_copy + size_t _next_recv_buff_index, _next_send_buff_index; + + // asio guts -> socket and service +- asio::io_service _io_service; ++ asio::io_context _io_context; + socket_sptr _socket; + int _sock_fd; + }; +diff --git a//lib/usrp/cores/xport_adapter_ctrl.cpp b//lib/usrp/cores/xport_adapter_ctrl.cpp +index 224f51ba22..9b3556ad3a 100644 +--- a//lib/usrp/cores/xport_adapter_ctrl.cpp ++++ b//lib/usrp/cores/xport_adapter_ctrl.cpp +@@ -28,13 +28,12 @@ std::pair<uint32_t, uint32_t> cast_ipv4_and_port( + const std::string& ipv4, const std::string& port) + { + using namespace boost::asio; +- io_service io_service; +- ip::udp::resolver resolver(io_service); ++ io_context io_context; ++ ip::udp::resolver resolver(io_context); + try { +- ip::udp::resolver::query query(ip::udp::v4(), ipv4, port); +- ip::udp::endpoint endpoint = *resolver.resolve(query); ++ ip::udp::endpoint endpoint = *(resolver.resolve(ipv4, port).begin()); + return { +- uint32_t(endpoint.address().to_v4().to_ulong()), uint32_t(endpoint.port())}; ++ uint32_t(endpoint.address().to_v4().to_uint()), uint32_t(endpoint.port())}; + } catch (const std::exception&) { + throw uhd::value_error("Invalid UDP address: " + ipv4 + ":" + port); + } +diff --git a//lib/usrp/usrp1/mb_eeprom.cpp b//lib/usrp/usrp1/mb_eeprom.cpp +index 756a103953..e5648dd34d 100644 +--- a//lib/usrp/usrp1/mb_eeprom.cpp ++++ b//lib/usrp/usrp1/mb_eeprom.cpp +@@ -8,6 +8,7 @@ + #include <uhd/types/byte_vector.hpp> + #include <uhd/usrp/mboard_eeprom.hpp> + #include <uhdlib/utils/eeprom_utils.hpp> ++#include <boost/asio.hpp> + + namespace { + const uint8_t USRP1_EEPROM_ADDR = 0x50; +diff --git a//lib/usrp/usrp2/io_impl.cpp b//lib/usrp/usrp2/io_impl.cpp +index c58787e3e5..48ab7b5f0e 100644 +--- a//lib/usrp/usrp2/io_impl.cpp ++++ b//lib/usrp/usrp2/io_impl.cpp +@@ -415,12 +415,12 @@ void usrp2_impl::program_stream_dest( + "IPv4 Address: %s, UDP Port: %s") + % args.args["addr"] % args.args["port"]; + +- asio::io_service io_service; +- asio::ip::udp::resolver resolver(io_service); +- asio::ip::udp::resolver::query query( +- asio::ip::udp::v4(), args.args["addr"], args.args["port"]); +- asio::ip::udp::endpoint endpoint = *resolver.resolve(query); +- stream_ctrl.ip_addr = uhd::htonx(uint32_t(endpoint.address().to_v4().to_ulong())); ++ asio::io_context io_context; ++ asio::ip::udp::resolver resolver(io_context); ++ asio::ip::udp::endpoint endpoint = ++ *resolver.resolve(asio::ip::udp::v4(), args.args["addr"], args.args["port"]) ++ .begin(); ++ stream_ctrl.ip_addr = uhd::htonx(uint32_t(endpoint.address().to_v4().to_uint())); + stream_ctrl.udp_port = uhd::htonx(uint32_t(endpoint.port())); + + for (size_t i = 0; i < 3; i++) { +diff --git a//lib/usrp/usrp2/mb_eeprom.cpp b//lib/usrp/usrp2/mb_eeprom.cpp +index 7bfe6159d0..2b01c0bf40 100644 +--- a//lib/usrp/usrp2/mb_eeprom.cpp ++++ b//lib/usrp/usrp2/mb_eeprom.cpp +@@ -141,8 +141,7 @@ void usrp2_impl::set_mb_eeprom(const std::string& mb, const mboard_eeprom_t& mb_ + + if (mb_eeprom.has_key("ip-addr")) { + byte_vector_t ip_addr_bytes(4); +- byte_copy( +- boost::asio::ip::address_v4::from_string(mb_eeprom["ip-addr"]).to_bytes(), ++ byte_copy(boost::asio::ip::make_address_v4(mb_eeprom["ip-addr"]).to_bytes(), + ip_addr_bytes); + iface->write_eeprom( + N200_EEPROM_ADDR, offsetof(n200_eeprom_map, ip_addr), ip_addr_bytes); +@@ -150,8 +149,7 @@ void usrp2_impl::set_mb_eeprom(const std::string& mb, const mboard_eeprom_t& mb_ + + if (mb_eeprom.has_key("subnet")) { + byte_vector_t ip_addr_bytes(4); +- byte_copy( +- boost::asio::ip::address_v4::from_string(mb_eeprom["subnet"]).to_bytes(), ++ byte_copy(boost::asio::ip::make_address_v4(mb_eeprom["subnet"]).to_bytes(), + ip_addr_bytes); + iface->write_eeprom( + N200_EEPROM_ADDR, offsetof(n200_eeprom_map, subnet), ip_addr_bytes); +@@ -159,8 +157,7 @@ void usrp2_impl::set_mb_eeprom(const std::string& mb, const mboard_eeprom_t& mb_ + + if (mb_eeprom.has_key("gateway")) { + byte_vector_t ip_addr_bytes(4); +- byte_copy( +- boost::asio::ip::address_v4::from_string(mb_eeprom["gateway"]).to_bytes(), ++ byte_copy(boost::asio::ip::make_address_v4(mb_eeprom["gateway"]).to_bytes(), + ip_addr_bytes); + iface->write_eeprom( + N200_EEPROM_ADDR, offsetof(n200_eeprom_map, gateway), ip_addr_bytes); +diff --git a//lib/usrp/x300/x300_mb_eeprom.cpp b//lib/usrp/x300/x300_mb_eeprom.cpp +index e0e6072aa1..273ad2b1ed 100644 +--- a//lib/usrp/x300/x300_mb_eeprom.cpp ++++ b//lib/usrp/x300/x300_mb_eeprom.cpp +@@ -9,6 +9,7 @@ + #include <uhd/types/serial.hpp> + #include <uhd/usrp/mboard_eeprom.hpp> + #include <uhdlib/utils/eeprom_utils.hpp> ++#include <boost/asio.hpp> + + namespace { + const uint8_t X300_EEPROM_ADDR = 0x50; +@@ -122,10 +123,22 @@ void uhd::usrp::x300::set_mb_eeprom( + "ip-addr0", "ip-addr1", "ip-addr2", "ip-addr3"}; + + // make sure there are no duplicate values +- if (check_for_duplicates<uhd::mac_addr_t>( +- "X300", mb_eeprom, curr_eeprom, "MAC address", mac_keys) +- or check_for_duplicates<boost::asio::ip::address_v4>( +- "X300", mb_eeprom, curr_eeprom, "IP address", ip_keys)) { ++ if (check_for_duplicates("X300", ++ mb_eeprom, ++ curr_eeprom, ++ "MAC address", ++ mac_keys, ++ [](const std::string& str) { ++ return mac_addr_t::from_string(str).to_string(); ++ }) ++ or check_for_duplicates("X300", ++ mb_eeprom, ++ curr_eeprom, ++ "IP address", ++ ip_keys, ++ [](const std::string& str) { ++ return boost::asio::ip::make_address(str).to_string(); ++ })) { + throw uhd::value_error( + "Duplicate values not permitted - write to EEPROM aborted"); + } +@@ -161,8 +174,7 @@ void uhd::usrp::x300::set_mb_eeprom( + // store the ip addresses + byte_vector_t ip_addr_bytes(4); + if (mb_eeprom.has_key("gateway")) { +- byte_copy( +- boost::asio::ip::address_v4::from_string(mb_eeprom["gateway"]).to_bytes(), ++ byte_copy(boost::asio::ip::make_address_v4(mb_eeprom["gateway"]).to_bytes(), + ip_addr_bytes); + iface->write_eeprom( + X300_EEPROM_ADDR, offsetof(x300_eeprom_map, gateway), ip_addr_bytes); +@@ -170,8 +182,8 @@ void uhd::usrp::x300::set_mb_eeprom( + for (size_t i = 0; i < 4; i++) { + const std::string n(1, char(i) + '0'); + if (mb_eeprom.has_key("ip-addr" + n)) { +- byte_copy(boost::asio::ip::address_v4::from_string(mb_eeprom["ip-addr" + n]) +- .to_bytes(), ++ byte_copy( ++ boost::asio::ip::make_address_v4(mb_eeprom["ip-addr" + n]).to_bytes(), + ip_addr_bytes); + iface->write_eeprom(X300_EEPROM_ADDR, + offsetof(x300_eeprom_map, ip_addr) + (i * 4), +@@ -179,8 +191,8 @@ void uhd::usrp::x300::set_mb_eeprom( + } + + if (mb_eeprom.has_key("subnet" + n)) { +- byte_copy(boost::asio::ip::address_v4::from_string(mb_eeprom["subnet" + n]) +- .to_bytes(), ++ byte_copy( ++ boost::asio::ip::make_address_v4(mb_eeprom["subnet" + n]).to_bytes(), + ip_addr_bytes); + iface->write_eeprom(X300_EEPROM_ADDR, + offsetof(x300_eeprom_map, subnet) + (i * 4), +diff --git a//lib/usrp_clock/octoclock/octoclock_eeprom.cpp b//lib/usrp_clock/octoclock/octoclock_eeprom.cpp +index 9023c6607a..adddb23f3e 100644 +--- a//lib/usrp_clock/octoclock/octoclock_eeprom.cpp ++++ b//lib/usrp_clock/octoclock/octoclock_eeprom.cpp +@@ -99,7 +99,7 @@ void octoclock_eeprom_t::_store() const + // IP address + if ((*this).has_key("ip-addr")) { + ip_v4::bytes_type ip_addr_bytes = +- ip_v4::from_string((*this)["ip-addr"]).to_bytes(); ++ boost::asio::ip::make_address_v4((*this)["ip-addr"]).to_bytes(); + memcpy(&eeprom_out->ip_addr, &ip_addr_bytes, 4); + eeprom_out->ip_addr = uhd::htonx<uint32_t>(eeprom_out->ip_addr); + } +@@ -107,7 +107,7 @@ void octoclock_eeprom_t::_store() const + // Default router + if ((*this).has_key("gateway")) { + ip_v4::bytes_type dr_addr_bytes = +- ip_v4::from_string((*this)["gateway"]).to_bytes(); ++ boost::asio::ip::make_address_v4((*this)["gateway"]).to_bytes(); + memcpy(&eeprom_out->dr_addr, &dr_addr_bytes, 4); + eeprom_out->dr_addr = uhd::htonx<uint32_t>(eeprom_out->dr_addr); + } +@@ -115,7 +115,7 @@ void octoclock_eeprom_t::_store() const + // Netmask + if ((*this).has_key("netmask")) { + ip_v4::bytes_type netmask_bytes = +- ip_v4::from_string((*this)["netmask"]).to_bytes(); ++ boost::asio::ip::make_address_v4((*this)["netmask"]).to_bytes(); + memcpy(&eeprom_out->netmask, &netmask_bytes, 4); + eeprom_out->netmask = uhd::htonx<uint32_t>(eeprom_out->netmask); + } +diff --git a//tests/eeprom_utils_test.cpp b//tests/eeprom_utils_test.cpp +index 728b4b8b67..57d107a177 100644 +--- a//tests/eeprom_utils_test.cpp ++++ b//tests/eeprom_utils_test.cpp +@@ -44,13 +44,37 @@ BOOST_AUTO_TEST_CASE(test_eeprom_duplicate_check) + map_list_of("0", "b")("1", "B"); + const std::vector<std::string> keys = {"0", "1", "2"}; + +- BOOST_CHECK_EQUAL(check_for_duplicates<upper_case_char>( +- "TEST", new_eeprom_no_dups, curr_eeprom, "Test Value", keys), ++ BOOST_CHECK_EQUAL(check_for_duplicates("TEST", ++ new_eeprom_no_dups, ++ curr_eeprom, ++ "Test Value", ++ keys, ++ [](const std::string& str) { ++ return upper_case_char::from_string(str).to_string(); ++ }), + false); +- BOOST_CHECK(check_for_duplicates<upper_case_char>( +- "TEST", new_eeprom_dups_in_curr, curr_eeprom, "Test Value", keys)); +- BOOST_CHECK(check_for_duplicates<upper_case_char>( +- "TEST", new_eeprom_dups_in_new, curr_eeprom, "Test Value", keys)); +- BOOST_CHECK(check_for_duplicates<upper_case_char>( +- "TEST", new_eeprom_dups_in_both, curr_eeprom, "Test Value", keys)); ++ BOOST_CHECK(check_for_duplicates("TEST", ++ new_eeprom_dups_in_curr, ++ curr_eeprom, ++ "Test Value", ++ keys, ++ [](const std::string& str) { ++ return upper_case_char::from_string(str).to_string(); ++ })); ++ BOOST_CHECK(check_for_duplicates("TEST", ++ new_eeprom_dups_in_new, ++ curr_eeprom, ++ "Test Value", ++ keys, ++ [](const std::string& str) { ++ return upper_case_char::from_string(str).to_string(); ++ })); ++ BOOST_CHECK(check_for_duplicates("TEST", ++ new_eeprom_dups_in_both, ++ curr_eeprom, ++ "Test Value", ++ keys, ++ [](const std::string& str) { ++ return upper_case_char::from_string(str).to_string(); ++ })); + } diff --git a/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.87-2.patch b/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.87-2.patch new file mode 100644 index 000000000000..d8d3085a2c14 --- /dev/null +++ b/net-wireless/uhd/files/uhd-4.6.0.0-boost-1.87-2.patch @@ -0,0 +1,27 @@ +https://github.com/EttusResearch/uhd/commit/e75629c3cfb4d0a654648f775e65e79375cf4f13 +https://bugs.gentoo.org/946371#c12 + +From e75629c3cfb4d0a654648f775e65e79375cf4f13 Mon Sep 17 00:00:00 2001 +From: Martin Braun <martin.braun@ettus.com> +Date: Thu, 5 Dec 2024 20:34:15 +0100 +Subject: [PATCH] lib: Fix boost::detail::atomic_count header + +This fixes a deprecation warning. +--- + host/include/uhd/transport/zero_copy.hpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/uhd/transport/zero_copy.hpp b/include/uhd/transport/zero_copy.hpp +index 5f954e24e4..2f15e8c4c7 100644 +--- a/include/uhd/transport/zero_copy.hpp ++++ b/include/uhd/transport/zero_copy.hpp +@@ -9,8 +9,8 @@ + + #include <uhd/config.hpp> + #include <uhd/utils/noncopyable.hpp> +-#include <boost/detail/atomic_count.hpp> + #include <boost/intrusive_ptr.hpp> ++#include <boost/smart_ptr/detail/atomic_count.hpp> + #include <boost/utility.hpp> + #include <memory> + diff --git a/net-wireless/uhd/uhd-4.6.0.0.ebuild b/net-wireless/uhd/uhd-4.6.0.0.ebuild index 23a5cfed7d6e..398b3f102e81 100644 --- a/net-wireless/uhd/uhd-4.6.0.0.ebuild +++ b/net-wireless/uhd/uhd-4.6.0.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -53,6 +53,8 @@ S="${WORKDIR}/${P}/host" PATCHES=( "${FILESDIR}"/uhd-4.6.0.0-boost-1.85-1.patch "${FILESDIR}"/uhd-4.6.0.0-boost-1.85-2.patch + "${FILESDIR}"/uhd-4.6.0.0-boost-1.87-1.patch + "${FILESDIR}"/uhd-4.6.0.0-boost-1.87-2.patch ) src_unpack() { diff --git a/net-wireless/wpa_supplicant/Manifest b/net-wireless/wpa_supplicant/Manifest index f7e3a65a1054..fd87bd76dd93 100644 --- a/net-wireless/wpa_supplicant/Manifest +++ b/net-wireless/wpa_supplicant/Manifest @@ -12,6 +12,7 @@ DIST wpa_supplicant-2.10.tar.gz 3511622 BLAKE2B 7f6045e5dcf24f7ccf1ea75c99541f9d DIST wpa_supplicant-2.11.tar.gz 3841433 BLAKE2B 71bd0d11cd31eb5bc6beb51caf0f1399856ea188f316d2330053a2d8c81869057811e9f500828e8981eabd0af38f30a18a3ae584d744005c78681c82fa910abf SHA512 9a0a3a9d6fa2235903c40aa57b5955f0c9dd1dccfd0e3825a3b6f92b3e32db8d464b3ea0aef3285ba3ee109e7b190560cedd744902e954f0003cdba543e277b2 EBUILD wpa_supplicant-2.10-r5.ebuild 12406 BLAKE2B ebaaf0685a183b849bbcba4978f717ea385d66e3bc8e56c557dbd289fc60b2eeb75d7b63adfadbedcee846590bb62d45d66ce68024d5dfc89da11a07d2cd4b6b SHA512 a21336436bdabd80c2e945592afb1722548bd7dfb8c1d70be06688d6394d82ab63945c2c3e5d349b53458c89ab94fed7205c5698b04523cf35cc5e7161ecb74b EBUILD wpa_supplicant-2.10-r6.ebuild 12445 BLAKE2B 9fda2691fe48150436386bb389973916dcce0eacc2e5313e3d72263ead0d0af5241ff769a1e73179f577fd9c358f2841ffc4538570e2052e437e0594d3dfcf2c SHA512 367ffc883d39a262d8e62992911989db1aa49773e979d7c999b016ba73770e90f2754a3abc204cfde1199d0c77ffebedcb61361c8fa2aea9cf8ca68d649702ea +EBUILD wpa_supplicant-2.11-r1.ebuild 11662 BLAKE2B aefd0a4a2e4889a0ba50ffe75ba5c5b7aab588fb8423b6f1a949ef133ab13034a3bfdadf315490ac4a54d7e4dc8ec1c5ddd9b912ca741e968ecd6feeb72ef218 SHA512 2d915580f542b443f0fbb86f7980f56128be5889a5ce4b23b5127e2de3f0fce0a2ecb89642f86c40cf731624cccdee8ef843a1042870c4ebff860c11fb97f414 EBUILD wpa_supplicant-2.11.ebuild 12476 BLAKE2B e66f95e2101dfb8b51d948cb942ebaeabb45d757386b5be32df41e932cbfcec08c3ffbb369e97d67d51f6bc8ab6203aeac64d75c817ec582786df8a9298c6a9c SHA512 9aab43a252252d21c03b60ca81c62e78a71ef68b45cfe3fce00c1b4e1e3d42f87d5ad70498a5649d6d05c8c9f3c833d7060e3652ed3c21d4e80eaa268811064e -EBUILD wpa_supplicant-9999.ebuild 12367 BLAKE2B 92d734b372fed84155a6982ff956ab78d8c3ab69100c3da5b3f385cf1708599744945a393f352e85dab95bf620d557696130a1d18f4d2649e5c6182738607a25 SHA512 7b5a8de61d92673790d8bfc5e737fba747e9506a890b58a757773101b7e511b2e74f72f143c6c806168f372a9a67ea62b9c2fd6255a923f36b82a55c9a9fe09e +EBUILD wpa_supplicant-9999.ebuild 11662 BLAKE2B aefd0a4a2e4889a0ba50ffe75ba5c5b7aab588fb8423b6f1a949ef133ab13034a3bfdadf315490ac4a54d7e4dc8ec1c5ddd9b912ca741e968ecd6feeb72ef218 SHA512 2d915580f542b443f0fbb86f7980f56128be5889a5ce4b23b5127e2de3f0fce0a2ecb89642f86c40cf731624cccdee8ef843a1042870c4ebff860c11fb97f414 MISC metadata.xml 1882 BLAKE2B fc23e2184bd2c01f590800a2087461ba6c5d9d5021f6300f1505671369694374a26d333556b467ca0f41fb90d676a5fcad5b87e80ab8f2b2b891255afa0bcd6b SHA512 05ca61dcaf7c3d7543085be7d375088e5372eb6e3dee0cd9920b763e34f528aa988a8ec484328e122812e0f3208aac308d6011995e5ab1c9599fc7d5b9dc6733 diff --git a/net-wireless/wpa_supplicant/wpa_supplicant-2.11-r1.ebuild b/net-wireless/wpa_supplicant/wpa_supplicant-2.11-r1.ebuild new file mode 100644 index 000000000000..4f34e0835b8c --- /dev/null +++ b/net-wireless/wpa_supplicant/wpa_supplicant-2.11-r1.ebuild @@ -0,0 +1,446 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop linux-info qmake-utils readme.gentoo-r1 systemd toolchain-funcs + +DESCRIPTION="IEEE 802.1X/WPA supplicant for secure wireless transfers" +HOMEPAGE="https://w1.fi/wpa_supplicant/" +LICENSE="|| ( GPL-2 BSD )" + +if [ "${PV}" = "9999" ]; then + inherit git-r3 + EGIT_REPO_URI="https://w1.fi/hostap.git" +else + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" + SRC_URI="https://w1.fi/releases/${P}.tar.gz" +fi + +SLOT="0" +IUSE="+ap broadcom-sta dbus eap-sim eapol-test +fils macsec +mbo +mesh p2p privsep qt6 readline selinux smartcard tkip uncommon-eap-types wep wps" + +# CONFIG_PRIVSEP=y does not have sufficient support for the new driver +# interface functions used for MACsec, so this combination cannot be used +# at least for now. bug #684442 +REQUIRED_USE=" + macsec? ( !privsep ) + mesh? ( ap ) + p2p? ( ap wps ) + privsep? ( !macsec ) + broadcom-sta? ( !fils !mesh !mbo ) +" + +DEPEND=" + >=dev-libs/openssl-1.0.2k:= + dbus? ( sys-apps/dbus ) + kernel_linux? ( + >=dev-libs/libnl-3.2:3 + eap-sim? ( sys-apps/pcsc-lite ) + ) + !kernel_linux? ( net-libs/libpcap ) + qt6? ( + dev-qt/qtbase:6[gui,widgets] + dev-qt/qtsvg:6 + ) + readline? ( + sys-libs/ncurses:0= + sys-libs/readline:0= + ) +" +RDEPEND="${DEPEND} + selinux? ( sec-policy/selinux-networkmanager ) + kernel_linux? ( + net-wireless/wireless-regdb + ) +" +BDEPEND="virtual/pkgconfig" + +DOC_CONTENTS=" + If this is a clean installation of wpa_supplicant, you + have to create a configuration file named + /etc/wpa_supplicant/wpa_supplicant.conf + An example configuration file is available for reference in + /usr/share/doc/${PF}/ +" + +S="${WORKDIR}/${P}/${PN}" + +Kconfig_style_config() { + #param 1 is CONFIG_* item + #param 2 is what to set it = to, defaulting in y + CONFIG_PARAM="${CONFIG_HEADER:-CONFIG_}$1" + setting="${2:-y}" + + if [ ! $setting = n ]; then + #first remove any leading "# " if $2 is not n + sed -i "/^# *$CONFIG_PARAM=/s/^# *//" .config || echo "Kconfig_style_config error uncommenting $CONFIG_PARAM" + #set item = $setting (defaulting to y) + if ! sed -i "/^$CONFIG_PARAM\>/s/=.*/=$setting/" .config; then + echo "Kconfig_style_config error setting $CONFIG_PARAM=$setting" + fi + if [ -z "$( grep ^$CONFIG_PARAM= .config )" ] ; then + echo "$CONFIG_PARAM=$setting" >>.config + fi + else + #ensure item commented out + if ! sed -i "/^$CONFIG_PARAM\>/s/$CONFIG_PARAM/# $CONFIG_PARAM/" .config; then + echo "Kconfig_style_config error commenting $CONFIG_PARAM" + fi + fi +} + +src_prepare() { + default + + # net/bpf.h needed for net-libs/libpcap on Gentoo/FreeBSD + sed -i \ + -e "s:\(#include <pcap\.h>\):#include <net/bpf.h>\n\1:" \ + ../src/l2_packet/l2_packet_freebsd.c || die + + # Change configuration to match Gentoo locations (bug #143750) + sed -i \ + -e "s:/usr/lib/opensc:/usr/$(get_libdir):" \ + -e "s:/usr/lib/pkcs11:/usr/$(get_libdir):" \ + wpa_supplicant.conf || die + + # systemd entries to D-Bus service files (bug #372877) + echo 'SystemdService=wpa_supplicant.service' \ + | tee -a dbus/*.service >/dev/null || die + + cd "${WORKDIR}/${P}" || die + + # bug (320097) + eapply "${FILESDIR}/${PN}-2.6-do-not-call-dbus-functions-with-NULL-path.patch" + + # bug (912315) + eapply "${FILESDIR}/${PN}-2.10-allow-legacy-renegotiation.patch" + + # bug (948052) + eapply "${FILESDIR}/${PN}-2.10-use-qt6.patch" + + # bug (640492) + sed -i 's#-Werror ##' wpa_supplicant/Makefile || die +} + +src_configure() { + # Toolchain setup + tc-export CC PKG_CONFIG + + cp defconfig .config || die + + # Basic setup + Kconfig_style_config CTRL_IFACE + Kconfig_style_config MATCH_IFACE + Kconfig_style_config BACKEND file + Kconfig_style_config IBSS_RSN + Kconfig_style_config IEEE80211W + Kconfig_style_config IEEE80211R + Kconfig_style_config HT_OVERRIDES + Kconfig_style_config VHT_OVERRIDES + Kconfig_style_config OCV + Kconfig_style_config TLSV11 + Kconfig_style_config TLSV12 + Kconfig_style_config GETRANDOM + + # Basic authentication methods + # NOTE: we don't set GPSK or SAKE as they conflict + # with the below options + Kconfig_style_config EAP_GTC + Kconfig_style_config EAP_MD5 + Kconfig_style_config EAP_OTP + Kconfig_style_config EAP_PAX + Kconfig_style_config EAP_PSK + Kconfig_style_config EAP_TLV + Kconfig_style_config EAP_EXE + Kconfig_style_config IEEE8021X_EAPOL + Kconfig_style_config PKCS12 + Kconfig_style_config PEERKEY + Kconfig_style_config EAP_LEAP + Kconfig_style_config EAP_MSCHAPV2 + Kconfig_style_config EAP_PEAP + Kconfig_style_config EAP_TEAP + Kconfig_style_config EAP_TLS + Kconfig_style_config EAP_TTLS + + # Enabling background scanning. + Kconfig_style_config BGSCAN_SIMPLE + Kconfig_style_config BGSCAN_LEARN + + if use dbus ; then + Kconfig_style_config CTRL_IFACE_DBUS + Kconfig_style_config CTRL_IFACE_DBUS_NEW + Kconfig_style_config CTRL_IFACE_DBUS_INTRO + else + Kconfig_style_config CTRL_IFACE_DBUS n + Kconfig_style_config CTRL_IFACE_DBUS_NEW n + Kconfig_style_config CTRL_IFACE_DBUS_INTRO n + fi + + if use eapol-test ; then + Kconfig_style_config EAPOL_TEST + fi + + # Enable support for writing debug info to a log file and syslog. + Kconfig_style_config DEBUG_FILE + Kconfig_style_config DEBUG_SYSLOG + + if use mbo ; then + Kconfig_style_config MBO + else + Kconfig_style_config MBO n + fi + + if use uncommon-eap-types; then + Kconfig_style_config EAP_GPSK + Kconfig_style_config EAP_SAKE + Kconfig_style_config EAP_GPSK_SHA256 + Kconfig_style_config EAP_IKEV2 + Kconfig_style_config EAP_EKE + fi + + if use eap-sim ; then + # Smart card authentication + Kconfig_style_config EAP_SIM + Kconfig_style_config EAP_AKA + Kconfig_style_config EAP_AKA_PRIME + Kconfig_style_config PCSC + fi + + if use readline ; then + # readline/history support for wpa_cli + Kconfig_style_config READLINE + else + #internal line edit mode for wpa_cli + Kconfig_style_config WPA_CLI_EDIT + fi + + Kconfig_style_config TLS openssl + Kconfig_style_config FST + + Kconfig_style_config EAP_PWD + if use fils; then + Kconfig_style_config FILS + Kconfig_style_config FILS_SK_PFS + fi + if use mesh; then + Kconfig_style_config MESH + else + Kconfig_style_config MESH n + fi + # WPA3 + Kconfig_style_config OWE + Kconfig_style_config SAE + Kconfig_style_config DPP + Kconfig_style_config DPP2 + Kconfig_style_config SUITEB192 + Kconfig_style_config SUITEB + + if use wep ; then + Kconfig_style_config WEP + else + Kconfig_style_config WEP n + fi + + # Watch out, reversed logic + if use tkip ; then + Kconfig_style_config NO_TKIP n + else + Kconfig_style_config NO_TKIP + fi + + if use smartcard ; then + Kconfig_style_config SMARTCARD + else + Kconfig_style_config SMARTCARD n + fi + + if use kernel_linux ; then + # Linux specific drivers + Kconfig_style_config DRIVER_ATMEL + Kconfig_style_config DRIVER_HOSTAP + Kconfig_style_config DRIVER_IPW + Kconfig_style_config DRIVER_NL80211 + Kconfig_style_config DRIVER_RALINK + Kconfig_style_config DRIVER_WEXT + Kconfig_style_config DRIVER_WIRED + + if use macsec ; then + #requires something, no idea what + #Kconfig_style_config DRIVER_MACSEC_QCA + Kconfig_style_config DRIVER_MACSEC_LINUX + Kconfig_style_config MACSEC + else + # bug #831369 and bug #684442 + Kconfig_style_config DRIVER_MACSEC_LINUX n + Kconfig_style_config MACSEC n + fi + fi + + # Wi-Fi Protected Setup (WPS) + if use wps ; then + Kconfig_style_config WPS + Kconfig_style_config WPS2 + # USB Flash Drive + Kconfig_style_config WPS_UFD + # External Registrar + Kconfig_style_config WPS_ER + # Universal Plug'n'Play + Kconfig_style_config WPS_UPNP + # Near Field Communication + Kconfig_style_config WPS_NFC + else + Kconfig_style_config WPS n + Kconfig_style_config WPS2 n + Kconfig_style_config WPS_UFD n + Kconfig_style_config WPS_ER n + Kconfig_style_config WPS_UPNP n + Kconfig_style_config WPS_NFC n + fi + + # Wi-Fi Direct (WiDi) + if use p2p ; then + Kconfig_style_config P2P + Kconfig_style_config WIFI_DISPLAY + else + Kconfig_style_config P2P n + Kconfig_style_config WIFI_DISPLAY n + fi + + # Access Point Mode + if use ap ; then + Kconfig_style_config AP + else + Kconfig_style_config AP n + fi + + # Enable essentials for AP/P2P + if use ap || use p2p ; then + # Enabling HT support (802.11n) + Kconfig_style_config IEEE80211N + + # Enabling VHT support (802.11ac) + Kconfig_style_config IEEE80211AC + fi + + # Enable mitigation against certain attacks against TKIP + Kconfig_style_config DELAYED_MIC_ERROR_REPORT + + if use privsep ; then + Kconfig_style_config PRIVSEP + fi + + if use kernel_linux ; then + Kconfig_style_config LIBNL32 + fi + + if use qt6 ; then + pushd "${S}"/wpa_gui-qt4 > /dev/null || die + eqmake6 wpa_gui.pro + popd > /dev/null || die + fi +} + +src_compile() { + einfo "Building wpa_supplicant" + emake V=1 BINDIR=/usr/sbin + + if use qt6; then + einfo "Building wpa_gui" + emake -C "${S}"/wpa_gui-qt4 + fi + + if use eapol-test ; then + emake eapol_test + fi +} + +src_install() { + dosbin wpa_supplicant + use privsep && dosbin wpa_priv + dobin wpa_cli wpa_passphrase + + newinitd "${FILESDIR}/${PN}-init.d" wpa_supplicant + newconfd "${FILESDIR}/${PN}-conf.d" wpa_supplicant + + exeinto /etc/wpa_supplicant/ + newexe "${FILESDIR}/wpa_cli-r1.sh" wpa_cli.sh + + readme.gentoo_create_doc + dodoc ChangeLog {eap_testing,todo}.txt README{,-WPS} \ + wpa_supplicant.conf + + newdoc .config build-config + + if [ "${PV}" != "9999" ]; then + doman doc/docbook/*.{5,8} + fi + + if use qt6 ; then + into /usr + dobin wpa_gui-qt4/wpa_gui + doicon wpa_gui-qt4/icons/wpa_gui.svg + domenu wpa_gui-qt4/wpa_gui.desktop + else + rm "${ED}"/usr/share/man/man8/wpa_gui.8 + fi + + if use dbus ; then + pushd "${S}"/dbus > /dev/null || die + insinto /etc/dbus-1/system.d + newins dbus-wpa_supplicant.conf wpa_supplicant.conf + insinto /usr/share/dbus-1/system-services + doins fi.w1.wpa_supplicant1.service + popd > /dev/null || die + + # This unit relies on dbus support, bug 538600. + systemd_dounit systemd/wpa_supplicant.service + fi + + if use eapol-test ; then + dobin eapol_test + fi + + systemd_dounit "systemd/wpa_supplicant@.service" + systemd_dounit "systemd/wpa_supplicant-nl80211@.service" + systemd_dounit "systemd/wpa_supplicant-wired@.service" +} + +pkg_postinst() { + readme.gentoo_print_elog + + if [[ -e "${EROOT}"/etc/wpa_supplicant.conf ]] ; then + echo + ewarn "WARNING: your old configuration file ${EROOT}/etc/wpa_supplicant.conf" + ewarn "needs to be moved to ${EROOT}/etc/wpa_supplicant/wpa_supplicant.conf" + fi + if ! use wep; then + einfo "WARNING: You are building with WEP support disabled, which is recommended since" + einfo "this protocol is deprecated and insecure. If you still need to connect to" + einfo "WEP-enabled networks, you may turn this flag back on. With this flag off," + einfo "WEP-enabled networks will not even show up as available." + einfo "If your network is missing you may wish to USE=wep" + fi + if ! use tkip; then + ewarn "WARNING: You are building with TKIP support disabled, which is recommended since" + ewarn "this protocol is deprecated and insecure. If you still need to connect to" + ewarn "TKIP-enabled networks, you may turn this flag back on. With this flag off," + ewarn "TKIP-enabled networks, including mixed mode TKIP/AES-CCMP will not even show up" + ewarn "as available. If your network is missing you may wish to USE=tkip" + fi + + # Mea culpa, feel free to remove that after some time --mgorny. + local fn + for fn in wpa_supplicant{,@wlan0}.service; do + if [[ -e "${EROOT}"/etc/systemd/system/network.target.wants/${fn} ]] + then + ebegin "Moving ${fn} to multi-user.target" + mv "${EROOT}"/etc/systemd/system/network.target.wants/${fn} \ + "${EROOT}"/etc/systemd/system/multi-user.target.wants/ || die + eend ${?} \ + "Please try to re-enable ${fn}" + fi + done + + systemd_reenable wpa_supplicant.service +} diff --git a/net-wireless/wpa_supplicant/wpa_supplicant-9999.ebuild b/net-wireless/wpa_supplicant/wpa_supplicant-9999.ebuild index 9fef0e62ce8c..4f34e0835b8c 100644 --- a/net-wireless/wpa_supplicant/wpa_supplicant-9999.ebuild +++ b/net-wireless/wpa_supplicant/wpa_supplicant-9999.ebuild @@ -18,13 +18,15 @@ else fi SLOT="0" -IUSE="ap broadcom-sta dbus eap-sim eapol-test fasteap +fils +hs2-0 macsec +mbo +mesh p2p privsep ps3 qt6 readline selinux smartcard tdls tkip uncommon-eap-types wep wimax wps" +IUSE="+ap broadcom-sta dbus eap-sim eapol-test +fils macsec +mbo +mesh p2p privsep qt6 readline selinux smartcard tkip uncommon-eap-types wep wps" # CONFIG_PRIVSEP=y does not have sufficient support for the new driver # interface functions used for MACsec, so this combination cannot be used # at least for now. bug #684442 REQUIRED_USE=" macsec? ( !privsep ) + mesh? ( ap ) + p2p? ( ap wps ) privsep? ( !macsec ) broadcom-sta? ( !fils !mesh !mbo ) " @@ -108,15 +110,6 @@ src_prepare() { cd "${WORKDIR}/${P}" || die - if use wimax; then - # generate-libeap-peer.patch comes before - # fix-undefined-reference-to-random_get_bytes.patch - eapply "${FILESDIR}/${P}-generate-libeap-peer.patch" - - # multilib-strict fix (bug #373685) - sed -e "s/\/usr\/lib/\/usr\/$(get_libdir)/" -i src/eap_peer/Makefile || die - fi - # bug (320097) eapply "${FILESDIR}/${PN}-2.6-do-not-call-dbus-functions-with-NULL-path.patch" @@ -192,11 +185,6 @@ src_configure() { Kconfig_style_config DEBUG_FILE Kconfig_style_config DEBUG_SYSLOG - if use hs2-0 ; then - Kconfig_style_config INTERWORKING - Kconfig_style_config HS20 - fi - if use mbo ; then Kconfig_style_config MBO else @@ -219,10 +207,6 @@ src_configure() { Kconfig_style_config PCSC fi - if use fasteap ; then - Kconfig_style_config EAP_FAST - fi - if use readline ; then # readline/history support for wpa_cli Kconfig_style_config READLINE @@ -271,10 +255,6 @@ src_configure() { Kconfig_style_config SMARTCARD n fi - if use tdls ; then - Kconfig_style_config TDLS - fi - if use kernel_linux ; then # Linux specific drivers Kconfig_style_config DRIVER_ATMEL @@ -295,10 +275,6 @@ src_configure() { Kconfig_style_config DRIVER_MACSEC_LINUX n Kconfig_style_config MACSEC n fi - - if use ps3 ; then - Kconfig_style_config DRIVER_PS3 - fi fi # Wi-Fi Protected Setup (WPS) @@ -369,11 +345,6 @@ src_compile() { einfo "Building wpa_supplicant" emake V=1 BINDIR=/usr/sbin - if use wimax; then - emake -C ../src/eap_peer clean - emake -C ../src/eap_peer - fi - if use qt6; then einfo "Building wpa_gui" emake -C "${S}"/wpa_gui-qt4 @@ -414,8 +385,6 @@ src_install() { rm "${ED}"/usr/share/man/man8/wpa_gui.8 fi - use wimax && emake DESTDIR="${D}" -C ../src/eap_peer install - if use dbus ; then pushd "${S}"/dbus > /dev/null || die insinto /etc/dbus-1/system.d |