diff options
Diffstat (limited to 'user/lm_sensors')
-rw-r--r-- | user/lm_sensors/APKBUILD | 85 | ||||
-rw-r--r-- | user/lm_sensors/fancontrol.initd | 33 | ||||
-rw-r--r-- | user/lm_sensors/musl-fix-includes.patch | 62 | ||||
-rw-r--r-- | user/lm_sensors/sensord.confd | 3 | ||||
-rw-r--r-- | user/lm_sensors/sensord.initd | 33 | ||||
-rw-r--r-- | user/lm_sensors/sensors-detect-alpine.patch | 47 | ||||
-rw-r--r-- | user/lm_sensors/sensors.install | 12 |
7 files changed, 275 insertions, 0 deletions
diff --git a/user/lm_sensors/APKBUILD b/user/lm_sensors/APKBUILD new file mode 100644 index 000000000..694adb868 --- /dev/null +++ b/user/lm_sensors/APKBUILD @@ -0,0 +1,85 @@ +# Maintainer: Natanael Copa <ncopa@alpinelinux.org> +pkgname=lm_sensors +pkgver=3.4.0 +pkgrel=5 +pkgdesc="Collection of user space tools for general SMBus access and hardware monitoring." +url="http://www.lm-sensors.org/" +arch="all" +license="GPL" +options="!check" # No test suite. +depends="bash sysfsutils" +makedepends="perl rrdtool-dev bison flex which" +subpackages="$pkgname-dev $pkgname-doc $pkgname-detect $pkgname-sensord + $pkgname-sensord-openrc:sensord_openrc" +#install=sensors.install + +# 2015-11-11 (bpiotrowski): upstream website is down, Fedora mirrored the file +#source="http://dl.lm-sensors.org/lm-sensors/releases/$pkgname-$pkgver.tar.bz2 +source="http://pkgs.fedoraproject.org/repo/pkgs/lm_sensors/lm_sensors-3.4.0.tar.bz2/c03675ae9d43d60322110c679416901a/lm_sensors-3.4.0.tar.bz2 + sensors-detect-alpine.patch + musl-fix-includes.patch + fancontrol.initd + sensord.confd + sensord.initd + " + +prepare() { + cd "$builddir" + sed -i -e 's:^# \(PROG_EXTRA\):\1:' Makefile + # Respect LDFLAGS + sed -i -e 's/\$(LIBDIR)$/\$(LIBDIR) \$(LDFLAGS)/g' Makefile + sed -i -e 's/\$(LIBSHSONAME) -o/$(LIBSHSONAME) \$(LDFLAGS) -o/g' \ + lib/Module.mk + + # do not check for libiconv in ldconfig cache + sed -i -e 's/^LIBICONV.*/LIBICONV ?=/' prog/sensors/Module.mk + + default_prepare +} + +build() { + cd "$builddir" + export CFLAGS="$CFLAGS -fno-stack-protector" + make PREFIX=/usr user +} + +package() { + cd "$builddir" + make PROG_EXTRA:=sensord user_install \ + PREFIX=/usr \ + MANDIR=/usr/share/man \ + DESTDIR="$pkgdir" + + cd "$srcdir" + install -Dm755 fancontrol.initd "$pkgdir"/etc/init.d/fancontrol +} + +detect() { + depends="perl" + pkgdesc="Detection/migration scripts for lm_sensors" + mkdir -p "$subpkgdir"/usr/bin "$subpkgdir"/usr/sbin + cd "$pkgdir" + mv usr/bin/sensors-conf-convert "$subpkgdir"/usr/bin/ + mv usr/sbin/sensors-detect "$subpkgdir"/usr/bin/ +} + +sensord() { + pkgdesc="sensord daemon" + cd "$builddir" + mkdir -p "$subpkgdir"/usr/sbin + mv "$pkgdir"/usr/sbin/sensord "$subpkgdir"/usr/sbin/sensord +} + +sensord_openrc() { + pkgdesc="sensord daemon (OpenRC init scripts)" + install_if="sensord=$pkgver-r$pkgrel openrc" + install -Dm755 "$srcdir"/sensord.initd "$subpkgdir"/etc/init.d/sensord + install -Dm755 "$srcdir"/sensord.confd "$subpkgdir"/etc/conf.d/sensord +} + +sha512sums="993064bd14b855c1ae8c057e89313df5b3d5efe441fb2e8c3e508f42bb15658564df2563fac8fabbdb0d650dfdbc694037736c748d45cb9d85dfb8fb5a3d1ea9 lm_sensors-3.4.0.tar.bz2 +794cf2aaa2a9e809c6b67f4c888a89064bba3e5b9333a9f0101a92372c25012e506fa48e86523f57cf30e5c2a808bc38058fd8640c870ea6b48faab44794cfbb sensors-detect-alpine.patch +333751cb580c94f2d32ef5520d2f2acc0ef7e1cd4a6390ea75cae4c755fbdfcade1805c979ba3319905f1267bdc120a6746e6f70d89e0c72a8c2faefd34a9e79 musl-fix-includes.patch +04756c3844033dc7897e1348181140a43f8470c1bb863f1524b21bbe6be2f13fbf17ac3a68270c96a70d8c148124fea569d1ef75619bbe383e15ec705ea18b21 fancontrol.initd +a77d81ab7ded085ba19e4c637e93268f889ccb8ce9e008a210ae135cb6e2140be07e5d455cf7fcc1084fd57cfbfb3f2bb37207123aebe9566f78b5183806fd7d sensord.confd +9a19874c158e82ab076ed5fb96a40d4bfb4957bfd5a2ce66aa207c06e577bc1b048336c0046a9f856f6d00dc10e68a0dc9726f6e726a8f7bfd50c4043ee1e26a sensord.initd" diff --git a/user/lm_sensors/fancontrol.initd b/user/lm_sensors/fancontrol.initd new file mode 100644 index 000000000..cb29a9ee9 --- /dev/null +++ b/user/lm_sensors/fancontrol.initd @@ -0,0 +1,33 @@ +#!/sbin/openrc-run +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/lm_sensors/files/fancontrol-init.d,v 1.1 2007/05/17 07:31:41 phreak Exp $ + +CONFIG=/etc/fancontrol +PID=/var/run/fancontrol.pid + +depend() { + after lm_sensors +} + +checkconfig() { + if [ ! -f ${CONFIG} ]; then + eerror "Configuration file ${CONFIG} not found" + return 1 + fi +} + +start() { + checkconfig || return 1 + + ebegin "Starting fancontrol" + start-stop-daemon --start --quiet --background --pidfile ${PID} \ + --exec /usr/sbin/fancontrol -- ${CONFIG} + eend ${?} +} + +stop() { + ebegin "Stopping fancontrol" + start-stop-daemon --stop --pidfile ${PID} + eend ${?} +} diff --git a/user/lm_sensors/musl-fix-includes.patch b/user/lm_sensors/musl-fix-includes.patch new file mode 100644 index 000000000..501f2dd76 --- /dev/null +++ b/user/lm_sensors/musl-fix-includes.patch @@ -0,0 +1,62 @@ +--- lm_sensors-3.3.4.orig/prog/dump/isadump.c ++++ lm_sensors-3.3.4/prog/dump/isadump.c +@@ -36,13 +36,7 @@ + #include "util.h" + #include "superio.h" + +- +-/* To keep glibc2 happy */ +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 + #include <sys/io.h> +-#else +-#include <asm/io.h> +-#endif + + #ifdef __powerpc__ + unsigned long isa_io_base = 0; /* XXX for now */ +--- lm_sensors-3.3.4.orig/prog/dump/isaset.c ++++ lm_sensors-3.3.4/prog/dump/isaset.c +@@ -32,13 +32,7 @@ + #include <string.h> + #include "util.h" + +- +-/* To keep glibc2 happy */ +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 + #include <sys/io.h> +-#else +-#include <asm/io.h> +-#endif + + #ifdef __powerpc__ + unsigned long isa_io_base = 0; /* XXX for now */ +--- lm_sensors-3.3.4.orig/prog/dump/superio.c ++++ lm_sensors-3.3.4/prog/dump/superio.c +@@ -20,12 +20,7 @@ + */ + + #include <stdlib.h> +- +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 + #include <sys/io.h> +-#else +-#include <asm/io.h> +-#endif + + #include "superio.h" + +--- lm_sensors-3.3.4.orig/prog/dump/util.c ++++ lm_sensors-3.3.4/prog/dump/util.c +@@ -11,12 +11,7 @@ + #include <stdio.h> + #include "util.h" + +-/* To keep glibc2 happy */ +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 + #include <sys/io.h> +-#else +-#include <asm/io.h> +-#endif + + /* Return 1 if we should continue, 0 if we should abort */ + int user_ack(int def) diff --git a/user/lm_sensors/sensord.confd b/user/lm_sensors/sensord.confd new file mode 100644 index 000000000..d82841aeb --- /dev/null +++ b/user/lm_sensors/sensord.confd @@ -0,0 +1,3 @@ +# Extra options to pass to the sensord daemon, +# see sensord(8) for more information +SENSORD_OPTIONS="" diff --git a/user/lm_sensors/sensord.initd b/user/lm_sensors/sensord.initd new file mode 100644 index 000000000..c100b1aa1 --- /dev/null +++ b/user/lm_sensors/sensord.initd @@ -0,0 +1,33 @@ +#!/sbin/openrc-run +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/lm_sensors/files/sensord-init.d,v 1.1 2007/05/17 07:31:41 phreak Exp $ + +CONFIG=/etc/sensors3.conf + +depend() { + need logger + use lm_sensors +} + +checkconfig() { + if [ ! -f ${CONFIG} ]; then + eerror "Configuration file ${CONFIG} not found" + return 1 + fi +} + +start() { + checkconfig || return 1 + + ebegin "Starting sensord" + start-stop-daemon --start --exec /usr/sbin/sensord \ + -- --config-file ${CONFIG} ${SENSORD_OPTIONS} + eend ${?} +} + +stop() { + ebegin "Stopping sensord" + start-stop-daemon --stop --pidfile /var/run/sensord.pid + eend ${?} +} diff --git a/user/lm_sensors/sensors-detect-alpine.patch b/user/lm_sensors/sensors-detect-alpine.patch new file mode 100644 index 000000000..319fcec06 --- /dev/null +++ b/user/lm_sensors/sensors-detect-alpine.patch @@ -0,0 +1,47 @@ +diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect +index 08721f0..6e83e97 100755 +--- a/prog/detect/sensors-detect ++++ b/prog/detect/sensors-detect +@@ -7059,31 +7059,20 @@ sub write_config + } + } + +- 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'); ++ my $config = '/etc/modules-load.d/lm_sensors.conf'; ++ my $have_config = -f $config; ++ printf "Do you want to \%s \%s? (\%s): ", ++ (-e $config ? 'overwrite' : 'generate'), ++ $config, ++ ($have_config ? 'YES/no' : 'yes/NO'); + $_ = read_answer(); +- 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 ($!)"; +- } +- open(local *SYSCONFIG, ">/etc/sysconfig/lm_sensors") +- or die "Sorry, can't create /etc/sysconfig/lm_sensors ($!)"; ++ if (($have_config and not m/^\s*n/i) or m/^\s*y/i) { ++ open(local *SYSCONFIG, ">$config") ++ or die "Sorry, can't create $config ($!)"; + 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 +-# be loaded/unloaded. +-# +-# The format of this file is a shell script that simply defines variables: +-# HWMON_MODULES for hardware monitoring driver modules, and optionally +-# BUS_MODULES for any required bus driver module (for example for I2C or SPI). +- +-EOT +- print SYSCONFIG "BUS_MODULES=\"", join(" ", @{$bus_modules}), "\"\n" ++ print SYSCONFIG join("\n", @{$bus_modules}), "\n" + if @{$bus_modules}; +- print SYSCONFIG "HWMON_MODULES=\"", join(" ", @{$hwmon_modules}), "\"\n"; ++ print SYSCONFIG join("\n", @{$hwmon_modules}), "\n"; + close(SYSCONFIG); + + if (-x "/bin/systemctl" && -d "/lib/systemd/system" && diff --git a/user/lm_sensors/sensors.install b/user/lm_sensors/sensors.install new file mode 100644 index 000000000..d593f8414 --- /dev/null +++ b/user/lm_sensors/sensors.install @@ -0,0 +1,12 @@ +post_install() { + echo ">>> to control the lm_sensors daemon type" + echo ">>> \"/etc/rc.d/sensors start|stop|restart\" " + echo ">>> --------------------------------------" + echo ">>> before you can use the fancontrol daemon" + echo ">>> first create a fancontrol config file, use \"pwmconfig\"" + echo ">>> then type \"/etc/rc.d/fancontrol start|stop|restart\" " + echo ">>> --------------------------------------" + echo ">>> to decode memory SPD timings modprobe eeprom module" + echo ">>> and get this perl script from" + echo ">>> \"http://www.lm-sensors.org/browser/lm-sensors/trunk/prog/eeprom/decode-dimms.pl\"" +} |