blob: 4627cb6d1e0f1d6adaec0fbd11874bfdbb4ccb48 (
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
|
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-dialup/bewan-adsl/bewan-adsl-0.9.3-r2.ebuild,v 1.2 2006/10/20 19:46:41 mrness Exp $
inherit eutils linux-mod
DESCRIPTION="Bewan ADSL PCI&USB st driver"
SRC_URI="http://www.bewan.com/bewan/drivers/A1012-A1006-A904-A888-A983-${PV}.tgz"
HOMEPAGE="http://www.bewan.com/"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="x86"
IUSE="usb pcitimer slowpcibridge kt400"
DEPEND="virtual/linux-sources"
RDEPEND=""
S="${WORKDIR}/unicorn"
PCI_S="${S}/unicorn_pci"
USB_S="${S}/unicorn_usb"
BUILD_PARAMS="KERNEL_SOURCES=${KV_DIR} KVERS=${KV_FULL}"
BUILD_TARGETS="modules"
CONFIG_CHECK="ATM"
ATM_ERROR="This driver requires you to build your kernel with support for Asynchronous Transfer Mode (ATM)"
pkg_setup() {
MODULE_NAMES="unicorn_pci_atm(extra:${PCI_S}) unicorn_pci_eth(extra:${PCI_S})"
use usb && MODULE_NAMES="${MODULE_NAMES} unicorn_usb_atm(extra:${USB_S}) unicorn_usb_eth(extra:${USB_S})"
linux-mod_pkg_setup
}
src_unpack() {
unpack ${A}
cd "${S}"
# Fix "unresolved symbol set_cpus_allowed" on SMP kernels (#122103)
# Upstream consider actual version to be thread safe
epatch "${FILESDIR}/${P}-smp.patch"
local f
for f in msw/*.cpp amu/*.cpp ; do
mv ${f} ${f%pp}
done
epatch "${FILESDIR}/${P}-kernel-2.6.18.patch"
epatch "${FILESDIR}/${P}-no-strip.patch"
# Declare desired COPTIONS in the Makefile for the PCI module
use kt400 && sed -i 's/^\(COPTIONS *= *\)/\1 -DKT400/g' "${PCI_S}/Makefile"
use pcitimer && sed -i 's/^\(COPTIONS *= *\)/\1 -DUSE_HW_TIMER/g' "${PCI_S}/Makefile"
use slowpcibridge && sed -i 's/^\(COPTIONS *= *\)/\1 -DPCI_BRIDGE_WORKAROUND/g' "${PCI_S}/Makefile"
# Fix up broken Makefiles
convert_to_m "${PCI_S}/Makefile"
use usb && convert_to_m "${USB_S}/Makefile"
}
src_compile() {
einfo "Build common library"
cd "${S}/libm"
emake CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" || die
einfo "Building tools"
cd "${S}/tools"
emake CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}"
cd "${S}/unicorntest"
emake CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}"
linux-mod_src_compile
}
src_install() {
linux-mod_src_install
cd "${S}"
#Install tools
dodir /usr/bin
cd "${S}/tools" && einstall DESTDIR="${D}" prefix=/usr || \
die "Cannot install tools"
cd "${S}/unicorntest" && einstall DESTDIR="${D}" prefix=/usr || \
die "Cannot install unicorntest"
doman "${S}/Documentation/unicorntest.8"
#Install documantation
cd "${S}"
dodoc README
docinto RFCs
dodoc RFCs/*
docinto scripts
dodoc scripts/*
}
pkg_postinst() {
einfo "To load the driver do 'modprobe unicorn_atm' and 'modprobe unicorn_pci' "
einfo "and then do what you want with it (configure your pppd)"
einfo "OR"
einfo "it's time to look at the README file, the scripts directory gives you"
einfo "two comprehensive ways to load the driver, configure pppd and launch it."
linux-mod_pkg_postinst
}
|