summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChad Huneycutt <chadh@gentoo.org>2002-10-21 23:33:17 +0000
committerChad Huneycutt <chadh@gentoo.org>2002-10-21 23:33:17 +0000
commitb8875a319f6f0a470fada9e090096c72e68a4ea7 (patch)
tree0f71cf0261ed5f8d88b86d2e538c7fc55eebf5eb /sys-apps
parentmasked pcmcia-cs-3.2.1-r2, with a patch for kismet (see bug 7242) (diff)
downloadgentoo-2-b8875a319f6f0a470fada9e090096c72e68a4ea7.tar.gz
gentoo-2-b8875a319f6f0a470fada9e090096c72e68a4ea7.tar.bz2
gentoo-2-b8875a319f6f0a470fada9e090096c72e68a4ea7.zip
patch from airsnort to allow our pcmcia-cs to work with kismet (bug 7242)
Diffstat (limited to 'sys-apps')
-rw-r--r--sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.1-r23
-rw-r--r--sys-apps/pcmcia-cs/pcmcia-cs-3.2.1-r2.ebuild160
2 files changed, 163 insertions, 0 deletions
diff --git a/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.1-r2 b/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.1-r2
new file mode 100644
index 000000000000..32c49c3edcc1
--- /dev/null
+++ b/sys-apps/pcmcia-cs/files/digest-pcmcia-cs-3.2.1-r2
@@ -0,0 +1,3 @@
+MD5 7e9f01a697d2e3e5164340d79474ea30 pcmcia-cs-3.2.1.tar.gz 1250413
+MD5 984c592992ca4db86ae510444711aba5 pcmcia-cs-3.2.1-orinoco-patch.diff 24897
+MD5 c2e545a8358edcd0ecec1be1685fac71 orinoco-0.12b.tar.gz 62958
diff --git a/sys-apps/pcmcia-cs/pcmcia-cs-3.2.1-r2.ebuild b/sys-apps/pcmcia-cs/pcmcia-cs-3.2.1-r2.ebuild
new file mode 100644
index 000000000000..61c61f234bd4
--- /dev/null
+++ b/sys-apps/pcmcia-cs/pcmcia-cs-3.2.1-r2.ebuild
@@ -0,0 +1,160 @@
+# Copyright 1999-2002 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/pcmcia-cs/pcmcia-cs-3.2.1-r2.ebuild,v 1.1 2002/10/21 23:33:17 chadh Exp $
+
+S=${WORKDIR}/${P}
+DESCRIPTION="PCMCIA tools for Linux"
+SRC_URI="mirror://sourceforge/pcmcia-cs/${P}.tar.gz
+ http://airsnort.shmoo.com/pcmcia-cs-3.2.1-orinoco-patch.diff
+ http://ozlabs.org/people/dgibson/dldwd/orinoco-0.12b.tar.gz"
+
+HOMEPAGE="http://pcmcia-cs.sourceforge.net"
+DEPEND="sys-kernel/linux-headers"
+RDEPEND=""
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="x86"
+
+# check arch for configure
+if [ ${ARCH} = "x86" ] ; then
+ MY_ARCH="i386"
+else
+ MY_ARCH="ppc"
+fi
+
+# Note: To use this ebuild, you should have the usr/src/linux symlink to
+# the kernel directory that pcmcia-cs should use for configuration.
+
+src_unpack() {
+ unpack ${P}.tar.gz
+
+ # apply the patch for airsnort
+ ln -s ${P} ${P}-patched
+ pushd ${P}
+ patch -p0 < ${DISTDIR}/${P}-orinoco-patch.diff
+ popd
+
+ if [ -z "`use wavelan`" ] ; then
+
+ unpack orinoco-0.12b.tar.gz
+ cd ${S}
+ mv ../orinoco-0.12b/hermes*.{c,h} \
+ ../orinoco-0.12b/orinoco*.{c,h} \
+ ../orinoco-0.12b/ieee802_11.h wireless/
+
+ fi
+
+ cd ${S}
+ cp Configure Configure.orig
+ sed -e 's:usr/man:usr/share/man:g' Configure.orig > Configure
+ #man pages will now install into /usr/share/man
+
+ cd ${S}
+ ### As per the SourceForge web site reqs and bug #3400
+ # We'll replace all ide_cs with ide-cs
+ cp etc/config etc/config.orig
+ sed -e 's:ide_cs:ide-cs:g' etc/config.orig > etc/config
+ rm -f etc/config.orig
+
+
+}
+
+src_compile() {
+ local myconf
+ if [ -n "`use trusted`" ] ; then
+ myconf="--trust"
+ else
+ myconf="--notrust"
+ fi
+
+ if [ -n "`use apm`" ] ; then
+ myconf="$myconf --apm"
+ else
+ myconf="$myconf --noapm"
+ fi
+
+ if [ -n "`use pnp`" ] ; then
+ myconf="$myconf --pnp"
+ else
+ myconf="$myconf --nopnp"
+ fi
+
+ if [ -n "`use nocardbus`" ] ; then
+ myconf="$myconf --nocardbus"
+ else
+ myconf="$myconf --cardbus"
+ fi
+
+ #use $CFLAGS for user tools, but standard kernel optimizations for the kernel modules (for compatibility)
+ ./Configure -n \
+ --target=${D} \
+ --srctree \
+ --kernel=/usr/src/linux \
+ --arch="${MY_ARCH}" \
+ --uflags="$CFLAGS" \
+ --kflags="-Wall -Wstrict-prototypes -O2 -fomit-frame-pointer" \
+ $myconf || die "failed configuring"
+ # nopnp and noapm are important, because without them the pcmcia-cs
+ # tools will require a kernel with ISA PnP and/or APM support,
+ # which cannot be guaranteed. We need to make sure the tools
+ # work *all* the time, not just some of the time.
+
+ # The --srctree option tells pcmcia-cs to configure for the kernel in /usr/src/linux
+ # rather than the currently-running kernel. It's Gentoo Linux policy to configure for
+ # the kernel in /usr/src/linux
+
+ sed -e "s/^HAS_FORMS=y/HAS_FORMS=n/" config.out > config.out.sed
+ sed -e "s/^FLIBS=\".*\"/FLIBS=\"\"/" config.out.sed > config.out
+ rm -f config.out.sed
+
+ emake all || die "failed compiling"
+}
+
+src_install () {
+ make PREFIX=${D} install || die "failed installing"
+ cd ${D}
+ rm -rf etc/rc*.d
+ # remove X
+ # this is simply much easier than patching configure or the makefiles
+ # not to build them in the first place
+ rm -rf usr/X11R6
+ # todo: if they are nstalled, move them to /usr
+
+ insinto /etc/conf.d
+ newins ${FILESDIR}/pcmcia.conf pcmcia
+
+ exeinto /etc/pcmcia
+ doexe ${FILESDIR}/network
+
+ # install our own init script
+ exeinto /etc/init.d
+ newexe ${FILESDIR}/pcmcia.rc6 pcmcia
+ if [ -z "`use build`" ]
+ then
+ cd ${S}
+ # install docs
+ dodoc BUGS CHANGES COPYING LICENSE MAINTAINERS README \
+ README-2.4 SUPPORTED.CARDS doc/*
+ else
+ rm -rf ${D}/usr/share/man
+ fi
+ rm -f ${D}/etc/modules.conf
+ rm -rf ${D}/var/lib/pcmcia
+
+ # if on ppc set the ppc revised config.opts
+ if [ ${ARCH} = "ppc" ] ; then
+ insinto /etc/pcmcia
+ newins ${FILESDIR}/ppc.config.opts config.opts
+ fi
+}
+
+pkg_postinst() {
+ einfo "To avail yourself of the pcmcia-cs drivers, you have to disable the PCMCIA support in the kernel."
+ einfo "(Otherwise, you might experience CardServices version mismatch errors)"
+ einfo ""
+ einfo "Proper kernel config for this package is that PCMCIA/CardBus under General Setup is off and"
+ einfo "Wireless LAN (non-ham radio) is on but no modules or drivers turned on under Network Device Support"
+ einfo "if you have wireless."
+ einfo ""
+ einfo "If you *don't* want to use Orinoco drivers or if they don't work for you, add +wavelan to USE"
+}