diff --git a/misc/dahdi-kmod/Makefile b/misc/dahdi-kmod/Makefile index e5ff5aba7946..d70392a25ec7 100644 --- a/misc/dahdi-kmod/Makefile +++ b/misc/dahdi-kmod/Makefile @@ -1,78 +1,78 @@ # Created by: Maxim Khon PORTNAME= dahdi-kmod PORTVERSION= ${DAHDI_VERSION:S/-//g} PORTREVISION= 7 CATEGORIES= misc MASTER_SITES= LOCAL/fjoe \ http://downloads.digium.com/pub/telephony/firmware/releases/:firmware DISTNAME= dahdi-freebsd-complete-${DAHDI_VERSION}+${DAHDI_TOOLS_VERSION} DISTFILES= ${DISTNAME}${EXTRACT_SUFX}\ oslec-linux-${OSLEC_VERSION}${EXTRACT_SUFX}\ zaphfc-${ZAPHFC_VERSION}${EXTRACT_SUFX} -MAINTAINER= fjoe@FreeBSD.org +MAINTAINER= dgilbert@eicat.ca COMMENT= Digium/Asterisk Hardware Device Interface -BROKEN= does not compile: use of undeclared identifier 'thread_dtor' +BROKEN= does not compile: use of undeclared identifier 'SX_NOADAPTIVE' RUN_DEPENDS= ${LOCALBASE}/sbin/dahdi_cfg:misc/dahdi ONLY_FOR_ARCHS= amd64 i386 powerpc64 sparc64 DAHDI_VERSION= 2.4.0-rc5 DAHDI_TOOLS_VERSION= 2.4.0-rc1 OSLEC_VERSION= 2.6.35.4 ZAPHFC_VERSION= r5 FIRMWARES= OCT6114_064 OCT6114_128 TC400M HX8 ${_vpmadt032} OCT6114_064_VERSION= 1.05.01 OCT6114_128_VERSION= 1.05.01 TC400M_VERSION= MR6.12 HX8_VERSION= 2.06 VPMADT032_NAME= dahdi-fwload-vpmadt032 VPMADT032_DIR= dahdi_vpmadt032_loader VPMADT032_VERSION= 1.25.0 WRKSRC= ${WRKDIR}/${DISTNAME}/freebsd EXTRA_PATCHES= ${WRKDIR}/zaphfc-${ZAPHFC_VERSION} PATCH_STRIP= -p1 MAKEFILE= BSDmakefile USE_RC_SUBR= dahdi -MAKE_ARGS= ADDITIONAL_DRIVERS="wcb1xxp" NO_FETCH=yes DEPEND_MP= +MAKE_ARGS= ADDITIONAL_DRIVERS="wcb1xxp" NO_FETCH=yes DEPEND_MP= WERROR= GROUPS= dahdi CONFLICTS= zaptel dahdi-kmod26-* USES= kmod uidfix KMODDIR= ${PREFIX}/lib/dahdi .include .if ${ARCH} == "amd64" || ${ARCH} == "i386" PLIST_SUB+= X86="" _vpmadt032= VPMADT032 .else PLIST_SUB+= X86="@comment " .endif .for _f in ${FIRMWARES} ${_f}_NAME?= dahdi-fw-${_f:tl:S/_/-/g} ${_f}_DIR?= ${${_f}_NAME}.bin ${_f}_DISTFILE= ${${_f}_NAME}-${${_f}_VERSION}.tar.gz DISTFILES+= ${${_f}_DISTFILE}:firmware .endfor post-extract: @${LN} -s ../../../linux-${OSLEC_VERSION}/drivers/staging ${WRKSRC}/drivers .for _f in ${FIRMWARES} ${CP} ${DISTDIR}/${${_f}_DISTFILE} ${WRKSRC}/freebsd/${${_f}_DIR} .endfor fw-versions: extract .for _v in ${FIRMWARES:=_VERSION} @${ECHO_CMD} "${_v}=`${MAKE} -V ${_v} -f ${WRKSRC}/firmware.mk`" .endfor .include diff --git a/misc/dahdi-kmod/files/patch-freebsd-drivers-dahdi-dahdi-base.c b/misc/dahdi-kmod/files/patch-freebsd-drivers-dahdi-dahdi-base.c index 6b928dff60e5..feebe1d03720 100644 --- a/misc/dahdi-kmod/files/patch-freebsd-drivers-dahdi-dahdi-base.c +++ b/misc/dahdi-kmod/files/patch-freebsd-drivers-dahdi-dahdi-base.c @@ -1,37 +1,45 @@ ---- freebsd/drivers/dahdi/dahdi-base.c.orig 2015-03-22 00:41:01.893409000 +0600 -+++ freebsd/drivers/dahdi/dahdi-base.c 2015-03-22 00:47:34.870157000 +0600 -@@ -4344,8 +4344,7 @@ +--- freebsd/drivers/dahdi/dahdi-base.c.orig 2021-11-09 20:52:37 UTC ++++ freebsd/drivers/dahdi/dahdi-base.c +@@ -48,6 +48,7 @@ + #include + #include + #include ++#include + + #include "version.h" + +@@ -4344,8 +4345,7 @@ static int dahdi_common_ioctl(struct file *file, unsig if (spans[i]->manufacturer) dahdi_copy_string(stack.spaninfo.manufacturer, spans[i]->manufacturer, sizeof(stack.spaninfo.manufacturer)); - if (spans[i]->devicetype) - dahdi_copy_string(stack.spaninfo.devicetype, spans[i]->devicetype, sizeof(stack.spaninfo.devicetype)); + dahdi_copy_string(stack.spaninfo.devicetype, spans[i]->devicetype, sizeof(stack.spaninfo.devicetype)); dahdi_copy_string(stack.spaninfo.location, spans[i]->location, sizeof(stack.spaninfo.location)); if (spans[i]->spantype) dahdi_copy_string(stack.spaninfo.spantype, spans[i]->spantype, sizeof(stack.spaninfo.spantype)); -@@ -4406,10 +4405,9 @@ +@@ -4406,10 +4406,9 @@ static int dahdi_common_ioctl(struct file *file, unsig dahdi_copy_string(stack.spaninfo_v1.manufacturer, spans[i]->manufacturer, sizeof(stack.spaninfo_v1.manufacturer)); - if (spans[i]->devicetype) - dahdi_copy_string(stack.spaninfo_v1.devicetype, - spans[i]->devicetype, - sizeof(stack.spaninfo_v1.devicetype)); + dahdi_copy_string(stack.spaninfo_v1.devicetype, + spans[i]->devicetype, + sizeof(stack.spaninfo_v1.devicetype)); dahdi_copy_string(stack.spaninfo_v1.location, spans[i]->location, sizeof(stack.spaninfo_v1.location)); -@@ -9263,7 +9261,9 @@ +@@ -9263,7 +9262,9 @@ static struct cdevsw dahdi_devsw = { .d_poll = dahdi_device_poll, .d_mmap = dahdi_device_mmap, .d_name = "dahdi", -#if __FreeBSD_version >= 800039 +#if __FreeBSD_version >= 1000000 + .d_flags = D_TRACKCLOSE | D_NEEDMINOR, +#elif __FreeBSD_version >= 800039 .d_flags = D_PSEUDO | D_TRACKCLOSE | D_NEEDMINOR #else .d_flags = D_PSEUDO | D_TRACKCLOSE