diff options
Diffstat (limited to 'sys-power')
-rw-r--r-- | sys-power/cpufrequtils/ChangeLog | 11 | ||||
-rw-r--r-- | sys-power/cpufrequtils/Manifest | 14 | ||||
-rw-r--r-- | sys-power/cpufrequtils/cpufrequtils-006.ebuild | 49 | ||||
-rw-r--r-- | sys-power/cpufrequtils/files/cpufrequtils-006-modprobe-gov.patch | 50 | ||||
-rw-r--r-- | sys-power/cpufrequtils/files/cpufrequtils-006-nls.patch | 76 | ||||
-rw-r--r-- | sys-power/cpufrequtils/files/cpufrequtils-conf.d-006 | 11 | ||||
-rwxr-xr-x | sys-power/cpufrequtils/files/cpufrequtils-init.d-006 | 41 |
7 files changed, 247 insertions, 5 deletions
diff --git a/sys-power/cpufrequtils/ChangeLog b/sys-power/cpufrequtils/ChangeLog index 410a0b8b9b82..fd1b1023a2c7 100644 --- a/sys-power/cpufrequtils/ChangeLog +++ b/sys-power/cpufrequtils/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for sys-power/cpufrequtils # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-power/cpufrequtils/ChangeLog,v 1.46 2010/01/15 06:04:47 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-power/cpufrequtils/ChangeLog,v 1.47 2010/01/15 07:41:50 vapier Exp $ + +*cpufrequtils-006 (15 Jan 2010) + + 15 Jan 2010; Mike Frysinger <vapier@gentoo.org> + +files/cpufrequtils-conf.d-006, +files/cpufrequtils-init.d-006, + +cpufrequtils-006.ebuild, +files/cpufrequtils-006-modprobe-gov.patch, + +files/cpufrequtils-006-nls.patch: + Version bump #292246 by gionnico with updated NLS patch by Lars Wendler + and a more flexible init.d script #179729 by Oliver Koch. 15 Jan 2010; Mike Frysinger <vapier@gentoo.org> cpufrequtils-005-r1.ebuild: diff --git a/sys-power/cpufrequtils/Manifest b/sys-power/cpufrequtils/Manifest index 5f9458d48266..5febc9d2f626 100644 --- a/sys-power/cpufrequtils/Manifest +++ b/sys-power/cpufrequtils/Manifest @@ -3,16 +3,22 @@ Hash: SHA256 AUX cpufrequtils-005-build.patch 844 RMD160 494f3e1c6681ac01e922bf4a527a8b89f878ea4b SHA1 1266a39a756ee9a2972a47d7b5b5833168146428 SHA256 5b33a052abab8cf33913ffbf649707a238ec4c13320985933552c1a8b0761f9a AUX cpufrequtils-005-nls.patch 1581 RMD160 614aee44a46cb01033c7c577711e9f07b70f824b SHA1 1072c513b41e5f43ef895f7d1c99eca3634ded3f SHA256 5ab12e4b5061b72e33c79ee15862db2127c0284532f6016064976c71772daf6e +AUX cpufrequtils-006-modprobe-gov.patch 1403 RMD160 bac53b2bb395e48abbcf6bddc731060dbf20d0d1 SHA1 213f56cdacae8d8b95b6e2f0e0afa171b71ee20a SHA256 47df8ccf9ff283fe8c0c4318dc43ba0545656f78def4ae4a767d54de34af56cb +AUX cpufrequtils-006-nls.patch 1684 RMD160 b676983d37e7e07fd330bd81788d3d49d861b81c SHA1 dc2754021fb3ff410cae4ea1149688d3a878724d SHA256 4848b3c75b11d58d63625471d93b840d8a4ca798e7b82558dcd860a0fe2b9826 AUX cpufrequtils-conf.d-005 277 RMD160 09bdd1c1b218f9aa9ce448b01eb0c9f0dc0613c2 SHA1 2befd01f2d527916eee5429920a083ea9543daa1 SHA256 602b65f6e9927bfb37a26a34c1b44bd4a87cdb2977b5547398e17432afe55727 +AUX cpufrequtils-conf.d-006 398 RMD160 e3e5f52e5a7c51961506b2220c53d9fbd53c061f SHA1 90547acd2466d383b81540cdb253408bbcd160a9 SHA256 f93fed316a161977360a3764f503680316f88e9f8e40f264fccdfbb7d6a6e8d5 AUX cpufrequtils-init.d-005 531 RMD160 4bca2bc3868c3ef73bf53f3bbd83bd4c4a7164f4 SHA1 67d0fc02e59060358f5a82ea314830df19625524 SHA256 af83b2354bd8876efecd85762a61a40a4b498633e186cb85db7a22389936a2e6 +AUX cpufrequtils-init.d-006 861 RMD160 7131a3482242d83750c018d1a4f6f6ac31e2f74d SHA1 7c855d01b6d90fe4681c6403f829af823ea5954b SHA256 0fc8e824933d8af8fe19151b1603eba1141f6e5a1d32ad91df3fd810c4518ca5 DIST cpufrequtils-005.tar.bz2 39013 RMD160 284b28792635f37a909cc4aaeb626e01936fe95a SHA1 4033b8bb54fbcf13a59d4444e0883160c5499ad1 SHA256 a2c5898cbea032decc6143e82577c2bd948d6d9e97cd09d458e67c92e248bebe +DIST cpufrequtils-006.tar.bz2 52315 RMD160 b60c1c897ca932c6251b1445a170c79da1e259ce SHA1 f6c824e446fd72d69c16867c6c1808d1baf5415e SHA256 b8e77854a1400b0cc73295f3ee5d0a0c3650438e677526a199e08f6680c15aa1 EBUILD cpufrequtils-005-r1.ebuild 1261 RMD160 c05e2849758aa5cd0a5a1560b1bde4c0efdba27d SHA1 7b421ada7beb267804814db9d0dd5b37d88b64f3 SHA256 bc2b10bbc66eb745ebc02e61c8d7e946905d02381cee30f6b063a4e631d2ee80 -MISC ChangeLog 7990 RMD160 e01bc623a53bfde09c4b11eb523edd248544cc88 SHA1 e8cd2b7e6c1f36b4370c7a5d92e1f3c5517922ab SHA256 2d0e2e9efc47cb630b0ef96a0e8c623144453157763923835a212c353df8d294 +EBUILD cpufrequtils-006.ebuild 1339 RMD160 962ccce5fe0913b3c46ead90beae0e88a19ca9da SHA1 007e98c9c1087de68131a765b217b5240c3dd51c SHA256 3ab761e5a97097388bf636115b34b89b576321090517754c1ee42f2a11e30027 +MISC ChangeLog 8383 RMD160 08505a149abafea0caf77c3edfd1f94e72ba0b89 SHA1 7c729b37276ac280ed1b8b716a9456e32852e6c9 SHA256 a27460a63e9908f175e6bca69ea2e355fc5bdfd1a41c516d17b08f527d5d997a MISC metadata.xml 160 RMD160 8521c3bd3ae0fb2bfddce5edb33fd31e223747e1 SHA1 194b7194f38673fe427e5893a42cd4c1506ce846 SHA256 b13062a43e40469b137e1206494a44b45755ea69511b64e5373cb1ce30bbb160 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.14 (GNU/Linux) -iF4EAREIAAYFAktQBaAACgkQTwhj9JtAlp7mwQD+OmTJr62VYXjb+QXPbXBpyjLy -OkA5Wxrt3B7CU6Kr/VABALOJkRY6ZHMALA5hcokf4p4qsA5qwH8YQQG3UrMn/3S8 -=7QnW +iF4EAREIAAYFAktQHGAACgkQTwhj9JtAlp7Q3QD9H2e+NwsnnEQHzem5wFa540p9 +UE7iAGTgJlCprb5d5m8A/3Xff74gTugCSwn0RA3cpD6K0aaY5m4SU/KM+bgz7+Cw +=eBOy -----END PGP SIGNATURE----- diff --git a/sys-power/cpufrequtils/cpufrequtils-006.ebuild b/sys-power/cpufrequtils/cpufrequtils-006.ebuild new file mode 100644 index 000000000000..73ee25521872 --- /dev/null +++ b/sys-power/cpufrequtils/cpufrequtils-006.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-power/cpufrequtils/cpufrequtils-006.ebuild,v 1.1 2010/01/15 07:41:50 vapier Exp $ + +inherit eutils toolchain-funcs multilib + +DESCRIPTION="Userspace utilities for the Linux kernel cpufreq subsystem" +HOMEPAGE="http://www.kernel.org/pub/linux/utils/kernel/cpufreq/cpufrequtils.html" +SRC_URI="mirror://kernel/linux/utils/kernel/cpufreq/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="debug nls" + +DEPEND="sys-fs/sysfsutils" + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${PN}-005-build.patch + epatch "${FILESDIR}"/${PN}-006-nls.patch #205576 #292246 + epatch "${FILESDIR}"/${PN}-006-modprobe-gov.patch #204069 +} + +ft() { use $1 && echo true || echo false ; } + +src_compile() { + emake \ + OPTIMIZATION= V=true \ + DEBUG=$(ft debug) \ + NLS=$(ft nls) \ + CC=$(tc-getCC) LD=$(tc-getCC) AR=$(tc-getAR) STRIP=: RANLIB=$(tc-getRANLIB) \ + || die "emake failed" +} + +src_install() { + emake \ + DESTDIR="${D}" \ + NLS=$(ft nls) \ + mandir=/usr/share/man \ + libdir=/usr/$(get_libdir) \ + install || die "make install failed" + + newinitd "${FILESDIR}"/${PN}-init.d-006 ${PN} + newconfd "${FILESDIR}"/${PN}-conf.d-006 ${PN} + + dodoc AUTHORS README +} diff --git a/sys-power/cpufrequtils/files/cpufrequtils-006-modprobe-gov.patch b/sys-power/cpufrequtils/files/cpufrequtils-006-modprobe-gov.patch new file mode 100644 index 000000000000..4011f77bf236 --- /dev/null +++ b/sys-power/cpufrequtils/files/cpufrequtils-006-modprobe-gov.patch @@ -0,0 +1,50 @@ +if a gov isnt loaded, try to modprobe it first + +http://bugs.gentoo.org/204069 + +--- a/lib/sysfs.c ++++ b/lib/sysfs.c +@@ -12,6 +12,7 @@ + #include <limits.h> + #include <sys/types.h> + #include <sys/stat.h> ++#include <sys/wait.h> + #include <fcntl.h> + #include <unistd.h> + +@@ -539,8 +540,23 @@ static int verify_gov(char *new_gov, char *passed_gov) + return 0; + } + ++static int modprobe(const char *module) ++{ ++ char new_module[strlen(module) + 10]; ++ int status; ++ pid_t child; ++ ++ sprintf(new_module, "cpufreq_%s", module); ++ child = vfork(); ++ if (child == 0) ++ _exit(execlp("modprobe", "modprobe", "-q", new_module, NULL)); ++ waitpid(child, &status, 0); ++ return (WIFEXITED(status) && WEXITSTATUS(status) == 0 ? 0 : 1); ++} ++ + int sysfs_modify_policy_governor(unsigned int cpu, char *governor) + { ++ int ret; + char new_gov[SYSFS_PATH_MAX]; + + if (!governor) +@@ -549,7 +565,10 @@ int sysfs_modify_policy_governor(unsigned int cpu, char *governor) + if (verify_gov(new_gov, governor)) + return -EINVAL; + +- return sysfs_write_one_value(cpu, WRITE_SCALING_GOVERNOR, new_gov, strlen(new_gov)); ++ ret = sysfs_write_one_value(cpu, WRITE_SCALING_GOVERNOR, new_gov, strlen(new_gov)); ++ if (ret == -ENODEV && modprobe(new_gov) == 0) ++ return sysfs_write_one_value(cpu, WRITE_SCALING_GOVERNOR, new_gov, strlen(new_gov)); ++ return ret; + }; + + int sysfs_modify_policy_max(unsigned int cpu, unsigned long max_freq) diff --git a/sys-power/cpufrequtils/files/cpufrequtils-006-nls.patch b/sys-power/cpufrequtils/files/cpufrequtils-006-nls.patch new file mode 100644 index 000000000000..fa0b6015c4a4 --- /dev/null +++ b/sys-power/cpufrequtils/files/cpufrequtils-006-nls.patch @@ -0,0 +1,76 @@ +make nls/gettext support optional + +patch by +Jos van der Ende <seraph@xs4all.nl> +Lars Wendler <polynomial-c@gentoo.org> + +http://bugs.gentoo.org/205576 +http://bugs.gentoo.org/292246 + +--- cpufrequtils-006/Makefile ++++ cpufrequtils-006/Makefile +@@ -147,6 +147,7 @@ + ifeq ($(strip $(NLS)),true) + INSTALL_NLS += install-gmo + COMPILE_NLS += update-gmo ++ CFLAGDEF += -DNLS + endif + + ifeq ($(strip $(CPUFRQ_BENCH)),true) +--- cpufrequtils-006/utils/info.c ++++ cpufrequtils-006/utils/info.c +@@ -10,7 +10,6 @@ + #include <errno.h> + #include <stdlib.h> + #include <string.h> +-#include <libintl.h> + #include <locale.h> + + #include <getopt.h> +@@ -18,9 +17,18 @@ + #include "cpufreq.h" + + ++#ifdef NLS ++#include <libintl.h> + #define _(String) gettext (String) + #define gettext_noop(String) String + #define N_(String) gettext_noop (String) ++#else ++#define gettext_noop(String) String ++#define _(String) gettext_noop (String) ++#define gettext(String) gettext_noop (String) ++#define N_(String) gettext_noop (String) ++#define textdomain(String) ++#endif + + #define LINE_LEN 10 + +--- cpufrequtils-006/utils/set.c ++++ cpufrequtils-006/utils/set.c +@@ -12,16 +12,24 @@ + #include <limits.h> + #include <string.h> + #include <ctype.h> +-#include <libintl.h> + #include <locale.h> + + #include <getopt.h> + + #include "cpufreq.h" + ++#ifdef NLS ++#include <libintl.h> + #define _(String) gettext(String) + #define gettext_noop(String) String + #define N_(String) gettext_noop(String) ++#else ++#define gettext_noop(String) String ++#define _(String) gettext_noop (String) ++#define gettext(String) gettext_noop (String) ++#define N_(String) gettext_noop (String) ++#define textdomain(String) ++#endif + + #define NORM_FREQ_LEN 32 + diff --git a/sys-power/cpufrequtils/files/cpufrequtils-conf.d-006 b/sys-power/cpufrequtils/files/cpufrequtils-conf.d-006 new file mode 100644 index 000000000000..895966448e44 --- /dev/null +++ b/sys-power/cpufrequtils/files/cpufrequtils-conf.d-006 @@ -0,0 +1,11 @@ +# /etc/conf.d/cpufrequtils: config file for /etc/init.d/cpufrequtils + +# Options when starting cpufreq (given to the `cpufreq-set` program) +START_OPTS="--governor ondemand" + +# Options when stopping cpufreq (given to the `cpufreq-set` program) +STOP_OPTS="--governor performance" + +# Extra settings to write to sysfs cpufreq values. +#SYSFS_EXTRA="ondemand/ignore_nice_load=1 ondemand/up_threshold=70" + diff --git a/sys-power/cpufrequtils/files/cpufrequtils-init.d-006 b/sys-power/cpufrequtils/files/cpufrequtils-init.d-006 new file mode 100755 index 000000000000..201f2341cbf9 --- /dev/null +++ b/sys-power/cpufrequtils/files/cpufrequtils-init.d-006 @@ -0,0 +1,41 @@ +#!/sbin/runscript +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-power/cpufrequtils/files/cpufrequtils-init.d-006,v 1.1 2010/01/15 07:41:51 vapier Exp $ + +affect_change() { + local c ret=0 opts="$1" + shift + ebegin "Running cpufreq-set ${opts}" + for c in $(cpufreq-info -o | awk '$1 == "CPU" { print $2 }') ; do + cpufreq-set -c ${c} ${opts} + : $(( ret += $? )) + done + eend ${ret} + + if [ $# -gt 0 ] ; then + c=1 + einfo "Setting extra options: $*" + if cd /sys/devices/system/cpu/cpufreq ; then + local o v + for o in "$@" ; do + v=${o#*=} + o=${o%%=*} + echo ${v} > ${o} || break + done + c=0 + fi + eend ${c} + : $(( ret += c )) + fi + + return ${ret} +} + +start() { + affect_change "${START_OPTS}" ${SYSFS_EXTRA} +} + +stop() { + affect_change "${STOP_OPTS}" +} |