summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Briesenick <sbriesen@gentoo.org>2008-01-30 14:35:36 +0000
committerStefan Briesenick <sbriesen@gentoo.org>2008-01-30 14:35:36 +0000
commit5c6169a394baa8b739949eae1018cad499ed3cb4 (patch)
treedfa1dae2de71e303201e7324b0638dd5543e6201 /net-dialup/fxusb_CZ
parentfixing string.h problem (see bug #202385) + patches for kernel 2.6.24 (thanks... (diff)
downloadgentoo-2-5c6169a394baa8b739949eae1018cad499ed3cb4.tar.gz
gentoo-2-5c6169a394baa8b739949eae1018cad499ed3cb4.tar.bz2
gentoo-2-5c6169a394baa8b739949eae1018cad499ed3cb4.zip
fixing string.h problem (see bug #202385) + patches for kernel 2.6.24 (thanks to Arnd Feldmueller <arnd.feldmueller@web.de>).
(Portage version: 2.1.4)
Diffstat (limited to 'net-dialup/fxusb_CZ')
-rw-r--r--net-dialup/fxusb_CZ/ChangeLog9
-rw-r--r--net-dialup/fxusb_CZ/files/digest-fxusb_CZ-0.1-r13
-rw-r--r--net-dialup/fxusb_CZ/files/fxusb_CZ_kernel-2.6.24.diff46
-rw-r--r--net-dialup/fxusb_CZ/fxusb_CZ-0.1-r1.ebuild53
4 files changed, 110 insertions, 1 deletions
diff --git a/net-dialup/fxusb_CZ/ChangeLog b/net-dialup/fxusb_CZ/ChangeLog
index 40f9e8764cda..2d29c4ee2d49 100644
--- a/net-dialup/fxusb_CZ/ChangeLog
+++ b/net-dialup/fxusb_CZ/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for net-dialup/fxusb_CZ
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-dialup/fxusb_CZ/ChangeLog,v 1.1 2008/01/06 02:09:08 sbriesen Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/fxusb_CZ/ChangeLog,v 1.2 2008/01/30 14:35:36 sbriesen Exp $
+
+*fxusb_CZ-0.1-r1 (30 Jan 2008)
+
+ 30 Jan 2008; Stefan Briesenick <sbriesen@gentoo.org>
+ +files/fxusb_CZ_kernel-2.6.24.diff, +fxusb_CZ-0.1-r1.ebuild:
+ fixing string.h problem (see bug #202385) + patches for kernel 2.6.24
+ (thanks to Arnd Feldmueller <arnd.feldmueller@web.de>).
*fxusb_CZ-0.1 (06 Jan 2008)
diff --git a/net-dialup/fxusb_CZ/files/digest-fxusb_CZ-0.1-r1 b/net-dialup/fxusb_CZ/files/digest-fxusb_CZ-0.1-r1
new file mode 100644
index 000000000000..4357ed7234ad
--- /dev/null
+++ b/net-dialup/fxusb_CZ/files/digest-fxusb_CZ-0.1-r1
@@ -0,0 +1,3 @@
+MD5 8260b5c5c4c632d524c0dd059f60a4db fxusb_CZ-0.1-0.src.rpm 869683
+RMD160 065bf490eebe169c0ed9098152471b19dc021876 fxusb_CZ-0.1-0.src.rpm 869683
+SHA256 10414b666c3f7b59a3ecb405d10428f3be3ca698dbaccfe31711c3a744983fb3 fxusb_CZ-0.1-0.src.rpm 869683
diff --git a/net-dialup/fxusb_CZ/files/fxusb_CZ_kernel-2.6.24.diff b/net-dialup/fxusb_CZ/files/fxusb_CZ_kernel-2.6.24.diff
new file mode 100644
index 000000000000..ad5e5156306e
--- /dev/null
+++ b/net-dialup/fxusb_CZ/files/fxusb_CZ_kernel-2.6.24.diff
@@ -0,0 +1,46 @@
+--- src/driver.c.orig 2008-01-30 15:27:54.000000000 +0100
++++ src/driver.c 2008-01-30 15:27:54.000000000 +0100
+@@ -92,8 +92,12 @@
+ static DECLARE_WAIT_QUEUE_HEAD(capi_wait);
+ static DECLARE_WAIT_QUEUE_HEAD(tx_wait);
+ static DECLARE_WAIT_QUEUE_HEAD(rx_wait);
++static DECLARE_COMPLETION(hotplug); /* New DECLARE, <arnd.feldmueller@web.de> */
++static DECLARE_COMPLETION(notify); /* New DECLARE, <arnd.feldmueller@web.de> */
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24))
+ static DECLARE_MUTEX_LOCKED(hotplug);
+ static DECLARE_MUTEX_LOCKED(notify);
++#endif
+
+ #define SCHED_WAKEUP_CAPI { atomic_set (&thread_capi_flag, 1); wake_up_interruptible (&capi_wait); }
+ #define SCHED_WAKEUP { atomic_set (&got_kicked, 1); wake_up_interruptible (&wait); }
+@@ -787,7 +791,7 @@
+ close_func = func;
+ close_data = data;
+
+- INIT_WORK (&closing_work, closing_worker);
++ INIT_WORK (&closing_work, (work_func_t)closing_worker);
+ schedule_work (&closing_work);
+ LOG("Worker scheduled.\n");
+ } /* start_closing_worker */
+@@ -1211,7 +1215,10 @@
+ }
+ }
+ LOG("Scheduler thread stopped.\n");
++ complete(&hotplug); /* Complete Thread Sync here <arnd.feldmueller@web.de> */
++ #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24))
+ up (&hotplug);
++ #endif
+ return 0;
+ } /* scheduler */
+
+@@ -1246,7 +1253,10 @@
+ SCHED_WAKEUP;
+ }
+ LOG("Scheduler thread signalled, waiting...\n");
++ wait_for_completion(&hotplug); /* Wait for complete Thread Sync <arnd.feldmueller@web.de> */
++ #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24))
+ down (&hotplug);
++ #endif
+ LOG("Scheduler thread[%d] terminated.\n", thread_pid);
+ }
+ thread_pid = -1;
diff --git a/net-dialup/fxusb_CZ/fxusb_CZ-0.1-r1.ebuild b/net-dialup/fxusb_CZ/fxusb_CZ-0.1-r1.ebuild
new file mode 100644
index 000000000000..736efde43763
--- /dev/null
+++ b/net-dialup/fxusb_CZ/fxusb_CZ-0.1-r1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/fxusb_CZ/fxusb_CZ-0.1-r1.ebuild,v 1.1 2008/01/30 14:35:36 sbriesen Exp $
+
+inherit eutils rpm linux-mod
+
+DESCRIPTION="AVM kernel 2.6 modules for Fritz!X USB (Teledat Version)"
+HOMEPAGE="http://opensuse.foehr-it.de/"
+SRC_URI="http://opensuse.foehr-it.de/rpms/10_3/src/${P}-0.src.rpm"
+
+LICENSE="AVM-FC"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE=""
+
+DEPEND="!net-dialup/fritzcapi"
+RDEPEND="${DEPEND} net-dialup/capi4k-utils"
+
+S="${WORKDIR}/fritz"
+
+pkg_setup() {
+ linux-mod_pkg_setup
+
+ if ! kernel_is 2 6; then
+ die "This package works only with 2.6 kernel!"
+ fi
+
+ BUILD_TARGETS="all"
+ BUILD_PARAMS="KDIR=${KV_DIR} LIBDIR=${S}/src"
+ MODULE_NAMES="${PN}(net:${S}/src)"
+}
+
+src_unpack() {
+ rpm_unpack "${DISTDIR}/${A}" || die "failed to unpack ${A} file"
+ DISTDIR="${WORKDIR}" unpack fxusb.tar.gz
+
+ cd "${S}"
+ epatch $(sed -n "s|^Patch[01234]:\s*\(.*\)|../\1|p" ../${PN}.spec)
+ epatch "${FILESDIR}/${PN}_kernel-2.6.24.diff"
+ convert_to_m src/Makefile
+
+ for i in lib/*-lib.o; do
+ einfo "Localize symbols in ${i##*/} ..."
+ objcopy -L memcmp -L memcpy -L memmove -L memset -L strcat \
+ -L strcmp -L strcpy -L strlen -L strncmp -L strncpy "${i}"
+ done
+}
+
+src_install() {
+ linux-mod_src_install
+ dodoc CAPI*.txt README*
+ dohtml *.html
+}