[OE-core] [PATCH] Add service file and systemd package config to rngd
Leonel Gonzalez
lgonzalez at us.ibm.com
Fri Jun 16 15:37:17 UTC 2017
Signed-off-by: Leonel Gonzalez <lgonzalez at us.ibm.com>
---
meta/recipes-support/rng-tools/rng-tools/rngd.service | 8 ++++++++
meta/recipes-support/rng-tools/rng-tools_5.bb | 17 +++++++++++++++--
2 files changed, 23 insertions(+), 2 deletions(-)
create mode 100644 meta/recipes-support/rng-tools/rng-tools/rngd.service
diff --git a/meta/recipes-support/rng-tools/rng-tools/rngd.service b/meta/recipes-support/rng-tools/rng-tools/rngd.service
new file mode 100644
index 0000000..7b0e9a7
--- /dev/null
+++ b/meta/recipes-support/rng-tools/rng-tools/rngd.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Hardware RNG Entropy Gatherer Daemon
+
+[Service]
+ExecStart=@SBINDIR@/rngd -f
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta/recipes-support/rng-tools/rng-tools_5.bb b/meta/recipes-support/rng-tools/rng-tools_5.bb
index e2acaba..c6d08e6 100644
--- a/meta/recipes-support/rng-tools/rng-tools_5.bb
+++ b/meta/recipes-support/rng-tools/rng-tools_5.bb
@@ -9,7 +9,8 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/gkernel/${BP}.tar.gz \
file://uclibc-libuargp-configure.patch \
file://rng-tools-5-fix-textrels-on-PIC-x86.patch \
file://init \
- file://default"
+ file://default \
+ file://rngd.service"
SRC_URI[md5sum] = "6726cdc6fae1f5122463f24ae980dd68"
SRC_URI[sha256sum] = "60a102b6603bbcce2da341470cad42eeaa9564a16b4490e7867026ca11a3078e"
@@ -21,7 +22,7 @@ python () {
d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1")
}
-inherit autotools update-rc.d
+inherit autotools update-rc.d systemd
PACKAGECONFIG = "libgcrypt"
PACKAGECONFIG_libc-musl = "libargp"
@@ -29,6 +30,7 @@ PACKAGECONFIG_libc-uclibc = "libuargp"
PACKAGECONFIG[libargp] = "--with-libargp,--without-libargp,argp-standalone,"
PACKAGECONFIG[libuargp] = "--enable-uclibc,,,"
PACKAGECONFIG[libgcrypt] = "--with-libgcrypt,--without-libgcrypt,libgcrypt,"
+PACKAGECONFIG[systemd] = "--with-systemd=${systemd_unitdir}/system,--without-systemd,systemd"
do_install_append() {
# Only install the init script when 'sysvinit' is in DISTRO_FEATURES.
@@ -41,7 +43,18 @@ do_install_append() {
install -d "${D}${sysconfdir}/default"
install -m 0644 ${WORKDIR}/default ${D}${sysconfdir}/default/rng-tools
fi
+
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -d ${D}${systemd_unitdir}/system
+ install -m 644 ${WORKDIR}/rngd.service ${D}${systemd_unitdir}/system
+ sed -i -e 's, at SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/rngd.service
+ fi
}
INITSCRIPT_NAME = "rng-tools"
INITSCRIPT_PARAMS = "start 30 2 3 4 5 . stop 30 0 6 1 ."
+
+RPROVIDES_${PN} += "${PN}-systemd"
+RREPLACES_${PN} += "${PN}-systemd"
+RCONFLICTS_${PN} += "${PN}-systemd"
+SYSTEMD_SERVICE_${PN} = "rngd.service"
--
1.8.3.1
More information about the Openembedded-core
mailing list