acpid: upgrade to 2.0.22 and add systemd support

For acpid needs to upgrade to work correctly with the new kernel.
The new version now uses autotools.

Also add systemd unit file.

(From OE-Core rev: 93805abedb5563a91886f330153b179033a29d11)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Chen Qi 2014-09-03 15:09:08 +08:00 committed by Richard Purdie
parent 9b5bc946e5
commit f9c6b40fb1
4 changed files with 23 additions and 26 deletions

View File

@ -4,30 +4,28 @@ BUGTRACKER = "http://sourceforge.net/tracker/?group_id=33140&atid=407341"
SECTION = "base"
LICENSE = "GPLv2+"
SRC_URI = "${SOURCEFORGE_MIRROR}/acpid/acpid-${PV}.tar.gz \
SRC_URI = "${SOURCEFORGE_MIRROR}/acpid2/acpid-${PV}.tar.xz \
file://init \
file://set_socket_noblock.patch "
file://acpid.service \
"
inherit update-rc.d
inherit autotools update-rc.d systemd
INITSCRIPT_NAME = "acpid"
INITSCRIPT_PARAMS = "defaults"
# Makefile ignores our CFLAGS, so override it.
#
EXTRA_OEMAKE = "CFLAGS='-W -Wall -Werror -Wundef -Wshadow ${CFLAGS} $(DEFS)'"
SYSTEMD_PACKAGES = "acpid"
SYSTEMD_SERVICE_acpid = "acpid.service"
do_compile () {
oe_runmake 'CC=${CC} -D_GNU_SOURCE' 'CROSS=${HOST_PREFIX}'
}
do_install () {
install -d ${D}${bindir}
oe_runmake 'INSTPREFIX=${D}' install
do_install_append () {
install -d ${D}${sysconfdir}/init.d
sed -e 's,/usr/sbin,${sbindir},g' ${WORKDIR}/init > ${D}${sysconfdir}/init.d/acpid
chmod 755 ${D}${sysconfdir}/init.d/acpid
install -d ${D}${sysconfdir}/acpi
install -d ${D}${sysconfdir}/acpi/events
install -d ${D}${systemd_unitdir}/system
install -m 0644 ${WORKDIR}/acpid.service ${D}${systemd_unitdir}/system
sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/acpid.service
}

View File

@ -0,0 +1,10 @@
[Unit]
Description=ACPI Event Daemon
After=syslog.target
[Service]
Type=forking
ExecStart=@SBINDIR@/acpid
[Install]
WantedBy=multi-user.target

View File

@ -1,10 +0,0 @@
--- a/acpid.c
+++ b/acpid.c
@@ -307,6 +307,7 @@ main(int argc, char **argv)
non_root_clients++;
}
fcntl(cli_fd, F_SETFD, FD_CLOEXEC);
+ fcntl(cli_fd, F_SETFL, O_NONBLOCK);
snprintf(buf, sizeof(buf)-1, "%d[%d:%d]",
creds.pid, creds.uid, creds.gid);
acpid_add_client(cli_fd, buf);

View File

@ -3,6 +3,5 @@ require acpid.inc
LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b \
file://acpid.h;endline=24;md5=324a9cf225ae69ddaad1bf9d942115b5"
SRC_URI[md5sum] = "61156ef32015c56dc0f2e3317f4ae09e"
SRC_URI[sha256sum] = "22703ce0dd7305aca01bc9ac741659c32b1593f1d6fde492df7f01067a534760"
SRC_URI[md5sum] = "c8ba756030d1b21fc973ec3d640f27f1"
SRC_URI[sha256sum] = "3d11454f4283c8f771d8dbd5eb6b5f2bbd9d94d9f77d68bab89e35d98b67ab31"