--- lcd4linux-0.10.1~rc2.orig/udelay.c +++ lcd4linux-0.10.1~rc2/udelay.c @@ -55,11 +55,6 @@ #include #include -#ifdef HAVE_ASM_MSR_H -#define u32 unsigned int -#include -#endif - #include "debug.h" #include "cfg.h" @@ -67,79 +62,10 @@ #include "udelay.h" -static unsigned int ticks_per_usec = 0; - - -static void getCPUinfo(int *hasTSC, double *MHz) -{ - int fd; - char buffer[4096], *p; - - *hasTSC = 0; - *MHz = -1; - - fd = open("/proc/cpuinfo", O_RDONLY); - if (fd == -1) { - error("udelay: open(/proc/cpuinfo) failed: %s", strerror(errno)); - return; - } - if (read(fd, &buffer, sizeof(buffer) - 1) == -1) { - error("udelay: read(/proc/cpuinfo) failed: %s", strerror(errno)); - close(fd); - return; - } - close(fd); - - p = strstr(buffer, "flags"); - if (p == NULL) { - info("udelay: /proc/cpuinfo has no 'flags' line"); - } else { - p = strstr(p, "tsc"); - if (p == NULL) { - info("udelay: CPU does not support Time Stamp Counter"); - } else { - info("udelay: CPU supports Time Stamp Counter"); - *hasTSC = 1; - } - } - - p = strstr(buffer, "cpu MHz"); - if (p == NULL) { - info("udelay: /proc/cpuinfo has no 'cpu MHz' line"); - } else { - if (sscanf(p + 7, " : %lf", MHz) != 1) { - error("udelay: parse(/proc/cpuinfo) failed: unknown 'cpu MHz' format"); - *MHz = -1; - } else { - info("udelay: CPU runs at %f MHz", *MHz); - } - } - -} - void udelay_init(void) { -#ifdef HAVE_ASM_MSR_H - - int tsc; - double mhz; - - getCPUinfo(&tsc, &mhz); - - if (tsc && mhz > 0.0) { - ticks_per_usec = ceil(mhz); - info("udelay: using TSC delay loop, %u ticks per microsecond", ticks_per_usec); - } else -#else - error("udelay: The file 'include/asm/msr.h' was missing at compile time."); - error("udelay: Even if your CPU supports TSC, it will not be used!"); - error("udelay: You *really* should install msr.h and recompile LCD4linux!"); -#endif - { - ticks_per_usec = 0; - info("udelay: using gettimeofday() delay loop"); - } + info("udelay: using gettimeofday() delay loop"); } @@ -172,37 +98,17 @@ void ndelay(const unsigned long nsec) { -#ifdef HAVE_ASM_MSR_H - - if (ticks_per_usec) { + struct timeval now, end; - unsigned int t1, t2; - unsigned long tsc; - - tsc = (nsec * ticks_per_usec + 999) / 1000; - - rdtscl(t1); - do { - rep_nop(); - rdtscl(t2); - } while ((t2 - t1) < tsc); - - } else -#endif - - { - struct timeval now, end; - - gettimeofday(&end, NULL); - end.tv_usec += (nsec + 999) / 1000; - while (end.tv_usec > 1000000) { - end.tv_usec -= 1000000; - end.tv_sec++; - } - - do { - rep_nop(); - gettimeofday(&now, NULL); - } while (now.tv_sec == end.tv_sec ? now.tv_usec < end.tv_usec : now.tv_sec < end.tv_sec); + gettimeofday(&end, NULL); + end.tv_usec += (nsec + 999) / 1000; + while (end.tv_usec > 1000000) { + end.tv_usec -= 1000000; + end.tv_sec++; } + + do { + rep_nop(); + gettimeofday(&now, NULL); + } while (now.tv_sec == end.tv_sec ? now.tv_usec < end.tv_usec : now.tv_sec < end.tv_sec); } --- lcd4linux-0.10.1~rc2.orig/config.h.in +++ lcd4linux-0.10.1~rc2/config.h.in @@ -12,9 +12,6 @@ /* Define to 1 if you have the header file. */ #undef HAVE_ASM_IO_H -/* Define to 1 if you have the header file. */ -#undef HAVE_ASM_MSR_H - /* Define to 1 if you have the header file, and it defines `DIR'. */ #undef HAVE_DIRENT_H --- lcd4linux-0.10.1~rc2.orig/configure.in +++ lcd4linux-0.10.1~rc2/configure.in @@ -99,7 +99,6 @@ AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h stdlib.h string.h sys/ioctl.h sys/socket.h sys/time.h sys/vfs.h syslog.h termios.h unistd.h]) AC_CHECK_HEADERS(sys/io.h asm/io.h) AC_CHECK_HEADERS(linux/parport.h linux/ppdev.h) -AC_CHECK_HEADERS(asm/msr.h) # Checks for typedefs, structures, and compiler characteristics. AC_C_CONST --- lcd4linux-0.10.1~rc2.orig/configure +++ lcd4linux-0.10.1~rc2/configure @@ -10993,151 +10993,6 @@ done -for ac_header in asm/msr.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - { echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } -else - # Is the header compilable? -{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_compiler=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6; } - -# Is the header present? -{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi - -rm -f conftest.err conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( cat <<\_ASBOX -## ---------------------------------------------------- ## -## Report this to lcd4linux-users@lists.sourceforge.net ## -## ---------------------------------------------------- ## -_ASBOX - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -{ echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - # Checks for typedefs, structures, and compiler characteristics. { echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6; } --- lcd4linux-0.10.1~rc2.orig/debian/dirs +++ lcd4linux-0.10.1~rc2/debian/dirs @@ -0,0 +1,2 @@ +etc +usr/sbin --- lcd4linux-0.10.1~rc2.orig/debian/control +++ lcd4linux-0.10.1~rc2/debian/control @@ -0,0 +1,19 @@ +Source: lcd4linux +Section: utils +Priority: optional +Maintainer: Ubuntu Developers +XSBC-Original-Maintainer: Reinhard Tartler +Build-Depends: debhelper (>= 4.0.0), libmysqlclient15-dev, python-dev, libx11-dev, libncurses5-dev, libusb-dev, libgd2-noxpm-dev, libxt-dev, libmpd-dev, libssl-dev +Standards-Version: 3.7.3 +Vcs-Bzr: http://bazaar.launchpad.net/~siretart/lcd4linux/debian +Homepage: http://ssl.bulix.org/projects/lcd4linux/ + +Package: lcd4linux +Architecture: any +Depends: ${shlibs:Depends} +Description: Grabs information and displays it on an external lcd + Small program that grabs information from the kernel and some subsystems + and displays it on an external liquid crystal display. + . + See http://ssl.bulix.org/projects/lcd4linux/ for Documentation + --- lcd4linux-0.10.1~rc2.orig/debian/docs +++ lcd4linux-0.10.1~rc2/debian/docs @@ -0,0 +1,2 @@ +README +lcd4linux.conf.sample \ No newline at end of file --- lcd4linux-0.10.1~rc2.orig/debian/copyright +++ lcd4linux-0.10.1~rc2/debian/copyright @@ -0,0 +1,24 @@ +This package was debianized by Norbert Tretkowski on +Sun, 16 Oct 2005 20:20:42 +0200. + +It was downloaded from http://ssl.bulix.org/projects/lcd4linux/ + +Copyright Holder: Michael Reinelt + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License with +the Debian GNU/Linux distribution in file /usr/share/common-licenses/GPL; +if not, write to the Free Software Foundation, Inc., 51 Franklin St, +Fifth Floor, Boston, MA 02110-1301, USA. + +On Debian systems, the complete text of the GNU General Public +License, version 2, can be found in /usr/share/common-licenses/GPL-2. --- lcd4linux-0.10.1~rc2.orig/debian/lcd4linux.8 +++ lcd4linux-0.10.1~rc2/debian/lcd4linux.8 @@ -0,0 +1,70 @@ +.TH VERSION "8" "August 2006" "http://ssl.bulix.org/projects/lcd4linux/" "System Administration Utilities" +.SH NAME +Version \- daemon for ''lcd'' display devices +.SH SYNOPSIS +.B lcd4linux [\fIOPTIONS...\fR] +.SH DESCRIPTION +.PP +LCD4Linux is a small program that grabs information from the kernel and +some subsystems and displays it on an external liquid crystal display. +.PP +If started without any options, it will try to read its configuration from +\fB/etc/lcd4linux.conf\fR and daemonize. Please make sure your configuration file +is owned by the user you run lcd4linux (typically \fIroot\fR) and has permissions +\fB600\fR. +.TP +\fB\-f\fR +Alternate configuration file to read. Use this switch to make lcd4linux read another +file than \fI/etc/lcd4linux.conf\fR. +.TP +\fB\-F\fR +Run in forground and don't daemonize. Useful for debugging. +.TP +\fB\-c\fR \fIarg\fR +allows to overwrite entries in the config-file from the command line. arg is 'key=value' +.TP +\fB\-h\fR +shows a really short usage of lcd4linux +.TP +\fB\-i\fR +starts lcd4linux in interactive mode. Can be used multiple times +.TP +\fB\-l\fR +Prints a list of supported displays +.TP +\fB\-o\fR +Specifies an output file (see http://ssl.bulix.org/projects/lcd4linux/ for details) +.TP +\fB\-q\fR +makes lcd4linux more quiet. Can be used multiple times +.TP +\fB\-v\fR +increases verbose level. Can be used multiple times +.SH FILES +.TP +.I "/etc/lcd4linux.conf" +Contains the configuration of lcd4linux. Please note that distributions +generally don't install this file, please create it yourself using the +sample configuration as template. +.TP +.I "/usr/share/doc/lcd4linux/lcd4linux.conf.gz" +Contains a detailed and extensive example configuration file +.SH AUTHOR +lcd4linux was written by Michael Reinelt +.br +Copyright (C) 2005 The LCD4Linux Team +.SH ORIGIN +Development of lcd4linux is at http://ssl.bulix.org/projects/lcd4linux/. Use that +web service for reporting upstream bugs getting in touch with development. +.SH COPYRIGHT +This manual page was written by Reinhard Tartler +in August 2006 for the Debian project, but may also be used by others. +.br +This manual page and lcd4linux is free software; you can redistribute it +and/or modify it under the terms of the GNU General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. +.br +On Debian systems, the complete text of the GNU General Public +License, version 2, can be found in /usr/share/common-licenses/GPL-2. + --- lcd4linux-0.10.1~rc2.orig/debian/changelog +++ lcd4linux-0.10.1~rc2/debian/changelog @@ -0,0 +1,96 @@ +lcd4linux (0.10.1~rc2-2ubuntu2) lucid; urgency=low + + * debian/control: Add libssl-dev to build depends (LP: #538375) + + -- Angel Abad Sat, 13 Mar 2010 11:00:25 +0100 + +lcd4linux (0.10.1~rc2-2build1) karmic; urgency=low + + * No change-rebuild for the libmpd0 -> libmpd1 transition + + -- Andreas Moog Mon, 29 Jun 2009 23:41:19 +0200 + +lcd4linux (0.10.1~rc2-2) unstable; urgency=medium + + * Bugfix: "lcd4linux: FTBFS: undefined reference to `rdtscl'" Patch + taken from upstream svn. Thanks to Robert Buchholz and Michael Reinelt + (upstream) for reviewing the patch. Closes: #436332 + * Urgency medium for RC bug + * bump to standards version 3.7.3 (no changes needed) + * add Vcs-Bzr and Homepage header. + + -- Reinhard Tartler Thu, 10 Jan 2008 10:30:49 +0100 + +lcd4linux (0.10.1~rc2-1) unstable; urgency=low + + * New upstream release + + -- Reinhard Tartler Mon, 30 Apr 2007 09:34:59 +0200 + +lcd4linux (0.10.1~rc1-1) unstable; urgency=low + + * New upstream release + * new upstream tarball no longer contains a debian/ directory at all + (Closes: #385152) + * add LSB keyword section + + -- Reinhard Tartler Thu, 5 Apr 2007 15:41:11 +0200 + +lcd4linux (0.10.0+cvs20060825-1) unstable; urgency=medium + + * New Maintainer! + * Dropping old maintainer in agreement with nobse@debian.org. + Thanks for your work so far, nobse! + * urgency medium because of release critical bugs + * Bump standards version to 3.7.2 (no changes needed) + * add build depends on libmpd-dev for mpd support + * new upstream snapshot + * drop dependency of ${misc:Depends}, not used anyway + * now supporting USB2LCD + * don't update config.{sub,guess} in clean target automatically + * new target ``update-config-sub-guess'' to update config.{sub,guess} + * Acking NMU, Thanks Steinar! (Closes: #374682) + * Bug fix: "FTBFS: undefined reference to many X functions", thanks to + Eric Dorland. The problem was in driver.m4 (Closes: #381606). + * Bug fix: "Please stop Build-Depending on automake", thanks to Eric + Dorland (Closes: #381812). + * Don't ship /etc/lcd4linux.conf anymore. Please install and customize + it yourself using /usr/share/doc/lcd4linux.conf.sample as template + * Bug fix: "lcd4linux - FTBFS: uses ia32 assembler", thanks to Bastian + Blank. Fixed by adding #ifdefs to produce those asm statements on i386 + and amd64 only. (Closes: #336017). + * Removing outdated NEWS, FAQ, README.KDE on upstream request. + * Install manpage for lcd4linux + + -- Reinhard Tartler Sun, 27 Aug 2006 17:16:46 +0200 + +lcd4linux (0.10.0+cvs20051015-3.1) unstable; urgency=low + + * Non-maintainer upload. + * Build-depend on libxt-dev, to make sure configure detects X; fixes FTBFS. + (Closes: #374682) + + -- Steinar H. Gunderson Thu, 6 Jul 2006 18:10:58 +0200 + +lcd4linux (0.10.0+cvs20051015-3) unstable; urgency=low + + * Use libgd2-noxpm-dev instead libgd2-xpm-dev in build-dependencies. + (closes: #335834) + * Built against libmysqlclient15-dev instead libmysqlclient14-dev. + (closes: #343770) + + -- Norbert Tretkowski Tue, 21 Feb 2006 22:42:57 +0100 + +lcd4linux (0.10.0+cvs20051015-2) unstable; urgency=low + + * Added libmysqlclient-dev, python-dev, libx11-dev, libncurses5-dev, libusb-dev + and libgd2-xpm-dev to build-dependencies. + + -- Norbert Tretkowski Mon, 24 Oct 2005 21:09:48 +0200 + +lcd4linux (0.10.0+cvs20051015-1) unstable; urgency=low + + * Initial release. (closes: #334114) + + -- Norbert Tretkowski Sun, 16 Oct 2005 20:20:42 +0200 + --- lcd4linux-0.10.1~rc2.orig/debian/rules +++ lcd4linux-0.10.1~rc2/debian/rules @@ -0,0 +1,87 @@ +#!/usr/bin/make -f +# -*- makefile -*- + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +# FOR AUTOCONF 2.52 AND NEWER ONLY +ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) + confflags += --build $(DEB_HOST_GNU_TYPE) +else + confflags += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) +endif + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +config.status: configure + dh_testdir + ./configure $(confflags) \ + --prefix=/usr \ + --mandir=\$${prefix}/share/man \ + --infodir=\$${prefix}/share/info \ + --bindir=/usr/sbin \ + --with-python + +# call this target to update config.sub and config.guess +# need autotools-dev installed +update-config-sub-guess: + -test -r /usr/share/misc/config.sub && \ + cp -f /usr/share/misc/config.sub config.sub + -test -r /usr/share/misc/config.guess && \ + cp -f /usr/share/misc/config.guess config.guess + +build: build-stamp +build-stamp: config.status + dh_testdir + $(MAKE) + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp + -$(MAKE) distclean + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + $(MAKE) install DESTDIR=$(CURDIR)/debian/lcd4linux + +binary-indep: +# No arch independent things to do here... + +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installdocs + dh_installexamples + dh_install + dh_installinit + dh_installman debian/lcd4linux.8 + dh_link + dh_strip + dh_compress + dh_fixperms + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install --- lcd4linux-0.10.1~rc2.orig/debian/compat +++ lcd4linux-0.10.1~rc2/debian/compat @@ -0,0 +1 @@ +4 --- lcd4linux-0.10.1~rc2.orig/debian/init.d +++ lcd4linux-0.10.1~rc2/debian/init.d @@ -0,0 +1,56 @@ +#! /bin/sh + +### BEGIN INIT INFO +# Provides: lcd4linux +# Required-Start: +# Required-Stop: +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: daemon for driving LCD based displays +# Description: LCD4Linux is a small program that grabs information from +# the kernel and some subsystems and displays it on an +# external liquid crystal display. +### END INIT INFO + +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/sbin/lcd4linux +NAME=lcd4linux +DESC=lcd4linux + +test -x $DAEMON || exit 0 +test -f /etc/lcd4linux.conf || exit 0 + +set -e + +case "$1" in + start) + echo -n "Starting $DESC: " + chmod 600 /etc/lcd4linux.conf + start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \ + --exec $DAEMON -- $DAEMON_OPTS + echo "$NAME." + ;; + stop) + echo -n "Stopping $DESC: " + start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \ + --exec $DAEMON || true + echo "$NAME." + ;; + restart|force-reload) + echo -n "Restarting $DESC: " + start-stop-daemon --stop --quiet --pidfile \ + /var/run/$NAME.pid --exec $DAEMON + sleep 1 + start-stop-daemon --start --quiet --pidfile \ + /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS + echo "$NAME." + ;; + *) + N=/etc/init.d/$NAME + # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2 + echo "Usage: $N {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0