%global have_xen 0 Summary: Virtualization host metrics daemon Name: vhostmd Version: 1.1 Release: 1 License: GPLv2+ URL: https://github.com/vhostmd/vhostmd Source0: https://github.com/vhostmd/vhostmd/archive/v%{version}/%{name}-%{version}.tar.gz Source1: vhostmd.conf Patch0001: 0001-Relax-virtio-requirement-in-config-file.patch Patch0002: 0002-libmetrics-Set-pointer-NULL-after-free.patch Patch0003: 0003-libmetrics-Initialize-local-variable-ret-to-failure.patch Patch0004: 0004-libmetrics-Check-return-value-of-asprintf.patch Patch0005: 0005-libmetrics-Remove-unsafe-XML_PARSE_NOENT-option.patch Patch0006: 0006-libmetrics-Ensure-libmetrics-mutex-is-unlocked-in-er.patch Patch0007: 0007-libmetrics-Fix-potential-memory-leak.patch Patch0008: 0008-libmetrics-Use-proper-conversion-specifier-when-call.patch Patch0009: 0009-libmetrics-Fix-potential-leak-of-FILE-pointer.patch Patch0010: 0010-util-Add-missing-call-to-va_end.patch Patch0011: 0011-util-Fix-potential-memory-leak.patch Patch0012: 0012-util-Check-return-value-of-strstr.patch Patch0013: 0013-Check-return-value-of-asprintf.patch Patch0014: 0014-vhostmd-Fix-memory-leak-in-parse_transports.patch Patch0015: 0015-vhostmd-Remove-unsafe-XML_PARSE_NOENT-option.patch Patch0016: 0016-vhostmd-Check-return-value-of-file-functions.patch Patch0017: 0017-vhostmd-Check-for-valide-file-handle-before-calling-.patch Patch0018: 0018-vhostmd-Fix-memory-leak-in-vhostmd_run.patch Patch0019: 0019-virtio-Fix-strncpy-length-parameter.patch BuildRequires: make BuildRequires: gcc BuildRequires: chrpath BuildRequires: perl-generators BuildRequires: pkgconfig BuildRequires: libxml2-devel BuildRequires: libvirt-devel BuildRequires: autoconf, automake, libtool BuildRequires: git %{?systemd_requires} BuildRequires: systemd %if %{have_xen} BuildRequires: xen-devel %endif Requires: libvirt %description 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. %package -n vm-dump-metrics Summary: Virtualization host metrics dump %description -n vm-dump-metrics Executable to dump all available virtualization host metrics to stdout or a file. %package -n vm-dump-metrics-devel Summary: Virtualization host metrics dump development Requires: vm-dump-metrics = %{version}-%{release} Requires: pkgconfig %description -n vm-dump-metrics-devel Header and libraries necessary for metrics gathering development %prep %autosetup -S git %build autoreconf -i %configure \ %if %{have_xen} == 0 --without-xenstore \ %endif --with-init-script=systemd \ --enable-shared --disable-static make %{_smp_mflags} %install rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install rm $RPM_BUILD_ROOT%{_libdir}/libmetrics.la chrpath --delete $RPM_BUILD_ROOT%{_sbindir}/vm-dump-metrics # Remove docdir - we'll make a proper one ourselves. rm -r $RPM_BUILD_ROOT%{_docdir}/vhostmd # Remove metric.dtd from /etc. rm $RPM_BUILD_ROOT%{_sysconfdir}/vhostmd/metric.dtd # The default configuration file is great for Xen, not so great # for anyone else. Replace it with one which is better for libvirt # users. rm $RPM_BUILD_ROOT%{_sysconfdir}/vhostmd/vhostmd.conf cp %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/vhostmd/vhostmd.conf %pre getent group vhostmd >/dev/null || groupadd -g 112 -r vhostmd getent passwd vhostmd >/dev/null || \ useradd -u 112 -r -g vhostmd -d %{_datadir}/vhostmd -s /sbin/nologin \ -c "Virtual Host Metrics Daemon" vhostmd exit 0 %post %systemd_post vhostmd.service %preun %systemd_preun vhostmd.service %postun %systemd_postun_with_restart vhostmd.service %files %doc AUTHORS ChangeLog COPYING README %doc mdisk.xml metric.dtd vhostmd.dtd vhostmd.xml %{_sbindir}/vhostmd %dir %{_sysconfdir}/vhostmd %config(noreplace) %{_sysconfdir}/vhostmd/vhostmd.conf %config %{_sysconfdir}/vhostmd/vhostmd.dtd %{_unitdir}/vhostmd.service %dir %{_datadir}/vhostmd %dir %{_datadir}/vhostmd/scripts %{_datadir}/vhostmd/scripts/pagerate.pl %{_mandir}/man8/vhostmd.8.gz %files -n vm-dump-metrics %doc COPYING %{_sbindir}/vm-dump-metrics %{_libdir}/libmetrics.so.0 %{_libdir}/libmetrics.so.0.0.0 %{_mandir}/man1/vm-dump-metrics.1.gz %files -n vm-dump-metrics-devel %doc README %{_libdir}/libmetrics.so %dir %{_includedir}/vhostmd %{_includedir}/vhostmd/libmetrics.h %changelog * Tue Aug 31 2021 shenhongyi - 1.1-1 - Package init