summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-dialup/hcfpcimodem/hcfpcimodem-1.14-r1.ebuild')
-rw-r--r--net-dialup/hcfpcimodem/hcfpcimodem-1.14-r1.ebuild90
1 files changed, 90 insertions, 0 deletions
diff --git a/net-dialup/hcfpcimodem/hcfpcimodem-1.14-r1.ebuild b/net-dialup/hcfpcimodem/hcfpcimodem-1.14-r1.ebuild
new file mode 100644
index 000000000000..7cf2c7d2daf0
--- /dev/null
+++ b/net-dialup/hcfpcimodem/hcfpcimodem-1.14-r1.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-dialup/hcfpcimodem/hcfpcimodem-1.14-r1.ebuild,v 1.1 2008/01/09 19:09:44 mrness Exp $
+
+inherit eutils linux-info
+
+#The document is the same as in hsfmodem, even if it has a different URL
+MY_DOC="100498D_RM_HxF_Released.pdf"
+
+DESCRIPTION="Linuxant's modem driver for Connexant HCF chipset"
+HOMEPAGE="http://www.linuxant.com/drivers/hcf/index.php"
+SRC_URI="http://www.linuxant.com/drivers/hcf/full/archive/${P}full/${P}full.tar.gz
+ doc? ( http://www.linuxant.com/drivers/hcf/full/archive/${P}full/${MY_DOC} )"
+
+LICENSE="Conexant"
+SLOT="0"
+KEYWORDS="-* x86"
+IUSE="doc"
+
+DEPEND="dev-lang/perl
+ app-arch/cpio"
+
+S="${WORKDIR}/${P}full"
+
+QA_EXECSTACK="usr/lib/hcfpcimodem/modules/imported/hcfblam-i386.O usr/lib/hcfpcimodem/modules/imported/hcfengine-i386.O"
+
+pkg_setup() {
+ linux-info_pkg_setup
+
+ MOD_N="hcfpci"
+ # Check to see if module is inserted into kernel, otherwise, build fails
+ if [ "`lsmod | sed '/^'$MOD_N'serial/!d'`" ]; then
+ eerror
+ eerror "Module is in use by the kernel!!!"
+ eerror "Attempting to unload..."
+ eerror
+
+ # Unloading module...
+ ${MOD_N}stop
+ if [ "`lsmod | sed '/^'$MOD_N'serial/!d'`" ]; then
+ eerror "Failed to unload modules from kernel!!!"
+ eerror "Please manualy remove the module from the kernel and emerge again."
+ eerror
+ die
+ fi
+ einfo "Successfuly removed module from memory. Resuming emerge."
+ einfo
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+
+ epatch "${FILESDIR}/${P}-implicit-declarations.patch"
+}
+
+src_compile() {
+ emake all || die "make failed"
+}
+
+pkg_preinst() {
+ local NVMDIR="${ROOT}/etc/${PN}/nvm"
+ if [ -d "${NVMDIR}" ]; then
+ einfo "Cleaning ${NVMDIR}..."
+ rm -rf "${NVMDIR}"
+ eend
+ fi
+}
+
+src_install () {
+ make PREFIX="${D}/usr/" ROOT="${D}" install || die "make install failed"
+
+ # in some cases, kernelcompiler.sh does not have x permission (#173414)
+ fperms a+rx /usr/lib/hcfpcimodem/modules/kernelcompiler.sh
+
+ use doc && dodoc "${DISTDIR}/${MY_DOC}"
+}
+
+pkg_postinst() {
+ if [ "${ROOT}" = / ]; then
+ elog "To complete the installation and configuration of your HCF modem,"
+ elog "please run hcfpciconfig."
+ fi
+}
+
+pkg_prerm() {
+ if [ "${ROOT}" = / -a -f /etc/init.d/hcfpci ] ; then
+ hcfpciconfig --remove || die "hcfpciconfig --remove failed"
+ fi
+}