diff options
-rw-r--r-- | sys-apps/lm_sensors/ChangeLog | 8 | ||||
-rw-r--r-- | sys-apps/lm_sensors/files/lm_sensors-3.3.1-sensors-detect-gentoo.patch | 129 | ||||
-rw-r--r-- | sys-apps/lm_sensors/lm_sensors-3.3.1.ebuild | 100 |
3 files changed, 236 insertions, 1 deletions
diff --git a/sys-apps/lm_sensors/ChangeLog b/sys-apps/lm_sensors/ChangeLog index 3c5f7c302447..7ec257b9cfd3 100644 --- a/sys-apps/lm_sensors/ChangeLog +++ b/sys-apps/lm_sensors/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sys-apps/lm_sensors # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/lm_sensors/ChangeLog,v 1.118 2011/07/29 07:56:46 zmedico Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/lm_sensors/ChangeLog,v 1.119 2011/09/30 19:58:10 polynomial-c Exp $ + +*lm_sensors-3.3.1 (30 Sep 2011) + + 30 Sep 2011; Lars Wendler <polynomial-c@gentoo.org> +lm_sensors-3.3.1.ebuild, + +files/lm_sensors-3.3.1-sensors-detect-gentoo.patch: + non-maintainer commit: Version bump (bug #377223). 29 Jul 2011; Zac Medico <zmedico@gentoo.org> lm_sensors-3.3.0.ebuild: Add ~x86-linux keyword. diff --git a/sys-apps/lm_sensors/files/lm_sensors-3.3.1-sensors-detect-gentoo.patch b/sys-apps/lm_sensors/files/lm_sensors-3.3.1-sensors-detect-gentoo.patch new file mode 100644 index 000000000000..58772f215614 --- /dev/null +++ b/sys-apps/lm_sensors/files/lm_sensors-3.3.1-sensors-detect-gentoo.patch @@ -0,0 +1,129 @@ +--- lm_sensors-3.3.1/prog/detect/sensors-detect ++++ lm_sensors-3.3.1/prog/detect/sensors-detect +@@ -20,6 +20,9 @@ + # MA 02110-1301 USA. + # + ++# Gentoo specific modifications based on a patch from Rudo Thomas ++# <thomr9am@ss1000.ms.mff.cuni.cz> ++ + require 5.004; + + use strict; +@@ -6471,26 +6474,33 @@ + print MODPROBE_D $configfile; + close(MODPROBE_D); + } else { ++ print "\nIf you want to load the modules at startup, generate a config file\n", ++ "below and make sure lm_sensors gets started at boot time; e.g\n", ++ "\$ rc-update add lm_sensors default\n"; + print "To make the sensors modules behave correctly, add these lines to\n". +- "/etc/modprobe.conf:\n\n"; ++ "/etc/modules.d/lm_sensors and run modules-update:\n\n"; + print "#----cut here----\n". + $configfile. + "#----cut here----\n\n"; + } + } + +- my $have_sysconfig = -d '/etc/sysconfig'; +- printf "Do you want to \%s /etc/sysconfig/lm_sensors? (\%s): ", +- (-e '/etc/sysconfig/lm_sensors' ? 'overwrite' : 'generate'), +- ($have_sysconfig ? 'YES/no' : 'yes/NO'); +- $_ = <STDIN>; +- if (($have_sysconfig and not m/^\s*n/i) or m/^\s*y/i) { +- unless ($have_sysconfig) { +- mkdir('/etc/sysconfig', 0777) +- or die "Sorry, can't create /etc/sysconfig ($!)"; ++ my $have_config = -f '/etc/conf.d/lm_sensors'; ++ print "\nDo you want to ".($have_config?"overwrite":"generate"). ++ " /etc/conf.d/lm_sensors? Enter s to specify other file name?\n", ++ " (".($have_config?"yes/NO":"YES/no")."/s): "; ++ my $reply = <STDIN>; ++ ++ if (($have_config and $reply =~ /^\s*[Yy]/) or ++ (not $have_config and not $reply =~ /^\s*[Nn]/) or ++ $reply =~ /^\s*[Ss]/) { ++ my $filename = "/etc/conf.d/lm_sensors"; ++ if ($reply =~ /^\s*[Ss]/) { ++ print "Specify the file to store the configuration to: "; ++ $filename = <STDIN>; + } +- open(local *SYSCONFIG, ">/etc/sysconfig/lm_sensors") +- or die "Sorry, can't create /etc/sysconfig/lm_sensors ($!)"; ++ open(local *SYSCONFIG, ">".$filename) ++ or die "Sorry, can't create $filename ($!)."; + print SYSCONFIG "# Generated by sensors-detect on " . scalar localtime() . "\n"; + print SYSCONFIG <<'EOT'; + # This file is sourced by /etc/init.d/lm_sensors and defines the modules to +@@ -6501,6 +6511,11 @@ + # BUS_MODULES for any required bus driver module (for example for I2C or SPI). + + EOT ++ print SYSCONFIG ++ "# Load modules at startup\n". ++ "LOADMODULES=yes\n\n". ++ "# Initialize sensors at startup\n". ++ "INITSENSORS=yes\n\n"; + print SYSCONFIG "BUS_MODULES=\"", join(" ", @{$bus_modules}), "\"\n" + if @{$bus_modules}; + print SYSCONFIG "HWMON_MODULES=\"", join(" ", @{$hwmon_modules}), "\"\n"; +@@ -6509,6 +6524,10 @@ + + # For compatibility reasons, modules are also listed individually as variables + # MODULE_0, MODULE_1, MODULE_2, etc. ++# Please note that the numbers in MODULE_X must start at 0 and increase in ++# steps of 1. Any number that is missing will make the init script skip the ++# rest of the modules. Use MODULE_X_ARGS for arguments. ++# + # You should use BUS_MODULES and HWMON_MODULES instead if possible. + + EOT +@@ -6519,25 +6538,7 @@ + } + close(SYSCONFIG); + +- if (-x "/bin/systemctl" && -d "/lib/systemd/system" && +- ! -f "/lib/systemd/system/lm_sensors.service") { +- print "Copy prog/init/lm_sensors.service to /lib/systemd/system\n". +- "and run 'systemctl enable lm_sensors.service'\n". +- "for initialization at boot time.\n"; +- return; +- } +- +- if (-x "/bin/systemctl" && +- -f "/lib/systemd/system/lm_sensors.service") { +- system("/bin/systemctl", "enable", "lm_sensors.service"); +- system("/bin/systemctl", "start", "lm_sensors.service"); +- # All done, don't check for /etc/init.d/lm_sensors +- return; +- } +- +- print "Copy prog/init/lm_sensors.init to /etc/init.d/lm_sensors\n". +- "for initialization at boot time.\n" +- unless -f "/etc/init.d/lm_sensors"; ++ print "Done.\n"; + + if (-x "/sbin/insserv" && -f "/etc/init.d/lm_sensors") { + system("/sbin/insserv", "/etc/init.d/lm_sensors"); +@@ -6551,20 +6552,6 @@ + "kernel modules.\n\n"; + } + } else { +- print "To load everything that is needed, add this to one of the system\n". +- "initialization scripts (e.g. /etc/rc.d/rc.local):\n\n"; +- print "#----cut here----\n"; +- if (@{$bus_modules}) { +- print "# Adapter drivers\n"; +- print "modprobe $_\n" foreach (@{$bus_modules}); +- } +- print "# Chip drivers\n"; +- print "modprobe $_\n" foreach (@{$hwmon_modules}); +- print((-e '/usr/bin/sensors' ? +- "/usr/bin/sensors -s\n" : +- "/usr/local/bin/sensors -s\n"). +- "#----cut here----\n\n"); +- + print "If you have some drivers built into your kernel, the list above will\n". + "contain too many modules. Skip the appropriate ones! You really\n". + "should try these commands right now to make sure everything is\n". diff --git a/sys-apps/lm_sensors/lm_sensors-3.3.1.ebuild b/sys-apps/lm_sensors/lm_sensors-3.3.1.ebuild new file mode 100644 index 000000000000..01da8a0b55c9 --- /dev/null +++ b/sys-apps/lm_sensors/lm_sensors-3.3.1.ebuild @@ -0,0 +1,100 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/lm_sensors/lm_sensors-3.3.1.ebuild,v 1.1 2011/09/30 19:58:10 polynomial-c Exp $ + +EAPI=3 +inherit eutils linux-info toolchain-funcs multilib + +DESCRIPTION="Hardware Monitoring user-space utilities" +HOMEPAGE="http://www.lm-sensors.org/" +SRC_URI="http://dl.lm-sensors.org/lm-sensors/releases/${P}.tar.bz2" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~mips ~ppc ~sparc ~x86 ~x86-linux" +IUSE="sensord" + +RDEPEND="dev-lang/perl + virtual/logger" +DEPEND="sys-apps/sed + sys-devel/bison + sys-devel/flex + sensord? ( net-analyzer/rrdtool )" + +CONFIG_CHECK="~HWMON ~I2C_CHARDEV ~I2C" +WARNING_HWMON="${PN} requires CONFIG_HWMON to be enabled for use." +WARNING_I2C_CHARDEV="sensors-detect requires CONFIG_I2C_CHARDEV to be enabled." +WARNING_I2C="${PN} requires CONFIG_I2C to be enabled for most sensors." + +src_prepare() { + epatch "${FILESDIR}"/${PN}-3.3.1-sensors-detect-gentoo.patch + + if use sensord; then + sed -i -e 's:^#\(PROG_EXTRA.*\):\1:' Makefile || die + fi + + # Respect LDFLAGS + sed -i -e 's/\$(LIBDIR)$/\$(LIBDIR) \$(LDFLAGS)/g' Makefile || die +} + +src_compile() { + einfo + einfo "You may safely ignore any errors from compilation" + einfo "that contain \"No such file or directory\" references." + einfo + + emake CC="$(tc-getCC)" || die +} + +src_install() { + emake \ + DESTDIR="${D}" \ + PREFIX="${EPREFIX}/usr" \ + MANDIR="${EPREFIX}/usr/share/man" \ + ETCDIR="${EPREFIX}/etc" \ + LIBDIR="${EPREFIX}/usr/$(get_libdir)" \ + install || die + + newinitd "${FILESDIR}"/lm_sensors-3-init.d lm_sensors || die + newinitd "${FILESDIR}"/fancontrol-init.d fancontrol || die + + if use sensord; then + newconfd "${FILESDIR}"/sensord-conf.d sensord || die + newinitd "${FILESDIR}"/sensord-3-init.d sensord || die + fi + + dodoc CHANGES CONTRIBUTORS INSTALL README \ + doc/{donations,fancontrol.txt,fan-divisors,libsensors-API.txt,progs,temperature-sensors,vid} + + docinto chips + dodoc doc/chips/* + + docinto developers + dodoc doc/developers/applications +} + +pkg_postinst() { + elog + elog "Please run \`/usr/sbin/sensors-detect' in order to setup" + elog "/etc/conf.d/lm_sensors." + elog + elog "/etc/conf.d/lm_sensors is vital to the init-script." + elog "Please make sure you also add lm_sensors to the desired" + elog "runlevel. Otherwise your I2C modules won't get loaded" + elog "on the next startup." + elog + elog "You will also need to run the above command if you're upgrading from" + elog "<=${PN}-2, as the needed entries in /etc/conf.d/lm_sensors has" + elog "changed." + elog + elog "Be warned, the probing of hardware in your system performed by" + elog "sensors-detect could freeze your system. Also make sure you read" + elog "the documentation before running lm_sensors on IBM ThinkPads." + elog + elog "Also make sure you have read:" + elog "http://www.lm-sensors.org/wiki/FAQ/Chapter3#Mysensorshavestoppedworkinginkernel2.6.31" + elog + elog "Please refer to the lm_sensors documentation for more information." + elog "(http://www.lm-sensors.org/wiki/Documentation)" + elog +} |