[OE-core] [PATCH] rpcbind: Add systemd support

Saul Wold sgw at linux.intel.com
Wed Jul 10 17:14:56 UTC 2013


On 07/10/2013 03:53 AM, Shakeel, Muhammad wrote:
> From: Muhammad Shakeel <muhammad_shakeel at mentor.com>
>
> - Adds systemd support in rpcbind
> - Install 'sysv' related files only if distro has this feature
> - Set PR to 'r0'
>
> Signed-off-by: Muhammad Shakeel <muhammad_shakeel at mentor.com>
> ---
>   .../rpcbind/rpcbind/rpcbind.service                |   13 ++++++++++
>   meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb     |   26 ++++++++++++++------
>   2 files changed, 32 insertions(+), 7 deletions(-)
>
> diff --git a/meta/recipes-extended/rpcbind/rpcbind/rpcbind.service b/meta/recipes-extended/rpcbind/rpcbind/rpcbind.service
> new file mode 100644
> index 0000000..a028ace
> --- /dev/null
> +++ b/meta/recipes-extended/rpcbind/rpcbind/rpcbind.service
> @@ -0,0 +1,13 @@
> +[Unit]
> +Description=RPC Bind
> +After=network.target
> +Wants=rpcbind.target
> +Before=rpcbind.target
> +
> +[Service]
> +Type=forking
> +ExecStart=/usr/sbin/rpcbind
> +Restart=always
> +
> +[Install]
> +WantedBy=multi-user.target
> diff --git a/meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb b/meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb
> index f4a0367..ab25edf 100644
> --- a/meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb
> +++ b/meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb
> @@ -15,6 +15,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/rpcbind/rpcbind-${PV}.tar.bz2 \
>              file://fix_host_path.patch \
>              file://obsolete_automake_macros.patch \
>              ${UCLIBCPATCHES} \
> +           file://rpcbind.service \
>             "
>
>   UCLIBCPATCHES_libc-uclibc = "file://0001-uclibc-nss.patch \
> @@ -25,9 +26,9 @@ UCLIBCPATCHES ?= ""
>   SRC_URI[md5sum] = "1a77ddb1aaea8099ab19c351eeb26316"
>   SRC_URI[sha256sum] = "c92f263e0353887f16379d7708ef1fb4c7eedcf20448bc1e4838f59497a00de3"
>
> -PR = "r4"
> +PR = "r0"
>
Since your not changing the version, you need to keep the PR as is, 
there is no need to do a PR bump though. Next time this recipe is 
updated, the PR entry can be removed.

Sau!

> -inherit autotools update-rc.d
> +inherit autotools update-rc.d systemd
>
>   PACKAGECONFIG ??= "tcp-wrappers"
>   PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers"
> @@ -35,12 +36,23 @@ 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"
> +
>   do_install_append () {
>       mv ${D}${bindir} ${D}${sbindir}
>
> -    install -d ${D}${sysconfdir}/init.d
> -    sed -e 's,/etc/,${sysconfdir}/,g' \
> -        -e 's,/sbin/,${sbindir}/,g' \
> -        ${WORKDIR}/init.d > ${D}${sysconfdir}/init.d/rpcbind
> -    chmod 0755 ${D}${sysconfdir}/init.d/rpcbind
> +    if ${@base_contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then
> +        install -d ${D}${sysconfdir}/init.d
> +        sed -e 's,/etc/,${sysconfdir}/,g' \
> +            -e 's,/sbin/,${sbindir}/,g' \
> +            ${WORKDIR}/init.d > ${D}${sysconfdir}/init.d/rpcbind
> +        chmod 0755 ${D}${sysconfdir}/init.d/rpcbind
> +    fi
> +
> +    if ${@base_contains('DISTRO_FEATURES','systemd','true','false',d)}; then
> +        install -d ${D}${systemd_unitdir}/system
> +        install -m 0644 ${WORKDIR}/rpcbind.service ${D}${systemd_unitdir}/system
> +        sed -i 's,/usr/sbin/,${sbindir}/,g' ${D}${systemd_unitdir}/system/rpcbind.service
> +    fi
>   }
>



More information about the Openembedded-core mailing list