]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
alsa-state: do not install the init script in case of systemd ChenQi/alsa-state-systemd
authorChen Qi <Qi.Chen@windriver.com>
Thu, 13 Feb 2014 07:16:25 +0000 (02:16 -0500)
committerChen Qi <Qi.Chen@windriver.com>
Thu, 13 Feb 2014 07:27:44 +0000 (15:27 +0800)
As the corresponding service files have already been provided by
the alsa-utils-alsactl package, the init script is really not needed.
So we do not install it in a systemd based image.

[YOCTO #4420]

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
meta/recipes-bsp/alsa-state/alsa-state.bb

index 552fcfc02222ce13b3d4d29b4250578dbf0deed9..6dbc1aa66fa9633e3d443d32c338927f4d41cc7f 100644 (file)
@@ -18,16 +18,20 @@ SRC_URI = "\
   file://alsa-state-init \
 "
 
-inherit update-rc.d
+inherit update-rc.d systemd
 
 INITSCRIPT_NAME = "alsa-state"
 INITSCRIPT_PARAMS = "start 39 S . stop 31 0 6 ."
 
 do_install() {
-    sed -i -e "s:#STATEDIR#:${localstatedir}/lib/alsa:g" ${WORKDIR}/alsa-state-init
-    install -d ${D}${sysconfdir}/init.d
-    install -m 0755 ${WORKDIR}/alsa-state-init ${D}${sysconfdir}/init.d/alsa-state
-
+    # The alsa-utils-alsactl already provides corresponding systemd unit files.
+    # So the init script should not be installed in a systemd based image.
+    install -d ${D}${sysconfdir}
+    if ${@base_contains('DISTRO_FEATURES','systemd','false','true',d)}; then
+       sed -i -e "s:#STATEDIR#:${localstatedir}/lib/alsa:g" ${WORKDIR}/alsa-state-init
+       install -d ${D}${sysconfdir}/init.d
+       install -m 0755 ${WORKDIR}/alsa-state-init ${D}${sysconfdir}/init.d/alsa-state
+    fi
     install -d ${D}/${localstatedir}/lib/alsa
     install -m 0644 ${WORKDIR}/asound.conf ${D}${sysconfdir}
     install -m 0644 ${WORKDIR}/*.state ${D}${localstatedir}/lib/alsa