summaryrefslogtreecommitdiff
path: root/meta/packages/apmd/apmd-3.2.2-14/apmd_proxy
diff options
context:
space:
mode:
authorKevin Tian <kevin.tian@intel.com>2010-07-13 16:46:46 +0800
committerRichard Purdie <rpurdie@linux.intel.com>2010-07-21 21:44:37 +0100
commit75fff516610b8f8b64523979c005fddd4ec4a76d (patch)
treed8378a8f01b3580c66f42f3609e45a63d13b7224 /meta/packages/apmd/apmd-3.2.2-14/apmd_proxy
parentcb249ed2f0791d021593209cd000baaa9629fcf1 (diff)
downloadopenembedded-core-75fff516610b8f8b64523979c005fddd4ec4a76d.tar.gz
openembedded-core-75fff516610b8f8b64523979c005fddd4ec4a76d.tar.bz2
openembedded-core-75fff516610b8f8b64523979c005fddd4ec4a76d.zip
apmd: upgrade to 3.2.2-14
[Patches] KEEP _unlinux.patch_: remove reference to build system paths DISABLE _libtool.patch_: this patch adds a "--tag=CC" to be compatible with libtool2.2.4. however with latest 2.2.10 libtool, w/o this patch it still works. From the manual, CC is the default tag actually. So disable it for now, and once same error happens again, it'll be re-neabled and if necessary push to upstream DISABLE _workaround.patch_: a SIGUSR1 is hooked to signal suspend event as a so-called 'workaround'. however no exact commit is found for exact usage case. So disable it. REMOVE _debian.patch_: in upstream [Recipe] Add license checksum Signed-off-by: Kevin Tian <kevin.tian@intel.com>
Diffstat (limited to 'meta/packages/apmd/apmd-3.2.2-14/apmd_proxy')
-rw-r--r--meta/packages/apmd/apmd-3.2.2-14/apmd_proxy91
1 files changed, 91 insertions, 0 deletions
diff --git a/meta/packages/apmd/apmd-3.2.2-14/apmd_proxy b/meta/packages/apmd/apmd-3.2.2-14/apmd_proxy
new file mode 100644
index 0000000000..c48ee4e5d5
--- /dev/null
+++ b/meta/packages/apmd/apmd-3.2.2-14/apmd_proxy
@@ -0,0 +1,91 @@
+#!/bin/sh
+#
+# apmd_proxy - program dispatcher for APM daemon
+#
+# Written by Craig Markwardt (craigm@lheamail.gsfc.nasa.gov) 21 May 1999
+# Modified for Debian by Avery Pennarun
+#
+# This shell script is called by the APM daemon (apmd) when a power
+# management event occurs. Its first and second arguments describe the
+# event. For example, apmd will call "apmd_proxy suspend system" just
+# before the system is suspended.
+#
+# Here are the possible arguments:
+#
+# start - APM daemon has started
+# stop - APM daemon is shutting down
+# suspend critical - APM system indicates critical suspend (++)
+# suspend system - APM system has requested suspend mode
+# suspend user - User has requested suspend mode
+# standby system - APM system has requested standby mode
+# standby user - User has requested standby mode
+# resume suspend - System has resumed from suspend mode
+# resume standby - System has resumed from standby mode
+# resume critical - System has resumed from critical suspend
+# change battery - APM system reported low battery
+# change power - APM system reported AC/battery change
+# change time - APM system reported time change (*)
+# change capability - APM system reported config. change (+)
+#
+# (*) - APM daemon may be configured to not call these sequences
+# (+) - Available if APM kernel supports it.
+# (++) - "suspend critical" is never passed to apmd from the kernel,
+# so we will never see it here. Scripts that process "resume
+# critical" events need to take this into account.
+#
+# It is the proxy script's responsibility to examine the APM status
+# (via /proc/apm) or other status and to take appropriate actions.
+# For example, the script might unmount network drives before the
+# machine is suspended.
+#
+# In Debian, the usual way of adding functionality to the proxy is to
+# add a script to /etc/apm/event.d. This script will be called by
+# apmd_proxy (via run-parts) with the same arguments.
+#
+# If it is important that a certain set of script be run in a certain
+# order on suspend and in a different order on resume, then put all
+# the scripts in /etc/apm/scripts.d instead of /etc/apm/event.d and
+# symlink to these from /etc/apm/suspend.d, /etc/apm/resume.d and
+# /etc/apm/other.d using names whose lexicographical order is the same
+# as the desired order of execution.
+#
+# If the kernel's APM driver supports it, apmd_proxy can return a non-zero
+# exit status on suspend and standby events, indicating that the suspend
+# or standby event should be rejected.
+#
+# *******************************************************************
+
+set -e
+
+# The following doesn't yet work, because current kernels (up to at least
+# 2.4.20) do not support rejection of APM events. Supporting this would
+# require substantial modifications to the APM driver. We will re-enable
+# this feature if the driver is ever modified. -- cph@debian.org
+#
+#SUSPEND_ON_AC=false
+#[ -r /etc/apm/apmd_proxy.conf ] && . /etc/apm/apmd_proxy.conf
+#
+#if [ "${SUSPEND_ON_AC}" = "false" -a "${2}" = "system" ] \
+# && on_ac_power >/dev/null; then
+# # Reject system suspends and standbys if we are on AC power
+# exit 1 # Reject (NOTE kernel support must be enabled)
+#fi
+
+if [ "${1}" = "suspend" -o "${1}" = "standby" ]; then
+ run-parts -a "${1}" -a "${2}" /etc/apm/event.d
+ if [ -d /etc/apm/suspend.d ]; then
+ run-parts -a "${1}" -a "${2}" /etc/apm/suspend.d
+ fi
+elif [ "${1}" = "resume" ]; then
+ if [ -d /etc/apm/resume.d ]; then
+ run-parts -a "${1}" -a "${2}" /etc/apm/resume.d
+ fi
+ run-parts -a "${1}" -a "${2}" /etc/apm/event.d
+else
+ run-parts -a "${1}" -a "${2}" /etc/apm/event.d
+ if [ -d /etc/apm/other.d ]; then
+ run-parts -a "${1}" -a "${2}" /etc/apm/other.d
+ fi
+fi
+
+exit 0