rpcbind: Add systemd support
authorMuhammad Shakeel <muhammad_shakeel@mentor.com>
Wed, 4 Sep 2013 11:05:01 +0000 (11:05 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 10 Sep 2013 22:15:15 +0000 (23:15 +0100)
- Remove dependency on meta-systemd

(From OE-Core rev: 3ecb5e21b3b4f05f2d527264c3574fdc37984a77)

Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-extended/rpcbind/rpcbind/rpcbind.conf [new file with mode: 0644]
meta/recipes-extended/rpcbind/rpcbind/rpcbind.service [new file with mode: 0644]
meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb

diff --git a/meta/recipes-extended/rpcbind/rpcbind/rpcbind.conf b/meta/recipes-extended/rpcbind/rpcbind/rpcbind.conf
new file mode 100644 (file)
index 0000000..2a4dfbc
--- /dev/null
@@ -0,0 +1,3 @@
+# Optional arguments passed to rpcbind.
+#
+RPCBIND_OPTS=""
diff --git a/meta/recipes-extended/rpcbind/rpcbind/rpcbind.service b/meta/recipes-extended/rpcbind/rpcbind/rpcbind.service
new file mode 100644 (file)
index 0000000..4de28d4
--- /dev/null
@@ -0,0 +1,14 @@
+[Unit]
+Description=RPC Bind
+After=network.target
+Wants=rpcbind.target
+Before=rpcbind.target
+
+[Service]
+Type=forking
+EnvironmentFile=-@SYSCONFDIR@/rpcbind.conf
+ExecStart=@SBINDIR@/rpcbind -w $RPCBIND_OPTS
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
index be2897c..a75e4e1 100644 (file)
@@ -15,6 +15,8 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/rpcbind/rpcbind-${PV}.tar.bz2 \
            file://fix_host_path.patch \
            file://obsolete_automake_macros.patch \
            ${UCLIBCPATCHES} \
+           file://rpcbind.conf \
+           file://rpcbind.service \
           "
 
 UCLIBCPATCHES_libc-uclibc = "file://0001-uclibc-nss.patch \
@@ -27,7 +29,7 @@ SRC_URI[sha256sum] = "c92f263e0353887f16379d7708ef1fb4c7eedcf20448bc1e4838f59497
 
 PR = "r4"
 
-inherit autotools update-rc.d
+inherit autotools update-rc.d systemd
 
 PACKAGECONFIG ??= "tcp-wrappers"
 PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers"
@@ -35,6 +37,11 @@ PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers"
 INITSCRIPT_NAME = "rpcbind"
 INITSCRIPT_PARAMS = "start 43 S . start 32 0 6 . stop 81 1 ."
 
+SYSTEMD_SERVICE_${PN} = "rpcbind.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+EXTRA_OECONF += " --enable-warmstarts "
+
 do_install_append () {
        mv ${D}${bindir} ${D}${sbindir}
 
@@ -43,4 +50,11 @@ do_install_append () {
                -e 's,/sbin/,${sbindir}/,g' \
                ${WORKDIR}/init.d > ${D}${sysconfdir}/init.d/rpcbind
        chmod 0755 ${D}${sysconfdir}/init.d/rpcbind
+
+       install -m 0755 ${WORKDIR}/rpcbind.conf ${D}${sysconfdir}
+       install -d ${D}${systemd_unitdir}/system
+       install -m 0644 ${WORKDIR}/rpcbind.service ${D}${systemd_unitdir}/system
+       sed -i -e 's,@SBINDIR@,${sbindir},g' \
+               -e 's,@SYSCONFDIR@,${sysconfdir},g' \
+               ${D}${systemd_unitdir}/system/rpcbind.service
 }