Hello community, here is the log from the commit of package vhostmd for openSUSE:Factory checked in at 2017-04-30 21:23:52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/vhostmd (Old) and /work/SRC/openSUSE:Factory/.vhostmd.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "vhostmd" Sun Apr 30 21:23:52 2017 rev:23 rq:491974 version:0.4 Changes: -------- --- /work/SRC/openSUSE:Factory/vhostmd/vhostmd.changes 2015-01-22 21:49:29.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.vhostmd.new/vhostmd.changes 2017-04-30 21:24:43.457708373 +0200 @@ -1,0 +2,9 @@ +Thu Apr 27 16:34:53 UTC 2017 - [email protected] + +- Add systemd service file + add-systemd-service.patch + bsc#1036427 +- Replace build-improvements.patch with + modernize-build-files.patch sent upstream + +------------------------------------------------------------------- Old: ---- build-improvements.patch New: ---- add-systemd-service.patch modernize-build-files.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ vhostmd.spec ++++++ --- /var/tmp/diff_new_pack.2a3SXH/_old 2017-04-30 21:24:44.061623222 +0200 +++ /var/tmp/diff_new_pack.2a3SXH/_new 2017-04-30 21:24:44.065622658 +0200 @@ -1,7 +1,7 @@ # # spec file for package vhostmd # -# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,11 +24,14 @@ %endif Name: vhostmd +Url: https://github.com/vhostmd/vhostmd BuildRequires: libtool BuildRequires: libvirt-devel BuildRequires: libxml2 BuildRequires: libxml2-devel BuildRequires: pkg-config +BuildRequires: systemd +%{?systemd_requires} %if %{with_xen} BuildRequires: xen-devel %endif @@ -38,13 +41,14 @@ Version: 0.4 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build -PreReq: coreutils, %insserv_prereq +PreReq: coreutils Source0: vhostmd-%{version}.tar.bz2 Patch0: vhostmd-conf.patch Patch1: manpage.patch Patch2: value-newline.patch Patch3: libmetrics-link.patch -Patch4: build-improvements.patch +Patch4: modernize-build-files.patch +Patch5: add-systemd-service.patch %description vhostmd provides a "metrics communication channel" between a host and @@ -55,7 +59,7 @@ Authors: -------- - Jim Fehlig <[email protected]> + Jim Fehlig <[email protected]> Pat Campbell %package -n vm-dump-metrics @@ -71,15 +75,14 @@ Authors: -------- - Jim Fehlig <[email protected]> + Jim Fehlig <[email protected]> Pat Campbell -%package -n vm-dump-metrics-devel +%package -n libmetrics0 Summary: Virtual Host Metrics Daemon (vhostmd) Group: Development/Libraries/C and C++ -Requires: vm-dump-metrics = %{version} -%description -n vm-dump-metrics-devel +%description -n libmetrics0 vhostmd provides a "metrics communication channel" between a host and its hosted virtual machines, allowing limited introspection of host resource usage from within virtual machines @@ -88,7 +91,24 @@ Authors: -------- - Jim Fehlig <[email protected]> + Jim Fehlig <[email protected]> + Pat Campbell + +%package -n libmetrics-devel +Summary: Virtual Host Metrics Daemon (vhostmd) +Group: Development/Libraries/C and C++ +Requires: libmetrics0 = %{version} + +%description -n libmetrics-devel +vhostmd provides a "metrics communication channel" between a host and +its hosted virtual machines, allowing limited introspection of host +resource usage from within virtual machines + + + +Authors: +-------- + Jim Fehlig <[email protected]> Pat Campbell %prep @@ -98,6 +118,7 @@ %patch2 -p1 %patch3 -p1 %patch4 -p1 +%patch5 -p1 %build %if ! %{with_xen} @@ -111,28 +132,28 @@ %{?_disable_xenctrl} make +%install +make DESTDIR=$RPM_BUILD_ROOT install +rm -f $RPM_BUILD_ROOT%{_libdir}/*.la +rm -f $RPM_BUILD_ROOT%{_libdir}/*.a +ln -s %{_sbindir}/service $RPM_BUILD_ROOT%{_sbindir}/rcvhostmd + +%pre +%service_add_pre vhostmd.service + +%post +%service_add_post vhostmd.service + %preun -# Start of pre-remove script -%{stop_on_removal vhostmd} -# exit 0 -# End of pre-remove script +%service_del_preun vhostmd.service %postun -# Start post-remove script -%restart_on_update vhostmd -%{insserv_cleanup} +%service_del_postun vhostmd.service -%install -# init scripts -make DESTDIR=$RPM_BUILD_ROOT install -ln -s /etc/init.d/vhostmd $RPM_BUILD_ROOT/usr/sbin/rcvhostmd - -%post -n vm-dump-metrics-devel -# Start post-insall script +%post -n libmetrics0 sbin/ldconfig -%postun -n vm-dump-metrics-devel -# Start post-remove script +%postun -n libmetrics0 sbin/ldconfig %files @@ -147,7 +168,7 @@ %config(noreplace) /etc/vhostmd/vhostmd.conf %config /etc/vhostmd/vhostmd.dtd %config /etc/vhostmd/metric.dtd -/etc/init.d/vhostmd +%{_unitdir}/vhostmd.service /usr/share/doc/vhostmd/vhostmd.dtd /usr/share/doc/vhostmd/metric.dtd /usr/share/doc/vhostmd/vhostmd.xml @@ -160,13 +181,13 @@ /usr/sbin/vm-dump-metrics /usr/share/man/man1/vm-dump-metrics.1.gz -%files -n vm-dump-metrics-devel +%files -n libmetrics0 +%defattr(-,root,root) +%{_libdir}/libmetrics.so.* + +%files -n libmetrics-devel %defattr(-,root,root) -%{_libdir}/libmetrics.a -%{_libdir}/libmetrics.la %{_libdir}/libmetrics.so -%{_libdir}/libmetrics.so.0 -%{_libdir}/libmetrics.so.0.0.0 %dir /usr/include/vhostmd /usr/include/vhostmd/libmetrics.h ++++++ add-systemd-service.patch ++++++ >From 3d50ad8b7f5ef0eb9dad1918e1c7a46217e9a525 Mon Sep 17 00:00:00 2001 From: Jim Fehlig <[email protected]> Date: Thu, 27 Apr 2017 09:52:02 -0600 Subject: [PATCH 2/2] Add systemd service file vhostmd is long overdue for a systemd service file. Add one, and while at it support specifying the type of init system in the configure script. Signed-off-by: Jim Fehlig <[email protected]> --- Makefile.am | 36 +++++++++++++++++++++++++++++++++--- configure.ac | 24 +++++++++++++++++++++++- vhostmd.service | 13 +++++++++++++ 3 files changed, 69 insertions(+), 4 deletions(-) Index: vhostmd-0.4/Makefile.am =================================================================== --- vhostmd-0.4.orig/Makefile.am +++ vhostmd-0.4/Makefile.am @@ -7,11 +7,41 @@ EXTRA_DIST = $(doc_DATA) vhostmd.init vh AUTOMAKE_OPTIONS=dist-bzip2 -install-data-local: +install-data-local: install-init-systemv install-init-systemd $(MKDIR_P) $(DESTDIR)/etc/vhostmd - $(MKDIR_P) $(DESTDIR)/etc/init.d - $(MKDIR_P) $(DESTDIR)/usr/sbin $(INSTALL_DATA) $(srcdir)/vhostmd.xml $(DESTDIR)/etc/vhostmd/vhostmd.conf $(INSTALL_DATA) $(srcdir)/vhostmd.dtd $(DESTDIR)/etc/vhostmd $(INSTALL_DATA) $(srcdir)/metric.dtd $(DESTDIR)/etc/vhostmd + +uninstall-local: uninstall-init-systemv uninstall-init-systemd + rm -f $(DESTDIR)/etc/vhostmd/vhostmd.conf + rm -f $(DESTDIR)/etc/vhostmd/vhostmd.dtd + rm -f $(DESTDIR)/etc/vhostmd/metric.dtd + rmdir $(DESTDIR)/etc/vhostmd || : + +if INIT_SCRIPT_SYSTEMV +install-init-systemv: $(srcdir)/vhostmd.init + $(MKDIR_P) $(DESTDIR)$(sysconfdir)/init.d $(INSTALL_SCRIPT) $(srcdir)/vhostmd.init $(DESTDIR)/etc/init.d/vhostmd + +uninstall-init-systemv: + rm -f $(DESTDIR)$(sysconfdir)/init.d/vhostmd + rmdir $(DESTDIR)$(sysconfdir)/init.d || : +else ! INIT_SCRIPT_SYSTEMV +install-init-systemv: +uninstall-init-systemv: +endif ! INIT_SCRIPT_SYSTEMV + +if INIT_SCRIPT_SYSTEMD +SYSTEMD_UNIT_DIR = $(prefix)/lib/systemd/system +install-init-systemd: $(srcdir)/vhostmd.service + $(MKDIR_P) $(DESTDIR)$(SYSTEMD_UNIT_DIR) + $(INSTALL_DATA) $(srcdir)/vhostmd.service $(DESTDIR)$(SYSTEMD_UNIT_DIR)/vhostmd.service + +uninstall-init-systemd: + rm -f $(DESTDIR)$(SYSTEMD_UNIT_DIR)/vhostmd.service + rmdir $(DESTDIR)$(SYSTEMD_UNIT_DIR) || : +else ! INIT_SCRIPT_SYSTEMD +install-init-systemd: +uninstall-init-systemd: +endif ! INIT_SCRIPT_SYSTEMD Index: vhostmd-0.4/configure.ac =================================================================== --- vhostmd-0.4.orig/configure.ac +++ vhostmd-0.4/configure.ac @@ -1,4 +1,4 @@ -AC_INIT(Virtual Host Metrics Daemon, 0.4, [email protected], vhostmd) +AC_INIT(Virtual Host Metrics Daemon, 0.4, [email protected], vhostmd) AC_CONFIG_SRCDIR(vhostmd/vhostmd.c) AC_CONFIG_HEADERS([config.h]) @@ -81,6 +81,28 @@ AC_ARG_WITH([xenstore], esac],[with_xenstore=true]) AM_CONDITIONAL(WITH_XENSTORE, test x$with_xenstore = xtrue) +# Configure argument to support type of init system +AC_ARG_WITH([init_script], + [AS_HELP_STRING([--with-init-script], + [Type of init script to install: systemv, systemd, check @<:@default=check@:>@])], + [], + [with_init_script=check]) +init_systemv=no +init_systemd=no +if test "$with_init_script" = check && type systemctl >/dev/null 2>&1; then + init_systemd=yes +else + init_systemv=yes +fi +case "${with_init_script}" in + systemv) init_systemv=yes;; + systemd) init_systemd=yes;; + check) ;; + *) AC_MSG_ERROR([Unknown initscript type $with_init_script]);; +esac +AM_CONDITIONAL([INIT_SCRIPT_SYSTEMV], test "$init_systemv" = "yes") +AM_CONDITIONAL([INIT_SCRIPT_SYSTEMD], test "$init_systemd" = "yes") + AC_OUTPUT(vhostmd/Makefile include/Makefile libmetrics/Makefile Index: vhostmd-0.4/vhostmd.service =================================================================== --- /dev/null +++ vhostmd-0.4/vhostmd.service @@ -0,0 +1,13 @@ +[Unit] +Description=Daemon for collecting virutalization host metrics +After=libvirtd.service + +[Service] +Type=forking +ExecStart=/usr/sbin/vhostmd +ExecReload=/bin/kill -HUP $MAINPID +ExecStop=/bin/kill -TERM $MAINPID +Documentation=man:vhostmd(8) + +[Install] +WantedBy=multi-user.target ++++++ modernize-build-files.patch ++++++ >From 573e933aff34003998a78002745319ccbc561524 Mon Sep 17 00:00:00 2001 From: Jim Fehlig <[email protected]> Date: Thu, 27 Apr 2017 09:36:28 -0600 Subject: [PATCH 1/2] Modernize build files Some of the constructs used in the configure script and Makefiles are a bit outdated, e.g. use of '$(mkinstalldirs)' instead of '$(MKDIR_P)'. Change these old constructs to their modern counterparts. Signed-off-by: Jim Fehlig <[email protected]> --- Makefile.am | 15 +++++++-------- configure.ac | 2 +- 2 files changed, 8 insertions(+), 9 deletions(-) Index: vhostmd-0.4/Makefile.am =================================================================== --- vhostmd-0.4.orig/Makefile.am +++ vhostmd-0.4/Makefile.am @@ -8,11 +8,10 @@ EXTRA_DIST = $(doc_DATA) vhostmd.init vh AUTOMAKE_OPTIONS=dist-bzip2 install-data-local: - $(mkinstalldirs) $(DESTDIR)/etc/vhostmd - $(mkinstalldirs) $(DESTDIR)/etc/init.d - $(mkinstalldirs) $(DESTDIR)/usr/sbin - -@INSTALL@ -m 0644 $(srcdir)/vhostmd.xml $(DESTDIR)/etc/vhostmd/vhostmd.conf - -@INSTALL@ -m 0644 $(srcdir)/vhostmd.dtd $(DESTDIR)/etc/vhostmd - -@INSTALL@ -m 0644 $(srcdir)/metric.dtd $(DESTDIR)/etc/vhostmd - -@INSTALL@ -m 0755 $(srcdir)/vhostmd.init $(DESTDIR)/etc/init.d/vhostmd - + $(MKDIR_P) $(DESTDIR)/etc/vhostmd + $(MKDIR_P) $(DESTDIR)/etc/init.d + $(MKDIR_P) $(DESTDIR)/usr/sbin + $(INSTALL_DATA) $(srcdir)/vhostmd.xml $(DESTDIR)/etc/vhostmd/vhostmd.conf + $(INSTALL_DATA) $(srcdir)/vhostmd.dtd $(DESTDIR)/etc/vhostmd + $(INSTALL_DATA) $(srcdir)/metric.dtd $(DESTDIR)/etc/vhostmd + $(INSTALL_SCRIPT) $(srcdir)/vhostmd.init $(DESTDIR)/etc/init.d/vhostmd Index: vhostmd-0.4/configure.ac =================================================================== --- vhostmd-0.4.orig/configure.ac +++ vhostmd-0.4/configure.ac @@ -4,6 +4,7 @@ AC_CONFIG_SRCDIR(vhostmd/vhostmd.c) AC_CONFIG_HEADERS([config.h]) AC_GNU_SOURCE +AM_INIT_AUTOMAKE AC_PROG_LIBTOOL @@ -21,7 +22,6 @@ AC_SUBST(topdir) AC_CONFIG_FILES([Makefile]) -AM_INIT_AUTOMAKE # Checks for programs. AM_PROG_CC_C_O
