openwsman: add new recipe

Openwsman is an open source implementation of WS-Management; enabling the in-band management of Linux/uni*/Windows platforms.

Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This commit is contained in:
leimaohui
2015-07-16 13:32:47 +08:00
committed by Martin Jansa
parent f2ead8e308
commit f1a792f69c
3 changed files with 94 additions and 0 deletions
@@ -0,0 +1,17 @@
libssl is required by wsman_client_transport if ENABLE_EVENTING_SUPPORT enabled.
Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
diff -Nurp openwsman-2.4.12.orig/src/lib/CMakeLists.txt openwsman-2.4.12/src/lib/CMakeLists.txt
--- openwsman-2.4.12.orig/src/lib/CMakeLists.txt 2014-10-28 23:04:47.000000000 +0800
+++ openwsman-2.4.12/src/lib/CMakeLists.txt 2014-12-31 11:09:20.340428523 +0800
@@ -56,6 +56,9 @@ TARGET_LINK_LIBRARIES( ${WSMAN_CLIENT_TR
SET_TARGET_PROPERTIES( ${WSMAN_CLIENT_TRANSPORT_PKG} PROPERTIES VERSION 1.0.0 SOVERSION 1)
INSTALL(TARGETS ${WSMAN_CLIENT_TRANSPORT_PKG} DESTINATION ${LIB_INSTALL_DIR})
+IF( ENABLE_EVENTING_SUPPORT )
+TARGET_LINK_LIBRARIES( ${WSMAN_CLIENT_TRANSPORT_PKG} ${OPENSSL_LIBRARIES} )
+ENDIF( ENABLE_EVENTING_SUPPORT )
############### wsman_client ###############
@@ -0,0 +1,12 @@
[Unit]
Description=Openwsman WS-Management Service
After=syslog.target
[Service]
Type=forking
ExecStart=@SBINDIR@/openwsmand
ExecStartPre=@SYSCONFDIR@/openwsman/owsmangencert.sh
PIDFile=@LOCALSTATEDIR@/run/wsmand.pid
[Install]
WantedBy=multi-user.target
@@ -0,0 +1,65 @@
SUMMARY = "Opensource Implementation of WS-Management"
DESCRIPTION = "Openwsman is a project intended to provide an open-source \
implementation of the Web Services Management specipication \
(WS-Management) and to expose system management information on the \
Linux operating system using the WS-Management protocol. WS-Management \
is based on a suite of web services specifications and usage \
requirements that exposes a set of operations focused on and covers \
all system management aspects. \
Openwsman Server and service libraries"
HOMEPAGE = "http://www.openwsman.org/"
SECTION = "Applications/System"
DEPENDS = "curl libxml2 openssl libpam"
SRC_URI = "https://github.com/Openwsman/openwsman/archive/v${PV}.tar.gz \
file://libssl-is-required-if-eventint-supported.patch \
file://openwsmand.service"
SRC_URI[md5sum] = "824834a86040b98b03f3fc0f7f62e853"
SRC_URI[sha256sum] = "449b4972dc7700918f8f674047f0a1a9c19eeee3f4ce82f47890dddfa56e823f"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=d4f53d4c6cf73b9d43186ce3be6dd0ba"
inherit systemd cmake pkgconfig pythonnative perlnative
SYSTEMD_SERVICE_${PN} = "openwsmand.service"
SYSTEMD_AUTO_ENABLE = "disable"
LDFLAGS_append = "${@base_contains('DISTRO_FEATURES', 'ld-is-gold', " -fuse-ld=bfd ", '', d)}"
EXTRA_OECMAKE = "-DBUILD_BINDINGS=NO \
-DBUILD_LIBCIM=NO \
-DBUILD_PERL=YES \
-DCMAKE_INSTALL_PREFIX=${prefix} \
-DLIB=lib \
"
do_configure_prepend() {
export HOST_SYS=${HOST_SYS}
export BUILD_SYS=${BUILD_SYS}
export STAGING_INCDIR=${STAGING_INCDIR}
export STAGING_LIBDIR=${STAGING_LIBDIR}
}
do_install_append() {
install -d ${D}/${sysconfdir}/init.d
install -m 755 ${B}/etc/init/openwsmand.sh ${D}/${sysconfdir}/init.d/openwsmand
ln -sf ${sysconfdir}/init.d/openwsmand ${D}/${sbindir}/rcopenwsmand
chmod 755 ${D}/${sysconfdir}/openwsman/owsmangencert.sh
if ${@base_contains('DISTRO_FEATURES','systemd','true','false',d)}; then
install -d ${D}/${systemd_unitdir}/system
install -m 644 ${WORKDIR}/openwsmand.service ${D}/${systemd_unitdir}/system
sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/openwsmand.service
sed -i -e 's,@SYSCONFDIR@,${sysconfdir},g' ${D}${systemd_unitdir}/system/openwsmand.service
sed -i -e 's,@LOCALSTATEDIR@,${localstatedir},g' ${D}${systemd_unitdir}/system/openwsmand.service
fi
}
FILES_${PN}-dbg += "${libdir}/openwsman/plugins/.debug/ \
${libdir}/openwsman/authenticators/.debug/ \
"
INSANE_SKIP_${PN} = "dev-so"