commit:     cc1bf849d92534c7607d5eebc0516605743e3d27
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 27 21:15:21 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Dec 27 21:16:16 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cc1bf849

Revert "net-misc/dahdi: treeclean"

This reverts commit e157726349d8fe33cbb77b44f05b5cc9ace99c34.

Removal date was not yet met & there are plans to possibly resurrect dahdi,
per the bug.

Bug: https://bugs.gentoo.org/914477
Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-misc/dahdi/Manifest              |  25 ++++++++
 net-misc/dahdi/dahdi-3.1.0-r3.ebuild | 107 +++++++++++++++++++++++++++++++
 net-misc/dahdi/dahdi-3.1.0-r4.ebuild | 120 +++++++++++++++++++++++++++++++++++
 net-misc/dahdi/dahdi-3.2.0.ebuild    | 120 +++++++++++++++++++++++++++++++++++
 net-misc/dahdi/metadata.xml          |  19 ++++++
 profiles/package.mask                |   1 +
 6 files changed, 392 insertions(+)

diff --git a/net-misc/dahdi/Manifest b/net-misc/dahdi/Manifest
new file mode 100644
index 000000000000..856dd7fb9c7e
--- /dev/null
+++ b/net-misc/dahdi/Manifest
@@ -0,0 +1,25 @@
+DIST dahdi-fw-a4a-a0017.tar.gz 181429 BLAKE2B 
fb1285eb7d06c8bca5c91b421c408c7f494c05e4ccb89eb0703457059efef78f248a471e0d5ca03fdca97882531eb3b7e0c52e3231b7ef7a90b58c33882772db
 SHA512 
e42cb83e05edb359949acd888a743c665d228cd3b9424fc8f3b60676d6799f4455e65cc269d1e2ac0e3bb5613607dad4fb37c433067832fb68b15bfddf6f4a2a
+DIST dahdi-fw-a4b-d001e.tar.gz 239591 BLAKE2B 
f09c2ee17c9d14b95d5bc90de84cdb57a49c33d44e21c66b8ea29908d9ac58b979a0d0eb3cae80efc5e96de19226a850b2ca36aa2b462af66e02043bc8c3def1
 SHA512 
ab72cf6d469e44f3a8b9dda5e7acae9ae435b6f12b1491079155b8df4c9cf83aed48ccbda4acb4a9943dd6228846f5b82998a0bf575d454ac3b81b72c585d58c
+DIST dahdi-fw-a8a-1d0017.tar.gz 181958 BLAKE2B 
f7955ba62a94a1edd0c859e71c4f820ab789e098e2fd2c48e3fb453fee6ca5b056fe4144f83bd926f61e8f48fa223b84ce6912bf4a384ee9068fbe63538c1047
 SHA512 
2f80d24170f0efdebc318f238abb04664dfa97e3ca47a330b5a5e1d695c8ba5c535ad1302bf338667912b46cd5b4bbb76ab5bdbe6e736edd4f0e9239d818d05d
+DIST dahdi-fw-a8b-1f001e.tar.gz 236508 BLAKE2B 
830cc01cc14eca0367e92e5d6dc10b019e42072da5a69b18095c52633d7dcddade920fd2cf2c43f101effc2319c43a803f433faad244e096fc9854d3d652da7a
 SHA512 
68041e5cb53d8ff6beb9f667abca5a5a1c752357c224f5c7cfcb81732bd417671cf6dc03b5c5bafd6a0864f6c5451165c0f26908b0f40ed3408961f448f2a9a4
+DIST dahdi-fw-hx8-2.06.tar.gz 29252 BLAKE2B 
f3c635108032ff06b51a140f2f665a6a41638eb027d88c33822da9d47fe907eecfaab937ce6199f0d9eeeafbd36919366e039b0bc1a1be605c339055a8b6843b
 SHA512 
d113d2bd10d5a851087e04fadb3427ec07634960d47e2292320f0d195c65075fb24ab173e0985c257eaf8e46f595f29af034fb380382cdbff7bfbc7381dff4ae
+DIST dahdi-fw-oct6114-032-1.05.01.tar.gz 165866 BLAKE2B 
527d49f66924e91b6689cf905f365804be02707476d425e563db763bb158431f0e8bccc8ed38cbe3f4ec91747e53769ab5526cb3949218fc3b8041839796fcbc
 SHA512 
ec47a7aac6a6abc73fe0c7ec3b31eebc868c516aeb1bb584f145f36c28abec21afa12dcec554bceb914c058c83255e32fb8d967ef4d8a5d0161b6053af464a24
+DIST dahdi-fw-oct6114-064-1.05.01.tar.gz 165869 BLAKE2B 
9b21e9a5a9bf85ac18db67b14a457676d32958e1a2316fbf33fb802c1393ef2759a3637a80eafb77e2c496002c76f49705ac9eb2d427b8e079503a31bf930893
 SHA512 
6dcc6a3413c6c0561b08c4949a746cbebc58b8a068481f568007fdc663cfc6ef90417fbd81398055a781367e7db57f0a694745cddcd3c697a4f857be15981549
+DIST dahdi-fw-oct6114-128-1.05.01.tar.gz 165849 BLAKE2B 
8621538d16e028eb2de64fa61c7475874525a302af5603f07a8a948a3c2cc1bd776feeeaf51c4d0c2edc4577156addc27905ecb06c9db6f43400258905cad6bf
 SHA512 
17e83aa57ea8e9d3353027184adb48f664b177a528006d67112a53127fcb19c1011d4f44c2980ab77d27b3bf7f7a74d44f15aaf115e05fa3df8e16d3c30fc267
+DIST dahdi-fw-oct6114-256-1.05.01.tar.gz 171685 BLAKE2B 
2f831da3043c6c73a4a38085d1c2b685acae94d92deba776e47a4d292f1ae65e5686ec3e8c73f0672ea8f390404717662f106b084083af4a8635447cd2f539fe
 SHA512 
e447fe8d24963892339d895450cf7a04da3bdcf1de22630dea68119dbd9da84878478adf8ce0e5ef859e6d677c2a051aa6272de4e0692f5ce0e8b5d0fba4096b
+DIST dahdi-fw-tc400m-MR6.12.tar.gz 1750035 BLAKE2B 
b16a2c77dc0222851af25a11e64e40f2648ec870444373ad2310b8b5157b2a2d5a4a4bf2850551758080e87f43371ff55a11f5f381bd08b060f5062f0faa7587
 SHA512 
88a986d22ead41a3dabc320e13f7a3e6e6ab9e2752aca2cc940ad9c1ec570d4f01e82c46d0ec1b6dc1a87a1df7e94cfb8aa638b44b4fe2254af8962f1fdbac86
+DIST dahdi-fw-te133-7a001e.tar.gz 242987 BLAKE2B 
f6e5fedc742061b0ee26b33c20cb16a7a5efd68de827963dbb5fe3ddeed5bb491643e20818d39c8d0876ab3971c339ce43f03e97af3aff2286b70e020d2e05a4
 SHA512 
acd273bcf9b8e009b986e2c9f068121fad8b9cf8f500b79fd5456225ec4ef81d22f32960246a1e9b49ca7f47efb2f7d346c8727fe3b7b80c700d2dc609784acc
+DIST dahdi-fw-te134-780017.tar.gz 185478 BLAKE2B 
c301362e7433f9c3c9991ae50c0536ad4315fe966dced38fd2be7a9c3b01ce4829d4ecb8ef9756f4ad05b507bb4b6739a861264eb6975512ce8aa5b89b1ca14c
 SHA512 
b6f93ff060512b15bb8462805d8f8a435e56a83be362770d2c3b39b876d2171c5e1e6c1bc42c893eaa382ccd2f19534536612618c4ef4ff8c25976cf3719d4fb
+DIST dahdi-fw-te435-13001e.tar.gz 238504 BLAKE2B 
c348a1e0d187ac4008254c78680dcd2b2ccce3f1af92bced190936c8ace88973e7d6854ed6de0480869ccd687d398958193ad90a648c8fe90464c3d1b5ddf974
 SHA512 
1cd5c191db62f87f87c9f6913bcbc3ed9f3d77a51578cd0bc5fdb9d17e128bcaf66d04c5a9e6417e9d7543fc8f18b6f635f0e8c1cb1bc19b11bc8ddffaa6be08
+DIST dahdi-fw-te436-10017.tar.gz 210601 BLAKE2B 
8aceaa093b457a374db89599779315458a91af3d6f58e74a35ee08d3c91a556b64f78244a9e3e05d9bc8b200be2b3be83d159eb85681f3afb20329f16b2f2445
 SHA512 
56e8a26a737ac45e137324b635e5f489fe05a5939324af038f881b64ddabf486eb3830ff0ada1561ffedb3d6bc8338b11f4dccbc9b2ca9e00cd2bcc85abf83c0
+DIST dahdi-fw-te820-1.76.tar.gz 54303 BLAKE2B 
16a70f103f890275595c1c066d05992b43dd21170fc16669de064e92615e5b049cf5cdf49f9c9d03d9e795172eafad83cd3b0636fb1491df5612358757a2e9d5
 SHA512 
3189df3dd680353d5520773ac8ea7fe638ea05e3c656379c1a245bd3ab8a6ae0c8a1c22c2068be9c758996e5993b0d19376b159b4e868ebc3d817dcce3b9aec7
+DIST dahdi-fw-vpmoct032-1.12.0.tar.gz 443985 BLAKE2B 
f7f1b5240dafeea42c25c19e3bd62a60398e29848d53a24d7cb3263922fc43dbdf0f9b66ba8324e9d7f37047803fd474e90102d4af876169f5597e545b98d529
 SHA512 
3ee8c56a7075d13a6457a5249fcffc04b2da59da94a622cb66810babf46260235492810c867479fccf343e84424c9bcc12c2d05389a52c0a56c62b138f23aeb3
+DIST dahdi-fwload-vpmadt032-1.25.0.tar.gz 149360 BLAKE2B 
bb754b1abf794d918d1c457792a0432adc57dabf73e67868dd7a72995f2e9240a528a357427ae8602b10907c813cc50da4c35b8c060bdc7ece399f096ce6519b
 SHA512 
3534f0bab0e142ae94b9b5c401a5c314bab43bc1ca9283600ca82b1746afa514eff6a965ccc6b48774d577beaddb12d165f66221b3b6457df68ccbcede812047
+DIST dahdi-linux-3.1.0.tar.gz 1645832 BLAKE2B 
27ea6b68318750639fd90f2061e2e9e128e3faa8cc195b368f7157947f5b522f86b871a3b793016945c9faaed20b38a185adafa29b2fc04019063257f578169e
 SHA512 
440f5e44c933c609f2b3cfcf013c84bcd0c37929a43d69aac0276b11484cb890cd5939c5ac5950cad54d934d27ee6ff0b18f2bdd58477ed9be8055de107727b4
+DIST dahdi-linux-3.2.0.tar.gz 1617958 BLAKE2B 
1a35ba69719e7cebf7cf471f901a3280e1558b8e8e4f615fcc974a08a83f62e71ee653b47f3a09e85e96a0447e4516996ef254497746492fe50eebef5515e217
 SHA512 
cb4b06d5a83aae7ce54049137d989fa6275367debc77a1df64cc36ba1bda08a058ea92f01bb873bcd83c3c7d58ff4c5da42c67bbbe8a02b8f4f0e12348c4a072
+DIST gentoo-dahdi-patches-3.1.0-r4.tar.bz2 8631 BLAKE2B 
683cfac178bb2d15053396d45ed6c4b0511952165b3bf4907f8f95737d1b36eab2d7cd7c288924602539779d4251d9ef5d7c369c8c600fa27862c173f4aa1506
 SHA512 
7b4bca16bd0cb9ee9f1d44fedb1077436cd951c3c92693c5b8187e0d2292dc236db89cb2304f80cc287c83ffbf4bd1c8a413c4d508b0493a6be1e3051f2af157
+DIST gentoo-dahdi-patches-3.2.0.tar.bz2 6947 BLAKE2B 
8e4d2245d966a14c6eec7045c74788decc52c5dec562e7d09670766f169e6890a7fae2bf245ab198276780210564e891fe5d16b6e0d44ff5be876f218c23f2fb
 SHA512 
c47a092d17abb0070cebfae540363a01bb8a9927e05524c3d50e76d69249115b3caf83d436469153b7a519e6c6952baab14d6bf898a440373f90d02359fbb4ae
+DIST gentoo-dahdi-patchset-3.1.0-r3.tar.bz2 107738 BLAKE2B 
9c6a846f744753ae133c24425224675fdbeab5c1b1bc70dd621c615af2f13eec6eb4981ec160c813be62d9d69cd8af6b2cd517005399e24f78fa30da5e20c464
 SHA512 
75d6562783adc5584966cba38d92a7d1aba3f448cac486be454f9810bb8380009a71a56261a0820a5eb5e13a2c0b49768c1d6adc2310f0be2133140e9e9ae3de
+DIST gentoo-dahdi-sources-3.1.0-r4.tar.bz2 87720 BLAKE2B 
676a8332b0d68155dc2b24a49f01abd21521c9aeecdc930b2fbf1fcbcda568b8162d9d34a5876b0dcd5510abc72e933a112598863df745a44b54a9bc928c6cb8
 SHA512 
d7f77dcb636e1346bbe18ed780a3df3cab064d12e50f01528a102f9fbadb11661218b8e00e73792003cb7d8440fab58011900244d7555e33a4c26c8164f61762
+DIST gentoo-dahdi-sources-3.2.0.tar.bz2 87595 BLAKE2B 
18a2f007581ac653e0a1a50c77b36b0b2065e1dfd5c32ffe754cbb66b7aaf6df52dc4f856f8a9e0440f6ecf193c56e7506db24ab2b0ede43d9a1185ef84e0036
 SHA512 
4f13597914427f2e6cea08c6dce9e9bedf5d35a62c8d5dc545e8fb1268ffeb5dece84a27c2a50a8d55a7b8eda1d4fe2bfe18465b0492b45a3684170c5a600072
+DIST jnet-dahdi-drivers-1.0.14.tar.gz 64860 BLAKE2B 
c8bbb007cd1a76d02b758af35d1d6a26d5617018ad1de8c69dd9bdf7d781d66b85031706efe55edb32eec1d00f3877fe8a2edd4f9899f367824875cd5fe93984
 SHA512 
419352897d39bae6b51ee302723de6ca3c8041546a1273fa0691cf169e16f37fc730f3033fed4e5f564dce6dcc097e93f609208af8c38d03b9aee96b95037d66

diff --git a/net-misc/dahdi/dahdi-3.1.0-r3.ebuild 
b/net-misc/dahdi/dahdi-3.1.0-r3.ebuild
new file mode 100644
index 000000000000..5dc1b0089be5
--- /dev/null
+++ b/net-misc/dahdi/dahdi-3.1.0-r3.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic linux-mod linux-info toolchain-funcs
+
+MY_P="${P/dahdi/dahdi-linux}"
+JNET=1.0.14
+GENTOO=3.1.0-r3
+S="${WORKDIR}/${MY_P}"
+
+JNET_DRIVERS="cwain qozap ztgsm"
+
+DESCRIPTION="Kernel modules for Digium compatible hardware (formerly known as 
Zaptel)"
+HOMEPAGE="https://www.asterisk.org";
+SRC_URI="https://downloads.asterisk.org/pub/telephony/dahdi-linux/releases/${MY_P}.tar.gz
+       https://www.junghanns.net/downloads/jnet-dahdi-drivers-${JNET}.tar.gz
+       
https://downloads.uls.co.za/gentoo/dahdi/gentoo-dahdi-patchset-${GENTOO}.tar.bz2
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fwload-vpmadt032-1.25.0.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a4a-a0017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a4b-d001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a8a-1d0017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a8b-1f001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-hx8-2.06.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-032-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-064-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-128-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-256-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-tc400m-MR6.12.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te133-7a001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te134-780017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te435-13001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te436-10017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te820-1.76.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-vpmoct032-1.12.0.tar.gz
+"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86"
+IUSE="flash oslec"
+
+PATCHES=( "${WORKDIR}/dahdi-patchset" )
+
+CONFIG_CHECK="MODULES PCI ~CRC_CCITT"
+
+pkg_pretend() {
+       use oslec && CONFIG_CHECK+=" ECHO"
+       check_extra_config
+}
+
+src_unpack() {
+       unpack ${A}
+       # Copy the firmware tarballs over, the makefile will try and download 
them otherwise
+       for file in ${A} ; do
+               [[ "${file}" = dahdi-fw* ]] || continue
+               cp "${DISTDIR}"/${file} "${MY_P}"/drivers/dahdi/firmware/ ||
+                       die "Error copying ${file} to 
${S}/${MY_P}/drivers/dahdi/firmware/"
+       done
+       # But without the .bin's it'll still fall over and die, so copy those 
too.
+       mv *.bin "${MY_P}"/drivers/dahdi/firmware/ ||
+               die "Error moving firmware files into the right folders."
+
+       for drv in ${JNET_DRIVERS}; do
+               ln "${WORKDIR}/jnet-dahdi-drivers-${JNET}/${drv}/${drv}.c" 
"${MY_P}/drivers/dahdi/" ||
+                       die "Error linking ${drv}.c from jnet to DAHDI."
+               ln "${WORKDIR}/jnet-dahdi-drivers-${JNET}/${drv}/${drv}.h" 
"${MY_P}/drivers/dahdi/" ||
+                       die "Error linking ${drv}.h from jnet to DAHDI."
+       done
+}
+
+src_prepare() {
+       if use flash; then
+               sed -i -e "s:/\* #define FXSFLASH \*/:#define FXSFLASH:" 
include/dahdi/dahdi_config.h ||
+                       die "Failed to define FXSFLASH"
+               sed -i -e "s:/\* #define SHORT_FLASH_TIME \*/:#define 
SHORT_FLASH_TIME:" \
+                       include/dahdi/dahdi_config.h || die "Failed to define 
SHORT_FLASH_TIME"
+       fi
+       if use oslec; then
+               sed -i -e 's:^#include .*oslec[.]h:#include 
"/usr/src/linux/drivers/misc/echo/oslec.h:' \
+                       drivers/dahdi/dahdi_echocan_oslec.c || die "Failed to 
prepare oslec source files."
+       fi
+       default
+}
+
+src_compile() {
+       unset ARCH
+       emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" KSRC="${KV_OUT_DIR}" \
+               DAHDI_MODULES_EXTRA="${JNET_DRIVERS// /.o }.o$(usex oslec " 
dahdi_echocan_oslec.o" "")" \
+               LDFLAGS="$(raw-ldflags)" all
+}
+
+src_install() {
+       einfo "Installing kernel module"
+       emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" KSRC="${KV_OUT_DIR}" 
DESTDIR="${D}" \
+               DAHDI_MODULES_EXTRA="${JNET_DRIVERS// /.o }.o$(usex oslec " 
dahdi_echocan_oslec.o" "")" \
+               LDFLAGS="$(raw-ldflags)" install
+
+       # Remove the blank "version" files (these files are all empty, and root 
owned).
+       find "${ED}/lib/firmware" -name ".*" -delete || die "Error removing 
empty firmware version files"
+
+       # If the kernel sources have a System.map, and there a suitable depmod
+       # available (seemingly when we're not cross-compiling), then the kernel
+       # sources depmod kicks in.  Remove the files caused by that.
+       find "${ED}/lib/modules" -name "modules.*" -delete || die "Error 
deleting bogus modules.* files"
+}

diff --git a/net-misc/dahdi/dahdi-3.1.0-r4.ebuild 
b/net-misc/dahdi/dahdi-3.1.0-r4.ebuild
new file mode 100644
index 000000000000..05ae21da55a6
--- /dev/null
+++ b/net-misc/dahdi/dahdi-3.1.0-r4.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic linux-mod toolchain-funcs
+
+MY_P="${P/dahdi/dahdi-linux}"
+JNET=1.0.14
+GENTOO_PATCHVERSION=3.1.0-r4
+GENTOO_SOURCEVERSION=3.1.0-r4
+S="${WORKDIR}/${MY_P}"
+
+JNET_DRIVERS="cwain qozap ztgsm"
+
+DESCRIPTION="Kernel modules for Digium compatible hardware (formerly known as 
Zaptel)"
+HOMEPAGE="https://www.asterisk.org";
+SRC_URI="https://downloads.asterisk.org/pub/telephony/dahdi-linux/releases/${MY_P}.tar.gz
+       https://www.junghanns.net/downloads/jnet-dahdi-drivers-${JNET}.tar.gz
+       
https://downloads.uls.co.za/gentoo/dahdi/gentoo-dahdi-patches-${GENTOO_PATCHVERSION}.tar.bz2
+       
https://downloads.uls.co.za/gentoo/dahdi/gentoo-dahdi-sources-${GENTOO_SOURCEVERSION}.tar.bz2
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fwload-vpmadt032-1.25.0.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a4a-a0017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a4b-d001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a8a-1d0017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a8b-1f001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-hx8-2.06.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-032-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-064-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-128-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-256-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-tc400m-MR6.12.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te133-7a001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te134-780017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te435-13001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te436-10017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te820-1.76.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-vpmoct032-1.12.0.tar.gz
+"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="flash oslec"
+
+PATCHES=( "${WORKDIR}/gentoo-dahdi-patches-${GENTOO_PATCHVERSION}" )
+
+CONFIG_CHECK="MODULES PCI ~CRC_CCITT"
+
+pkg_setup() {
+       use oslec && CONFIG_CHECK+=" ECHO"
+       linux-mod_pkg_setup
+}
+
+src_unpack() {
+       local file drv
+
+       unpack ${A}
+       # Copy the firmware tarballs over, the makefile will try and download 
them otherwise
+       for file in ${A} ; do
+               [[ "${file}" = dahdi-fw* ]] || continue
+               cp "${DISTDIR}"/${file} "${MY_P}"/drivers/dahdi/firmware/ ||
+                       die "Error copying ${file} to 
${S}/${MY_P}/drivers/dahdi/firmware/"
+       done
+       # But without the .bin's it'll still fall over and die, so copy those 
too.
+       mv *.bin "${MY_P}"/drivers/dahdi/firmware/ ||
+               die "Error moving firmware files into the right folders."
+
+       for drv in ${JNET_DRIVERS}; do
+               ln "${WORKDIR}/jnet-dahdi-drivers-${JNET}/${drv}/${drv}.c" 
"${MY_P}/drivers/dahdi/" ||
+                       die "Error linking ${drv}.c from jnet to DAHDI."
+               ln "${WORKDIR}/jnet-dahdi-drivers-${JNET}/${drv}/${drv}.h" 
"${MY_P}/drivers/dahdi/" ||
+                       die "Error linking ${drv}.h from jnet to DAHDI."
+       done
+
+       # Find the stuff from gentoo-sources (ie, modules that has been removed 
by
+       # upstream and we're re-adding).
+       DAHDI_GENTOO_MODULES=""
+       for file in 
"${WORKDIR}/gentoo-dahdi-sources-${GENTOO_SOURCEVERSION}"/*; do
+               [[ -d "${file}" ]] && DAHDI_GENTOO_MODULES+=" $(basename 
"${file}")/"
+               [[ -f "${file}" && "${file}" = *.c ]] && 
DAHDI_GENTOO_MODULES+=" $(basename "${file}" .c).o"
+               mv -n "${file}" "${MY_P}/drivers/dahdi/" || die "Move of 
${file} into dahdi-drivers failed."
+       done
+}
+
+src_prepare() {
+       if use flash; then
+               sed -i -e "s:/\* #define FXSFLASH \*/:#define FXSFLASH:" 
include/dahdi/dahdi_config.h ||
+                       die "Failed to define FXSFLASH"
+               sed -i -e "s:/\* #define SHORT_FLASH_TIME \*/:#define 
SHORT_FLASH_TIME:" \
+                       include/dahdi/dahdi_config.h || die "Failed to define 
SHORT_FLASH_TIME"
+       fi
+       if use oslec; then
+               sed -i -e 's:^#include .*oslec[.]h:#include 
"/usr/src/linux/drivers/misc/echo/oslec.h:' \
+                       drivers/dahdi/dahdi_echocan_oslec.c || die "Failed to 
prepare oslec source files."
+       fi
+       default
+}
+
+src_compile() {
+       unset ARCH
+       emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" KSRC="${KV_OUT_DIR}" \
+               DAHDI_MODULES_EXTRA="${JNET_DRIVERS// /.o }.o$(usex oslec " 
dahdi_echocan_oslec.o" "")" \
+               LDFLAGS="$(raw-ldflags)" all
+}
+
+src_install() {
+       einfo "Installing kernel module"
+       emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" KSRC="${KV_OUT_DIR}" 
DESTDIR="${D}" \
+               DAHDI_MODULES_EXTRA="${JNET_DRIVERS// /.o }.o$(usex oslec " 
dahdi_echocan_oslec.o" "")${DAHDI_GENTOO_MODULES}" \
+               LDFLAGS="$(raw-ldflags)" install
+
+       # Remove the blank "version" files (these files are all empty, and root 
owned).
+       find "${ED}/lib/firmware" -name ".*" -delete || die "Error removing 
empty firmware version files"
+
+       # If the kernel sources have a System.map, and there a suitable depmod
+       # available (seemingly when we're not cross-compiling), then the kernel
+       # sources depmod kicks in.  Remove the files caused by that.
+       find "${ED}/lib/modules" -name "modules.*" -delete || die "Error 
deleting bogus modules.* files"
+}

diff --git a/net-misc/dahdi/dahdi-3.2.0.ebuild 
b/net-misc/dahdi/dahdi-3.2.0.ebuild
new file mode 100644
index 000000000000..8b59341edcee
--- /dev/null
+++ b/net-misc/dahdi/dahdi-3.2.0.ebuild
@@ -0,0 +1,120 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic linux-mod toolchain-funcs
+
+MY_P="${P/dahdi/dahdi-linux}"
+JNET=1.0.14
+GENTOO_PATCHVERSION=3.2.0
+GENTOO_SOURCEVERSION=3.2.0
+S="${WORKDIR}/${MY_P}"
+
+JNET_DRIVERS="cwain qozap ztgsm"
+
+DESCRIPTION="Kernel modules for Digium compatible hardware (formerly known as 
Zaptel)"
+HOMEPAGE="https://www.asterisk.org";
+SRC_URI="https://downloads.asterisk.org/pub/telephony/dahdi-linux/releases/${MY_P}.tar.gz
+       https://www.junghanns.net/downloads/jnet-dahdi-drivers-${JNET}.tar.gz
+       
https://downloads.uls.co.za/gentoo/dahdi/gentoo-dahdi-patches-${GENTOO_PATCHVERSION}.tar.bz2
+       
https://downloads.uls.co.za/gentoo/dahdi/gentoo-dahdi-sources-${GENTOO_SOURCEVERSION}.tar.bz2
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fwload-vpmadt032-1.25.0.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a4a-a0017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a4b-d001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a8a-1d0017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-a8b-1f001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-hx8-2.06.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-032-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-064-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-128-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-oct6114-256-1.05.01.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-tc400m-MR6.12.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te133-7a001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te134-780017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te435-13001e.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te436-10017.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-te820-1.76.tar.gz
+       
https://downloads.digium.com/pub/telephony/firmware/releases/dahdi-fw-vpmoct032-1.12.0.tar.gz
+"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="flash oslec"
+
+PATCHES=( "${WORKDIR}/gentoo-dahdi-patches-${GENTOO_PATCHVERSION}" )
+
+CONFIG_CHECK="MODULES PCI ~CRC_CCITT"
+
+pkg_setup() {
+       use oslec && CONFIG_CHECK+=" ECHO"
+       linux-mod_pkg_setup
+}
+
+src_unpack() {
+       local file drv
+
+       unpack ${A}
+       # Copy the firmware tarballs over, the makefile will try and download 
them otherwise
+       for file in ${A} ; do
+               [[ "${file}" = dahdi-fw* ]] || continue
+               cp "${DISTDIR}"/${file} "${MY_P}"/drivers/dahdi/firmware/ ||
+                       die "Error copying ${file} to 
${S}/${MY_P}/drivers/dahdi/firmware/"
+       done
+       # But without the .bin's it'll still fall over and die, so copy those 
too.
+       mv *.bin "${MY_P}"/drivers/dahdi/firmware/ ||
+               die "Error moving firmware files into the right folders."
+
+       for drv in ${JNET_DRIVERS}; do
+               ln "${WORKDIR}/jnet-dahdi-drivers-${JNET}/${drv}/${drv}.c" 
"${MY_P}/drivers/dahdi/" ||
+                       die "Error linking ${drv}.c from jnet to DAHDI."
+               ln "${WORKDIR}/jnet-dahdi-drivers-${JNET}/${drv}/${drv}.h" 
"${MY_P}/drivers/dahdi/" ||
+                       die "Error linking ${drv}.h from jnet to DAHDI."
+       done
+
+       # Find the stuff from gentoo-sources (ie, modules that has been removed 
by
+       # upstream and we're re-adding).
+       DAHDI_GENTOO_MODULES=""
+       for file in 
"${WORKDIR}/gentoo-dahdi-sources-${GENTOO_SOURCEVERSION}"/*; do
+               [[ -d "${file}" ]] && DAHDI_GENTOO_MODULES+=" $(basename 
"${file}")/"
+               [[ -f "${file}" && "${file}" = *.c ]] && 
DAHDI_GENTOO_MODULES+=" $(basename "${file}" .c).o"
+               mv -n "${file}" "${MY_P}/drivers/dahdi/" || die "Move of 
${file} into dahdi-drivers failed."
+       done
+}
+
+src_prepare() {
+       if use flash; then
+               sed -i -e "s:/\* #define FXSFLASH \*/:#define FXSFLASH:" 
include/dahdi/dahdi_config.h ||
+                       die "Failed to define FXSFLASH"
+               sed -i -e "s:/\* #define SHORT_FLASH_TIME \*/:#define 
SHORT_FLASH_TIME:" \
+                       include/dahdi/dahdi_config.h || die "Failed to define 
SHORT_FLASH_TIME"
+       fi
+       if use oslec; then
+               sed -i -e 's:^#include .*oslec[.]h:#include 
"/usr/src/linux/drivers/misc/echo/oslec.h:' \
+                       drivers/dahdi/dahdi_echocan_oslec.c || die "Failed to 
prepare oslec source files."
+       fi
+       default
+}
+
+src_compile() {
+       unset ARCH
+       emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" KSRC="${KV_OUT_DIR}" \
+               DAHDI_MODULES_EXTRA="${JNET_DRIVERS// /.o }.o$(usex oslec " 
dahdi_echocan_oslec.o" "")" \
+               LDFLAGS="$(raw-ldflags)" all
+}
+
+src_install() {
+       einfo "Installing kernel module"
+       emake V=1 CC="$(tc-getCC)" LD="$(tc-getLD)" KSRC="${KV_OUT_DIR}" 
DESTDIR="${D}" \
+               DAHDI_MODULES_EXTRA="${JNET_DRIVERS// /.o }.o$(usex oslec " 
dahdi_echocan_oslec.o" "")${DAHDI_GENTOO_MODULES}" \
+               LDFLAGS="$(raw-ldflags)" install
+
+       # Remove the blank "version" files (these files are all empty, and root 
owned).
+       find "${ED}/lib/firmware" -name ".*" -delete || die "Error removing 
empty firmware version files"
+
+       # If the kernel sources have a System.map, and there a suitable depmod
+       # available (seemingly when we're not cross-compiling), then the kernel
+       # sources depmod kicks in.  Remove the files caused by that.
+       find "${ED}/lib/modules" -name "modules.*" -delete || die "Error 
deleting bogus modules.* files"
+}

diff --git a/net-misc/dahdi/metadata.xml b/net-misc/dahdi/metadata.xml
new file mode 100644
index 000000000000..2bd89c9cbc5a
--- /dev/null
+++ b/net-misc/dahdi/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+  <maintainer type="person" proxied="yes">
+    <email>j...@uls.co.za</email>
+    <name>Jaco Kroon</name>
+  </maintainer>
+  <maintainer type="project" proxied="proxy">
+    <email>proxy-ma...@gentoo.org</email>
+    <name>Proxy Maintainers</name>
+  </maintainer>
+  <use>
+    <flag name="flash">Support (short) flash on FXS</flag>
+    <flag name="oslec">Enable OSLEC (software) echo canceller (require ECHO in 
kernel)</flag>
+  </use>
+  <upstream>
+    <remote-id type="github">asterisk/dahdi-linux</remote-id>
+  </upstream>
+</pkgmetadata>

diff --git a/profiles/package.mask b/profiles/package.mask
index 23f7e160f250..d141662af22a 100644
--- a/profiles/package.mask
+++ b/profiles/package.mask
@@ -485,6 +485,7 @@ media-video/subtitleripper
 # downstream. Has no active maintainer in Gentoo. If you use DAHDI and have
 # some ideas how to help, please see bug #914477.
 # Removal on 2024-03-01.
+net-misc/dahdi
 net-misc/openr2
 
 # Sam James <s...@gentoo.org> (2023-09-09)

Reply via email to