1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
# Copyright 1999-2001 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# $Header: /var/cvsroot/gentoo-x86/sys-apps/pcmcia-cs/pcmcia-cs-3.1.31-r7.ebuild,v 1.5 2002/07/11 06:30:55 drobbins Exp $
# This ebuild installs ${FILESDIR}/hermes.conf, which you can get from
# http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/hermes.conf
S=${WORKDIR}/${P}
DESCRIPTION="PCMCIA tools for Linux"
SRC_URI="mirror://sourceforge/pcmcia-cs/${P}.tar.gz"
HOMEPAGE="http://pcmcia-cs.sourceforge.net"
DEPEND="sys-kernel/linux-headers"
RDEPEND=""
# 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 ${A}
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
}
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
echo $myconf
#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="i386" \
--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
emake all || die "failed compiling"
}
src_install () {
make PREFIX=${D} install || die "failed installing"
cd ${D}
rm -rf etc/rc*.d
# remove X util if USE X isn't set
# this is simply much easier than patching configure or the makefiles
# not to build them in the first place
use X || rm -rf usr/X11R6
# todo: if they are nstalled, move them to /usr
insinto /etc/conf.d
newins ${FILESDIR}/pcmcia.conf pcmcia
insinto /etc/pcmcia
doins ${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
}
src_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)"
}
|