blob: 7aa67d2df636616890fe5121e5e1ecb5cf9f15e0 (
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
104
105
106
107
108
109
110
111
112
113
114
|
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-tv/linuxtv-dvb/linuxtv-dvb-1.1.1-r1.ebuild,v 1.10 2005/12/09 22:13:05 zzam Exp $
inherit eutils kernel-mod
DESCRIPTION="Standalone DVB driver for Linux kernel 2.4.x"
HOMEPAGE="http://www.linuxtv.org"
SRC_URI="http://www.linuxtv.org/download/dvb/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha ~amd64 ia64 ppc x86"
IUSE=""
DEPEND="virtual/linux-sources"
#RDEPEND=""
pkg_setup() {
if kernel-mod_is_2_4_kernel; then
einfo
einfo "Please make sure that the following option is enabled"
einfo "in your current kernel 'Multimedia devices'"
einfo "and /usr/src/linux point's to your current kernel"
einfo "or make will die."
einfo
fi
}
src_compile() {
# Nothing to compile if running on a kernel 2.6 system
# modules in kernel are newer!
if kernel-mod_is_2_4_kernel; then
# don't interfere with the kernel arch variables
unset ARCH
emake BUILD_DIR=${S}/build-2.4 KDIR=/usr/src/linux || die "emake failed"
else
einfo "Nothing to compile."
fi
}
src_install() {
# see what kernel directory we need to
# go to
if kernel-mod_is_2_4_kernel; then
cd ${S}/build-2.4
KV_OBJ="o"
else
KV_OBJ="ko"
fi
if kernel-mod_is_2_4_kernel; then
#copy over the insmod.sh script
#for loading all modules
sed -e "s:insmod ./:modprobe :" -i insmod.sh
sed -e "s:.${KV_OBJ}::" -i insmod.sh
newsbin insmod.sh dvb-module-load
else
# copy kernel 2.6 insmod.sh script
sed -e "s:insmod ./:modprobe :" -i build-2.6/insmod.sh
sed -e "s:.${KV_OBJ}::" -i build-2.6/insmod.sh
newsbin build-2.6/insmod.sh dvb-module-load
fi
if kernel-mod_is_2_4_kernel; then
# install the modules
insinto /lib/modules/${KV}/misc
doins *.${KV_OBJ}
# install the header files
# linux26-headers installs those
# FIXME: is it save to assume _all_ kernel 2.6 users got that?
cd ${S}/linux/include/linux/dvb
insinto /usr/include/linux/dvb
doins *.h
fi
#install the main docs
cd ${S}
dodoc MAKEDEV-DVB.sh NEWS README README.bt8xx TODO TROUBLESHOOTING
#install the other docs
cd ${S}/doc
dodoc HOWTO-use-the-demux-api \
README.valgrind HOWTO-use-the-frontend-api \
convert.sh valgrind-2.1.0-dvb.patch
}
pkg_postinst() {
einfo "If you don't use devfs, execute MAKEDEV-DVB.sh to create"
einfo "the device nodes. The file is in /usr/share/doc/${PF}/"
einfo
einfo "A file called dvb-module-load has been created to simplify loading all modules."
einfo "Call it using 'dvb-module-load {load|debug|unload}'."
einfo
einfo "For information about firmware please see /usr/share/doc/${PF}/README."
einfo
einfo "Firmware-files can be found in media-tv/linuxtv-dvb-firmware"
einfo
if kernel-mod_is_2_4_kernel; then
einfo "Checking kernel module dependencies"
test -r "${ROOT}/usr/src/linux/System.map" && \
depmod -ae -F "${ROOT}/usr/src/linux/System.map" -b "${ROOT}" -r ${KV}
else
einfo
einfo "Modules for kernel 2.6 will not be built."
einfo "According to the README-2.6 the driver in kernel"
einfo "2.6.1 and above is regularily kept up-to-date."
einfo "Therefore it is very likely that your kernel"
einfo "has newer modules then the latest release."
einfo "This ebuild will just install the docs"
einfo "on kernel 2.6 machines."
einfo
fi
}
|