[yocto] [meta-security][rocko][PATCH] clamav: Add missing clamav.service file to SRC_URI

Jagadeesh Krishnanjanappa jkrishnanjanappa at mvista.com
Mon Mar 19 23:50:44 PDT 2018


This solves the below error when systemd is used as init manager,
-- snip --
ERROR: clamav-0.99.2-r0 do_package: SYSTEMD_SERVICE_clamav value clamav.service does not exist
ERROR: clamav-0.99.2-r0 do_package: Function failed: systemd_populate_packages
-- snip --

Other issues:
1. Ship /lib/systemd/system/clamav-freshclam.service into ${PN}-freshclam
   package, to solve below warning:
-- snip --
[10240] WARNING: QA Issue: clamav: Files/directories were installed but not shipped in any package:
  /lib/systemd/system/clamav-freshclam.service
-- snip --

2. Solve rpm conflict error in do_populate_sdk, when clamav and mlib-clamav
   are specified using IMAGE_INSTALL.
-- snip --
do_populate_sdk fails with below error:
  file /usr/bin/clamav-config conflicts between attempted installs of lib32-clamav-dev-0.99.2-r0.i586 and clamav-dev-0.99.2-r0.corei7_64
-- snip --

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa at mvista.com>
---
 recipes-security/clamav/clamav_0.99.2.bb | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/recipes-security/clamav/clamav_0.99.2.bb b/recipes-security/clamav/clamav_0.99.2.bb
index 5dfda8f..d7aa6d0 100644
--- a/recipes-security/clamav/clamav_0.99.2.bb
+++ b/recipes-security/clamav/clamav_0.99.2.bb
@@ -14,6 +14,7 @@ SRC_URI = "git://github.com/vrtadmin/clamav-devel;branch=${PV} \
     file://clamd.conf \
     file://freshclam.conf \
     file://volatiles.03_clamav \
+    file://${BPN}.service \
     "
 
 SRC_URI[md5sum] = "61b51a04619aeafd965892a53f86d192"
@@ -26,7 +27,7 @@ SO_VER = "7.1.1"
 
 EXTRANATIVEPATH += "chrpath-native"
 
-inherit autotools-brokensep pkgconfig useradd systemd 
+inherit autotools-brokensep pkgconfig useradd systemd multilib-alternatives
 
 UID = "clamav"
 GID = "clamav"
@@ -90,8 +91,13 @@ do_install_append() {
     install -m 0644 ${WORKDIR}/volatiles.03_clamav  ${D}${sysconfdir}/default/volatiles/volatiles.03_clamav
     sed -i -e 's#${STAGING_DIR_HOST}##g' ${D}${libdir}/pkgconfig/libclamav.pc
     rm ${D}/${libdir}/libclamav.so
+    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)};then
+	install -D -m 0644 ${WORKDIR}/clamav.service ${D}${systemd_unitdir}/system/clamav.service
+    fi
 }
 
+MULTILIB_ALTERNATIVES_${PN}-dev = "${bindir}/clamav-config"
+
 pkg_postinst_${PN} () {
     if [ -z "$D" ] && [ -e /etc/init.d/populate-volatile.sh ] ; then
         ${sysconfdir}/init.d/populate-volatile.sh update
@@ -126,7 +132,8 @@ FILES_${PN}-freshclam = "${bindir}/freshclam \
                         ${sysconfdir}/clamav ${sysconfdir}/default/volatiles \
                         ${localstatedir}/lib/clamav \
                         ${docdir}/${PN}-freshclam ${mandir}/man1/freshclam.* \
-                        ${mandir}/man5/freshclam.conf.*"
+                        ${mandir}/man5/freshclam.conf.* \
+                        ${systemd_unitdir}/system/clamav-freshclam.service"
 
 FILES_${PN}-dev = " ${bindir}/clamav-config ${libdir}/*.la \
                     ${libdir}/pkgconfig/*.pc \
-- 
2.7.4




More information about the yocto mailing list