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]

Reply via email to