| # Copyright 1999-2012 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| 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" |
| RDEPEND="${DEPEND}" |
| |
| 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} |
| |
| cd "${S}" |
| epatch "${FILESDIR}"/${P}-gentoo.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 |
| } |