forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
longrun-0.9-r4.ebuild
75 lines (61 loc) · 1.85 KB
/
longrun-0.9-r4.ebuild
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
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
inherit eutils linux-info toolchain-funcs
DESCRIPTION="A utility to control Transmeta's Crusoe and Efficeon processors"
HOMEPAGE="http://freshmeat.net/projects/longrun/"
DEBIAN_PATCH_VERSION="19"
DEBIAN_PATCH="${PN}_${PV}-${DEBIAN_PATCH_VERSION}.diff.gz"
SRC_URI="
mirror://kernel/linux/utils/cpu/crusoe/${P}.tar.bz2
mirror://debian/pool/main/l/${PN}/${DEBIAN_PATCH}"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="-ppc x86"
IUSE=""
DEPEND=""
S=${WORKDIR}/${PN}
CONFIG_CHECK="~X86_MSR ~X86_CPUID"
ERROR_X86_MSR="
Longrun needs a MSR device to function. Please select
MSR under Processor type and features. It can be build
directly into the kernel or as a module.
"
ERROR_X86_CPUID="
Longrun needs a CPUID device to function. Please select
CPUID under Processor type and features. It can be
build directly into the kernel or as a module.
"
src_unpack() {
unpack ${P}.tar.bz2
cd "${S}"
epatch "${DISTDIR}/${DEBIAN_PATCH}"
epatch "${FILESDIR}/${PV}-makefile_cflags.patch"
epatch "${FILESDIR}/${PV}-replace-loff_t.patch"
}
src_compile() {
emake CC="$(tc-getCC)" || die "emake failed"
}
src_install() {
make DESTDIR="${D}" install || die "make install failed"
dodoc MAKEDEV-cpuid-msr
}
pkg_postinst() {
if linux_config_exists; then
if linux_chkconfig_module X86_MSR; then
elog "You have compiled MSR as a module."
elog "You need to load it before using Longrun."
elog "The module is called msr."
elog
fi
if linux_chkconfig_module X86_CPUID; then
elog "You have compiled CPUID as a module."
elog "You need to load it before using Longrun."
elog "The module is called cpuid."
fi
else
elog "You have no kernel configuration available."
elog "Longrun needs both CPUID and MSR capabilites,"
elog "in the kernel you intend to run it under."
fi
}