blob: 58a701e6693266ff6a24c26b0227f63cae3861d2 (
plain)
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
|
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
inherit eutils linux-mod
DESCRIPTION="Intel (R) PRO/Wireless 3945ABG Network Connection"
HOMEPAGE="http://intellinuxwireless.org/?p=iwlwifi"
SRC_URI="http://intellinuxwireless.org/${PN}/downloads/${P}.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86 ~amd64"
IUSE="iwl3945 iwl4965"
DEPEND="|| ( >=virtual/linux-sources-2.6.22_rc1 net-wireless/mac80211 )"
RDEPEND="iwl3945? ( net-wireless/iwlwifi3945-ucode )
iwl4965? ( net-wireless/iwlwifi4965-ucode )
!iwl3945? ( !iwl4965? ( net-wireless/iwlwifi3945-ucode net-wireless/iwlwifi4965-ucode ) )"
S="${WORKDIR}/${P}/compatible"
#MODULE_NAMES="iwl3945(net/wireless)"
BUILD_TARGETS="modules"
pkg_setup() {
if kernel_is ge 2 6 22 ; then
if has_version net-wireless/mac80211 ; then
CONFIG_CHECK="!MAC80211"
ERROR_MAC80211="MAC80211 support already enabled in kernel. Unmerge net-wireless/mac80211 or disable MAC80211 in kernel."
MY_INCLUDE="/usr/include/mac80211"
MY_HEADERS="MAC80211_INC=/usr/include/mac80211/net/"
else
CONFIG_CHECK="MAC80211"
ERROR_MAC80211="MAC80211 support disabled in kernel. Emerge net-wireless/mac80211 or enable MAC80211 in kernel."
MY_INCLUDE="/usr/src/linux/"
MY_HEADERS=""
fi
elif has_version net-wireless/mac80211 ; then
MY_INCLUDE="/usr/include/mac80211"
MY_HEADERS="MAC80211_INC=/usr/include/mac80211/net/"
else
eerror "This ebuild requires kernel >=2.6.22_rc1."
die "Set your /usr/src/linux symlink accordingly."
fi
MODULE_NAMES=""
if use iwl3945; then
MODULE_NAMES="iwl3945(net/wireless)"
fi
if use iwl4965; then
MODULE_NAMES="${MODULE_NAMES} iwl4965(net/wireless)"
fi
if ! use iwl3945 && ! use iwl4965; then
MODULE_NAMES="iwl3945(net/wireless) iwl4965(net/wireless)"
fi
linux-mod_pkg_setup
BUILD_PARAMS="-C ${KV_DIR} M=${S}"
if use iwl3945; then
BUILD_PARAMS="${BUILD_PARAMS} CONFIG_IWL3945=m"
fi
if use iwl4965; then
BUILD_PARAMS="${BUILD_PARAMS} CONFIG_IWL4965=m"
fi
if ! use iwl3945 && ! use iwl4965; then
BUILD_PARAMS="${BUILD_PARAMS} CONFIG_IWL3945=m CONFIG_IWL4965=m"
fi
}
src_unpack() {
unpack ${A}
cd "${WORKDIR}/${P}"
sed -i -e 's/\(.*chmod\)/#\1/' Makefile
make compatible/kversion KSRC="${KV_DIR}" \
${MY_HEADERS} || die "make unmodified failed"
sed -i -e 's%\.\./\(net/mac80211/\)%\1%' "${S}"/*.c "${S}"/*.h
echo "CFLAGS += -I${MY_INCLUDE} -DCONFIG_IWLWIFI_DEBUG=y" \
"-DCONFIG_IWLWIFI_SPECTRUM_MEASUREMENT=y" >> "${S}"/Makefile
}
|