Hello community, here is the log from the commit of package acpid for openSUSE:Factory checked in at 2014-08-13 08:49:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/acpid (Old) and /work/SRC/openSUSE:Factory/.acpid.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "acpid" Changes: -------- --- /work/SRC/openSUSE:Factory/acpid/acpid.changes 2014-02-16 19:47:16.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.acpid.new/acpid.changes 2014-08-13 08:49:33.000000000 +0200 @@ -1,0 +2,20 @@ +Tue Aug 12 14:32:40 UTC 2014 - [email protected] + +- Update to version 2.0.22 + + Add support for F20. Debian Bug #738611. + + Fix for repeated mute keys on some ThinkPad models. + + Add "-t" short option for "--tpmutefix". + + Update man page for --tpmutefix. +- Remove "Configure it in /etc/sysconfig/powermanagement." in the + description; the sysconfig file doesn't exist anymore +- Changes from version 2.0.21 + + Add new <drop> action. Debian #732277. + +------------------------------------------------------------------- +Tue Aug 5 21:12:24 UTC 2014 - [email protected] + +- Fix rcacpid symlink to point to /usr/sbin/service, not the + systemd .service file: the service file is actually not + executable. + +------------------------------------------------------------------- Old: ---- acpid-2.0.20.tar.xz New: ---- acpid-2.0.22.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ acpid.spec ++++++ --- /var/tmp/diff_new_pack.HlPDSP/_old 2014-08-13 08:49:34.000000000 +0200 +++ /var/tmp/diff_new_pack.HlPDSP/_new 2014-08-13 08:49:34.000000000 +0200 @@ -17,7 +17,7 @@ Name: acpid -Version: 2.0.20 +Version: 2.0.22 Release: 0 Summary: Executes Actions at ACPI Events License: GPL-2.0+ @@ -47,8 +47,6 @@ when an event occurs, executes programs to handle the event. The start script loads all needed modules. -Configure it in /etc/sysconfig/powermanagement. - %prep %setup -q %patch1 @@ -66,7 +64,7 @@ install -Dm 644 events.thinkpad %{buildroot}%{_sysconfdir}/acpi/events/thinkpad mkdir -p %{buildroot}/%{_unitdir} install -m 644 %{SOURCE8} %{buildroot}/%{_unitdir} -ln -sf ../../%{_unitdir}/acpid.service %{buildroot}%{_sbindir}/rcacpid +ln -sf %{_sbindir}/service %{buildroot}%{_sbindir}/rcacpid # formerly installed, but no longer useful with systemd. Keep as documentation. cp -p events.power_button events.sleep_button power_button sleep_button samples/ ++++++ acpid-2.0.20.tar.xz -> acpid-2.0.22.tar.xz ++++++ ++++ 4808 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/acpid-2.0.20/Changelog new/acpid-2.0.22/Changelog --- old/acpid-2.0.20/Changelog 2013-09-15 14:55:01.000000000 +0200 +++ new/acpid-2.0.22/Changelog 2014-03-15 18:55:24.000000000 +0100 @@ -1,3 +1,23 @@ +* Sat March 15 2014 Ted Felix <[email protected]> + - 2.0.22 release + (configure.ac) (Ted Felix) + - Add support for F20. Debian Bug #738611. + (input_layer.c) (Ted Felix) + - Fix for repeated mute keys on some ThinkPad models. + (acpid.c acpid.h input_layer.c) + (Torsten Hilbrich <[email protected]>) + - Add "-t" short option for "--tpmutefix". + (acpid.c) (Ted Felix) + - Update man page for --tpmutefix. + (acpid.8) (Ted Felix) + +* Wed Jan 15 2014 Ted Felix <[email protected]> + - 2.0.21 release + (configure.ac) (Ted Felix) + - Add new <drop> action. Debian #732277. + (acpid.c event.h event.c acpid.8) + (Pigeon <[email protected]>, Ted Felix) + * Sun Sep 15 2013 Ted Felix <ted -at- tedfelix -dot- com> - 2.0.20 release (configure.ac) (Ted Felix) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/acpid-2.0.20/acpid.8 new/acpid-2.0.22/acpid.8 --- old/acpid-2.0.20/acpid.8 2013-02-15 15:22:20.000000000 +0100 +++ new/acpid-2.0.22/acpid.8 2014-02-26 14:09:01.000000000 +0100 @@ -47,6 +47,13 @@ ordering is guaranteed), as well as one rule to be defined for multiple events. To force \fBacpid\fP to reload the rule configuration, send it a SIGHUP. .PP +The pseudo-action \fI<drop>\fP causes the event to be dropped +completely and no further processing undertaken; clients connecting +via the UNIX domain socket (see below) will not be notified of the +event. This may be useful on some machines, such as certain laptops which +generate spurious battery events at frequent intervals. The name of +this pseudo-action may be redefined with a commandline option. +.PP In addition to rule files, \fBacpid\fP also accepts connections on a UNIX domain socket (\fI/var/run/acpid.socket\fP by default). Any application may connect to this socket. Once connected, \fBacpid\fP will send the text of @@ -124,6 +131,23 @@ the file exists, it will be removed and over-written. Default is \fI/var/run/acpid.pid\fP. .TP +.BI \-r "\fR, \fP" \-\-dropaction " action" +This option defines the pseudo-action which tells \fBacpid\fP to abort +all processing of an event, including client notifications. +Default is \fI<drop>\fP. +.TP +.BI \-t "\fR, \fP" \-\-tpmutefix +This option enables special handling of the mute button for certain +ThinkPad models with mute LEDs that get out of sync with the mute state +when the mute button is held down. With this option, the mute button +will generate the following events in sync with the number of presses +(and, by extension, the state of the LED): +.IP +.br +button/mute MUTE (key pressed) K +.br +button/mute MUTE (key released) K +.TP .BI \-v "\fR, \fP" \-\-version Print version information and exit. .TP diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/acpid-2.0.20/acpid.c new/acpid-2.0.22/acpid.c --- old/acpid-2.0.20/acpid.c 2013-08-15 22:12:51.000000000 +0200 +++ new/acpid-2.0.22/acpid.c 2014-02-26 01:45:41.000000000 +0100 @@ -64,6 +64,8 @@ static int foreground; static const char *pidfile = ACPID_PIDFILE; static int netlink; +const char *dropaction = DROP_ACTION; +int tpmutefix = 0; int main(int argc, char **argv) @@ -206,6 +208,8 @@ {"pidfile", 1, 0, 'p'}, {"lockfile", 1, 0, 'L'}, {"netlink", 0, 0, 'n'}, + {"dropaction", 1, 0, 'r'}, + {"tpmutefix", 0, 0, 't'}, {"version", 0, 0, 'v'}, {"help", 0, 0, 'h'}, {NULL, 0, 0, 0}, @@ -224,6 +228,8 @@ "Use the specified PID file.", /* pidfile */ "Use the specified lockfile to stop processing.", /* lockfile */ "Force netlink/input layer mode. (overrides -e)", /* netlink */ + "Define the pseudo-action to drop an event.", /* dropaction */ + "Fixup for ThinkPad mute-repeat behaviour.", /* tpmutefix */ "Print version information.", /* version */ "Print this message.", /* help */ }; @@ -234,7 +240,7 @@ for (;;) { int i; i = getopt_long(*argc, *argv, - "c:C:de:flg:m:s:Sp:L:nvh", opts, NULL); + "c:C:de:flg:m:s:Sp:L:nr:tvh", opts, NULL); if (i == -1) { break; } @@ -280,6 +286,12 @@ case 'n': netlink = 1; break; + case 'r': + dropaction = optarg; + break; + case 't': + tpmutefix = 1; + break; case 'v': printf(PACKAGE "-" VERSION "\n"); exit(EXIT_SUCCESS); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/acpid-2.0.20/acpid.h new/acpid-2.0.22/acpid.h --- old/acpid-2.0.20/acpid.h 2012-02-16 21:24:42.000000000 +0100 +++ new/acpid-2.0.22/acpid.h 2014-02-26 01:36:58.000000000 +0100 @@ -45,6 +45,7 @@ extern int acpid_debug; extern int logevents; extern const char *progname; +extern int tpmutefix; extern int locked(void); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/acpid-2.0.20/build-aux/compile new/acpid-2.0.22/build-aux/compile --- old/acpid-2.0.20/build-aux/compile 2013-09-15 14:58:56.000000000 +0200 +++ new/acpid-2.0.22/build-aux/compile 2014-03-15 18:58:15.000000000 +0100 @@ -1,10 +1,9 @@ #! /bin/sh # Wrapper for compilers which do not understand '-c -o'. -scriptversion=2012-03-05.13; # UTC +scriptversion=2012-10-14.11; # UTC -# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009, 2010, 2012 Free -# Software Foundation, Inc. +# Copyright (C) 1999-2013 Free Software Foundation, Inc. # Written by Tom Tromey <[email protected]>. # # This program is free software; you can redistribute it and/or modify @@ -113,6 +112,11 @@ lib=$dir/$lib.lib break fi + if test -f "$dir/lib$lib.a"; then + found=yes + lib=$dir/lib$lib.a + break + fi done IFS=$save_IFS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/acpid-2.0.20/build-aux/missing new/acpid-2.0.22/build-aux/missing --- old/acpid-2.0.20/build-aux/missing 2013-09-15 14:58:56.000000000 +0200 +++ new/acpid-2.0.22/build-aux/missing 2014-03-15 18:58:15.000000000 +0100 @@ -1,11 +1,10 @@ #! /bin/sh -# Common stub for a few missing GNU programs while installing. +# Common wrapper for a few potentially missing GNU programs. -scriptversion=2012-01-06.13; # UTC +scriptversion=2012-06-26.16; # UTC -# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, -# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. -# Originally by Fran,cois Pinard <[email protected]>, 1996. +# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# Originally written by Fran,cois Pinard <[email protected]>, 1996. # 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 @@ -26,68 +25,40 @@ # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then - echo 1>&2 "Try \`$0 --help' for more information" + echo 1>&2 "Try '$0 --help' for more information" exit 1 fi -run=: -sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p' -sed_minuso='s/.* -o \([^ ]*\).*/\1/p' - -# In the cases where this matters, `missing' is being run in the -# srcdir already. -if test -f configure.ac; then - configure_ac=configure.ac -else - configure_ac=configure.in -fi +case $1 in -msg="missing on your system" + --is-lightweight) + # Used by our autoconf macros to check whether the available missing + # script is modern enough. + exit 0 + ;; -case $1 in ---run) - # Try to run requested program, and just exit if it succeeds. - run= - shift - "$@" && exit 0 - # Exit code 63 means version mismatch. This often happens - # when the user try to use an ancient version of a tool on - # a file that requires a minimum version. In this case we - # we should proceed has if the program had been absent, or - # if --run hadn't been passed. - if test $? = 63; then - run=: - msg="probably too old" - fi - ;; + --run) + # Back-compat with the calling convention used by older automake. + shift + ;; -h|--h|--he|--hel|--help) echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... -Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an -error status if there is no known handling for PROGRAM. +Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due +to PROGRAM being missing or too old. Options: -h, --help display this help and exit -v, --version output version information and exit - --run try to run the given command, and emulate it if it fails Supported PROGRAM values: - aclocal touch file \`aclocal.m4' - autoconf touch file \`configure' - autoheader touch file \`config.h.in' - autom4te touch the output file, or create a stub one - automake touch all \`Makefile.in' files - bison create \`y.tab.[ch]', if possible, from existing .[ch] - flex create \`lex.yy.c', if possible, from existing .c - help2man touch the output file - lex create \`lex.yy.c', if possible, from existing .c - makeinfo touch the output file - yacc create \`y.tab.[ch]', if possible, from existing .[ch] + aclocal autoconf autoheader autom4te automake makeinfo + bison yacc flex lex help2man -Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and -\`g' are ignored when checking the name. +Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and +'g' are ignored when checking the name. Send bug reports to <[email protected]>." exit $? @@ -99,228 +70,141 @@ ;; -*) - echo 1>&2 "$0: Unknown \`$1' option" - echo 1>&2 "Try \`$0 --help' for more information" + echo 1>&2 "$0: unknown '$1' option" + echo 1>&2 "Try '$0 --help' for more information" exit 1 ;; esac -# normalize program name to check for. -program=`echo "$1" | sed ' - s/^gnu-//; t - s/^gnu//; t - s/^g//; t'` - -# Now exit if we have it, but it failed. Also exit now if we -# don't have it and --version was passed (most likely to detect -# the program). This is about non-GNU programs, so use $1 not -# $program. -case $1 in - lex*|yacc*) - # Not GNU programs, they don't have --version. - ;; +# Run the given program, remember its exit status. +"$@"; st=$? - *) - if test -z "$run" && ($1 --version) > /dev/null 2>&1; then - # We have it, but it failed. - exit 1 - elif test "x$2" = "x--version" || test "x$2" = "x--help"; then - # Could not run --version or --help. This is probably someone - # running `$TOOL --version' or `$TOOL --help' to check whether - # $TOOL exists and not knowing $TOOL uses missing. - exit 1 - fi - ;; -esac - -# If it does not exist, or fails to run (possibly an outdated version), -# try to emulate it. -case $program in - aclocal*) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`acinclude.m4' or \`${configure_ac}'. You might want - to install the \`Automake' and \`Perl' packages. Grab them from - any GNU archive site." - touch aclocal.m4 - ;; - - autoconf*) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`${configure_ac}'. You might want to install the - \`Autoconf' and \`GNU m4' packages. Grab them from any GNU - archive site." - touch configure - ;; - - autoheader*) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`acconfig.h' or \`${configure_ac}'. You might want - to install the \`Autoconf' and \`GNU m4' packages. Grab them - from any GNU archive site." - files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` - test -z "$files" && files="config.h" - touch_files= - for f in $files; do - case $f in - *:*) touch_files="$touch_files "`echo "$f" | - sed -e 's/^[^:]*://' -e 's/:.*//'`;; - *) touch_files="$touch_files $f.in";; - esac - done - touch $touch_files - ;; +# If it succeeded, we are done. +test $st -eq 0 && exit 0 - automake*) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. - You might want to install the \`Automake' and \`Perl' packages. - Grab them from any GNU archive site." - find . -type f -name Makefile.am -print | - sed 's/\.am$/.in/' | - while read f; do touch "$f"; done - ;; - - autom4te*) - echo 1>&2 "\ -WARNING: \`$1' is needed, but is $msg. - You might have modified some files without having the - proper tools for further handling them. - You can get \`$1' as part of \`Autoconf' from any GNU - archive site." - - file=`echo "$*" | sed -n "$sed_output"` - test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` - if test -f "$file"; then - touch $file - else - test -z "$file" || exec >$file - echo "#! /bin/sh" - echo "# Created by GNU Automake missing as a replacement of" - echo "# $ $@" - echo "exit 0" - chmod +x $file - exit 1 - fi - ;; - - bison*|yacc*) - echo 1>&2 "\ -WARNING: \`$1' $msg. You should only need it if - you modified a \`.y' file. You may need the \`Bison' package - in order for those modifications to take effect. You can get - \`Bison' from any GNU archive site." - rm -f y.tab.c y.tab.h - if test $# -ne 1; then - eval LASTARG=\${$#} - case $LASTARG in - *.y) - SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` - if test -f "$SRCFILE"; then - cp "$SRCFILE" y.tab.c - fi - SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` - if test -f "$SRCFILE"; then - cp "$SRCFILE" y.tab.h - fi - ;; - esac - fi - if test ! -f y.tab.h; then - echo >y.tab.h - fi - if test ! -f y.tab.c; then - echo 'main() { return 0; }' >y.tab.c - fi - ;; - - lex*|flex*) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified a \`.l' file. You may need the \`Flex' package - in order for those modifications to take effect. You can get - \`Flex' from any GNU archive site." - rm -f lex.yy.c - if test $# -ne 1; then - eval LASTARG=\${$#} - case $LASTARG in - *.l) - SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` - if test -f "$SRCFILE"; then - cp "$SRCFILE" lex.yy.c - fi - ;; - esac - fi - if test ! -f lex.yy.c; then - echo 'main() { return 0; }' >lex.yy.c - fi - ;; - - help2man*) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified a dependency of a manual page. You may need the - \`Help2man' package in order for those modifications to take - effect. You can get \`Help2man' from any GNU archive site." - - file=`echo "$*" | sed -n "$sed_output"` - test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` - if test -f "$file"; then - touch $file - else - test -z "$file" || exec >$file - echo ".ab help2man is required to generate this page" - exit $? - fi - ;; - - makeinfo*) - echo 1>&2 "\ -WARNING: \`$1' is $msg. You should only need it if - you modified a \`.texi' or \`.texinfo' file, or any other file - indirectly affecting the aspect of the manual. The spurious - call might also be the consequence of using a buggy \`make' (AIX, - DU, IRIX). You might want to install the \`Texinfo' package or - the \`GNU make' package. Grab either from any GNU archive site." - # The file to touch is that specified with -o ... - file=`echo "$*" | sed -n "$sed_output"` - test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"` - if test -z "$file"; then - # ... or it is the one specified with @setfilename ... - infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` - file=`sed -n ' - /^@setfilename/{ - s/.* \([^ ]*\) *$/\1/ - p - q - }' $infile` - # ... or it is derived from the source name (dir/f.texi becomes f.info) - test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info - fi - # If the file does not exist, the user really needs makeinfo; - # let's fail without touching anything. - test -f $file || exit 1 - touch $file - ;; - - *) - echo 1>&2 "\ -WARNING: \`$1' is needed, and is $msg. - You might have modified some files without having the - proper tools for further handling them. Check the \`README' file, - it often tells you about the needed prerequisites for installing - this package. You may also peek at any GNU archive site, in case - some other package would contain this missing \`$1' program." - exit 1 - ;; -esac +# Also exit now if we it failed (or wasn't found), and '--version' was +# passed; such an option is passed most likely to detect whether the +# program is present and works. +case $2 in --version|--help) exit $st;; esac + +# Exit code 63 means version mismatch. This often happens when the user +# tries to use an ancient version of a tool on a file that requires a +# minimum version. +if test $st -eq 63; then + msg="probably too old" +elif test $st -eq 127; then + # Program was missing. + msg="missing on your system" +else + # Program was found and executed, but failed. Give up. + exit $st +fi -exit 0 +perl_URL=http://www.perl.org/ +flex_URL=http://flex.sourceforge.net/ +gnu_software_URL=http://www.gnu.org/software + +program_details () +{ + case $1 in + aclocal|automake) + echo "The '$1' program is part of the GNU Automake package:" + echo "<$gnu_software_URL/automake>" + echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" + echo "<$gnu_software_URL/autoconf>" + echo "<$gnu_software_URL/m4/>" + echo "<$perl_URL>" + ;; + autoconf|autom4te|autoheader) + echo "The '$1' program is part of the GNU Autoconf package:" + echo "<$gnu_software_URL/autoconf/>" + echo "It also requires GNU m4 and Perl in order to run:" + echo "<$gnu_software_URL/m4/>" + echo "<$perl_URL>" + ;; + esac +} + +give_advice () +{ + # Normalize program name to check for. + normalized_program=`echo "$1" | sed ' + s/^gnu-//; t + s/^gnu//; t + s/^g//; t'` + + printf '%s\n' "'$1' is $msg." + + configure_deps="'configure.ac' or m4 files included by 'configure.ac'" + case $normalized_program in + autoconf*) + echo "You should only need it if you modified 'configure.ac'," + echo "or m4 files included by it." + program_details 'autoconf' + ;; + autoheader*) + echo "You should only need it if you modified 'acconfig.h' or" + echo "$configure_deps." + program_details 'autoheader' + ;; + automake*) + echo "You should only need it if you modified 'Makefile.am' or" + echo "$configure_deps." + program_details 'automake' + ;; + aclocal*) + echo "You should only need it if you modified 'acinclude.m4' or" + echo "$configure_deps." + program_details 'aclocal' + ;; + autom4te*) + echo "You might have modified some maintainer files that require" + echo "the 'automa4te' program to be rebuilt." + program_details 'autom4te' + ;; + bison*|yacc*) + echo "You should only need it if you modified a '.y' file." + echo "You may want to install the GNU Bison package:" + echo "<$gnu_software_URL/bison/>" + ;; + lex*|flex*) + echo "You should only need it if you modified a '.l' file." + echo "You may want to install the Fast Lexical Analyzer package:" + echo "<$flex_URL>" + ;; + help2man*) + echo "You should only need it if you modified a dependency" \ + "of a man page." + echo "You may want to install the GNU Help2man package:" + echo "<$gnu_software_URL/help2man/>" + ;; + makeinfo*) + echo "You should only need it if you modified a '.texi' file, or" + echo "any other file indirectly affecting the aspect of the manual." + echo "You might want to install the Texinfo package:" + echo "<$gnu_software_URL/texinfo/>" + echo "The spurious makeinfo call might also be the consequence of" + echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" + echo "want to install GNU make:" + echo "<$gnu_software_URL/make/>" + ;; + *) + echo "You might have modified some files without having the proper" + echo "tools for further handling them. Check the 'README' file, it" + echo "often tells you about the needed prerequisites for installing" + echo "this package. You may also peek at any GNU archive site, in" + echo "case some other package contains this missing '$1' program." + ;; + esac +} + +give_advice "$1" | sed -e '1s/^/WARNING: /' \ + -e '2,$s/^/ /' >&2 + +# Propagate the correct exit status (expected to be 127 for a program +# not found, 63 for a program that failed due to version mismatch). +exit $st # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/acpid-2.0.20/config.h new/acpid-2.0.22/config.h --- old/acpid-2.0.20/config.h 2013-09-15 14:59:26.000000000 +0200 +++ new/acpid-2.0.22/config.h 2014-03-15 18:58:24.000000000 +0100 @@ -136,7 +136,7 @@ #define PACKAGE_NAME "acpid" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "acpid 2.0.20" +#define PACKAGE_STRING "acpid 2.0.22" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "acpid" @@ -145,7 +145,7 @@ #define PACKAGE_URL "" /* Define to the version of this package. */ -#define PACKAGE_VERSION "2.0.20" +#define PACKAGE_VERSION "2.0.22" /* Define to 1 if you have the ANSI C header files. */ #define STDC_HEADERS 1 @@ -173,7 +173,7 @@ /* Version number of package */ -#define VERSION "2.0.20" +#define VERSION "2.0.22" /* Enable large inode numbers on Mac OS X 10.5. */ #ifndef _DARWIN_USE_64_BIT_INODE diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/acpid-2.0.20/configure.ac new/acpid-2.0.22/configure.ac --- old/acpid-2.0.20/configure.ac 2013-05-28 14:56:03.000000000 +0200 +++ new/acpid-2.0.22/configure.ac 2014-01-16 02:28:35.000000000 +0100 @@ -2,7 +2,7 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ([2.60]) -AC_INIT([acpid], [2.0.20]) +AC_INIT([acpid], [2.0.22]) AC_CONFIG_SRCDIR([connection_list.h]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_AUX_DIR([build-aux]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/acpid-2.0.20/event.c new/acpid-2.0.22/event.c --- old/acpid-2.0.20/event.c 2012-09-04 00:14:24.000000000 +0200 +++ new/acpid-2.0.22/event.c 2013-12-19 03:42:46.000000000 +0100 @@ -63,8 +63,10 @@ struct rule *head; struct rule *tail; }; -static struct rule_list cmd_list; + +static struct rule_list drop_list; static struct rule_list client_list; +static struct rule_list cmd_list; /* rule routines */ static void enlist_rule(struct rule_list *list, struct rule *r); @@ -84,6 +86,8 @@ static char *parse_cmd(const char *cmd, const char *event); static int check_escapes(const char *str); +extern const char *dropaction; + /* * read in all the configuration files */ @@ -174,7 +178,11 @@ /* fd is closed by parse_file() */ r = parse_file(fd_rule, file); if (r) { - enlist_rule(&cmd_list, r); + /* if this is a drop rule */ + if (!strcmp(r->action.cmd, dropaction)) + enlist_rule(&drop_list, r); + else + enlist_rule(&cmd_list, r); nrules++; } free(file); @@ -225,6 +233,15 @@ p = next; } + /* drop the drop rules */ + p = drop_list.head; + while (p) { + next = p->next; + delist_rule(&drop_list, p); + free_rule(p); + p = next; + } + unlock_rules(); return 0; @@ -529,17 +546,17 @@ } /* - * the main hook for propogating events + * the main hook for propagating events */ int acpid_handle_event(const char *event) { struct rule *p; int nrules = 0; - struct rule_list *ar[] = { &client_list, &cmd_list, NULL }; + struct rule_list *ar[] = { &drop_list, &client_list, &cmd_list, NULL }; struct rule_list **lp; - /* make an event be atomic wrt known signals */ + /* make an event atomic wrt known signals */ lock_rules(); /* scan each rule list for any rules that care about this event */ @@ -558,7 +575,16 @@ } nrules++; if (p->type == RULE_CMD) { - do_cmd_rule(p, event); + if (do_cmd_rule(p, event) == DROP_EVENT) { + /* Abort processing if event matches drop rule */ + if (logevents) + acpid_log(LOG_INFO, "event dropped"); + /* Skip the remaining rules. */ + while (*++lp) + ; + --lp; + break; + } } else if (p->type == RULE_CLIENT) { do_client_rule(p, event); } else { @@ -631,6 +657,9 @@ int status; const char *action; + if (!strcmp(rule->action.cmd, dropaction)) + return DROP_EVENT; + pid = fork(); switch (pid) { case -1: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/acpid-2.0.20/event.h new/acpid-2.0.22/event.h --- old/acpid-2.0.20/event.h 2009-05-02 04:11:51.000000000 +0200 +++ new/acpid-2.0.22/event.h 2013-12-19 03:42:46.000000000 +0100 @@ -23,6 +23,9 @@ #ifndef EVENT_H__ #define EVENT_H__ +#define DROP_ACTION "<drop>" +#define DROP_EVENT 1 + extern int acpid_read_conf(const char *confdir); extern int acpid_add_client(int client, const char *origin); extern int acpid_cleanup_rules(int do_detach); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/acpid-2.0.20/input_layer.c new/acpid-2.0.22/input_layer.c --- old/acpid-2.0.20/input_layer.c 2013-08-15 02:01:13.000000000 +0200 +++ new/acpid-2.0.22/input_layer.c 2014-02-26 01:36:58.000000000 +0100 @@ -175,6 +175,8 @@ {{{0,0}, EV_KEY, KEY_FN_F9, 1}, "button/fnf9 FNF9 00000080 00000000"}, {{{0,0}, EV_KEY, KEY_FN_F10, 1}, "button/fnf10 FF10 00000080 00000000"}, {{{0,0}, EV_KEY, KEY_FN_F11, 1}, "button/fnf11 FF11 00000080 00000000"}, + /* F20 is sometimes used for micmute */ + {{{0,0}, EV_KEY, KEY_F20, 1}, "button/f20 F20 00000080 00000000"}, /* Fn-F9 produces KEY_F24 on Thinkpad T42p */ {{{0,0}, EV_KEY, KEY_F24, 1}, "button/f24 F24 00000080 00000000"}, {{{0,0}, EV_KEY, KEY_KBDILLUMTOGGLE, 1}, @@ -201,6 +203,30 @@ }; +/* special support for the MUTE key, as the key toggles we want to + * consider repeated keys but don't report them all the time. We just + * ensure that the number of key presses (MOD 2) is correct. + */ +static const char * +mute_string(struct input_event event) +{ + if (event.type == EV_KEY && event.code == KEY_MUTE) { + static size_t repeat_count; + if (event.value == 1) { + repeat_count = 1; + return "button/mute MUTE (key pressed)"; + } else if (event.value == 2) { + repeat_count++; + return NULL; + } else if (event.value == 0) { + if (repeat_count % 2 == 0) { + return "button/mute MUTE (key released)"; + } + } + } + return NULL; +} + /*----------------------------------------------------------------------*/ /* Given an input event, returns the string corresponding to that event. If there is no corresponding string, NULL is returned. */ @@ -299,7 +325,12 @@ } /* convert the event into a string */ - str = event_string(event); + if (tpmutefix) { + str = mute_string(event); + if (str == NULL) + str = event_string(event); + } else + str = event_string(event); /* if this is not an event we care about, bail */ if (str == NULL) return; -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
