Blob Blame History Raw
%define opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0)
%define debug_package %{nil}

Name:           virt-mem
Version:        0.3.1
Release:        8%{?dist}
Summary:        Management tools for virtual machines

Group:          Development/Libraries
License:        GPLv2+
URL:            http://et.redhat.com/~rjones/virt-mem/
Source0:        http://et.redhat.com/~rjones/virt-mem/files/%{name}-%{version}.tar.gz
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
ExcludeArch:    sparc64 s390 s390x

Patch0:         virt-mem-0.3.1-bitstring2.patch
Patch1:         virt-mem-0.3.1-dynlink.patch
Patch2:         virt-mem-0.3.1-fix-permissions.patch

BuildRequires:  ocaml >= 3.10.0
BuildRequires:  ocaml-ocamldoc
BuildRequires:  ocaml-findlib-devel
BuildRequires:  ocaml-camlp4-devel
BuildRequires:  ocaml-extlib-devel
BuildRequires:  ocaml-libvirt-devel >= 0.4.4.2
BuildRequires:  ocaml-xml-light-devel
BuildRequires:  ocaml-xmlrpc-light-devel
BuildRequires:  ocaml-bitstring-devel >= 2.0.0
BuildRequires:  ocaml-csv-devel
BuildRequires:  ocaml-gettext-devel
BuildRequires:  ocaml-pcre-devel
BuildRequires:  libvirt-devel >= 0.4.4

# Missing indirect requirements of ocaml-xmlrpc-light-devel.
# https://bugzilla.redhat.com/show_bug.cgi?id=458265
BuildRequires:  ocaml-ocamlnet-devel
BuildRequires:  ocaml-ocamlnet-nethttpd-devel

# Missing indirect requirement of ocaml-pcre-devel.
BuildRequires:  pcre-devel

# For perldoc
BuildRequires:  perl

%define _use_internal_dependency_generator 0
%define __find_requires /usr/lib/rpm/ocaml-find-requires.sh
%define __find_provides /usr/lib/rpm/ocaml-find-provides.sh

%description
These are a collection of monitoring and management tools for virtual
machines.

Commands we support at the moment include:

  virt-uname      'uname' command, shows OS version, architecture, etc.
  virt-dmesg      'dmesg' command, shows kernel messages
  virt-ps         'ps' command, shows process list

The general idea is that they allow you to monitor virtual machines
without needing to log in to the machine itself or install any extra
software inside the virtual machine.  At the moment we only support
virtual machines running Linux kernel >= 2.6, but we expect to support
other operating systems in the future.

Most of the commands also offer a CSV (comma-separated values) output
format ('virt-xx --csv'), allowing usage from scripts to update
spreadsheets, databases or integrate with existing monitoring systems
like Nagios.

The commands use libvirt to access the underlying virtualization
system, so we support a variety of different systems such as Xen, QEMU
and KVM, and more can be added just by adding support to libvirt.


%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1


%build
%configure

# Stack overflow when building the kernel descriptions ...
ulimit -s unlimited

make all

# Build translations.
make -C po


%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{_datadir}/locale
make DESTDIR=$RPM_BUILD_ROOT install PODIR="$RPM_BUILD_ROOT%{_datadir}/locale"

# Find translations.
%find_lang %{name}

# Strip executables.
strip $RPM_BUILD_ROOT%{_bindir}/*


%clean
rm -rf $RPM_BUILD_ROOT


%files -f %{name}.lang
%defattr(-,root,root,-)
%doc COPYING README ChangeLog
%{_bindir}/*
%{_mandir}/man1/*


%changelog
* Fri Jun 12 2009 Richard W.M. Jones <rjones@redhat.com> - 0.3.1-8
- Fix for libvirt 0.6: Libvirt.D.memory_peek now requires write permission
  to the hypervisor connection.

* Thu Apr 16 2009 S390x secondary arch maintainer <fedora-s390x@lists.fedoraproject.org>
- ExcludeArch sparc64, s390, s390x as we don't have OCaml on those archs
  (added sparc64 per request from the sparc maintainer)

* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

* Fri Dec  5 2008 Richard W.M. Jones <rjones@redhat.com> - 0.3.1-5
- Rebuild for OCaml 3.11.0.
- Fix for bitstring 2.0.0.
- Fix for dynlink.cma dep on camlp4.
- Avoid stack overflow on ppc64.

* Mon Aug 25 2008 Richard W.M. Jones <rjones@redhat.com> - 0.3.1-2
- Forgot to add the new sources to previous release.

* Mon Aug 25 2008 Richard W.M. Jones <rjones@redhat.com> - 0.3.1-1
- New upstream release 0.3.1.

* Tue Aug 12 2008 Richard W.M. Jones <rjones@redhat.com> - 0.2.9-6
- Bump release to ensure upgrade path between releases.

* Thu Aug  7 2008 Richard W.M. Jones <rjones@redhat.com> - 0.2.9-3
- Added missing indirect BRs for ocaml-xmlrpc-light-devel.
- Added missing BR ocaml-pcre-devel.

* Thu Aug  7 2008 Richard W.M. Jones <rjones@redhat.com> - 0.2.9-1
- New upstream release 0.2.9:
- Fixes 64 bit builds.
- Fixes builds on Fedora 8.

* Thu Aug  7 2008 Richard W.M. Jones <rjones@redhat.com> - 0.2.8-3
- Add missing BR ocaml-xmlrpc-light-devel.

* Thu Aug  7 2008 Richard W.M. Jones <rjones@redhat.com> - 0.2.8-2
- Add missing BR ocaml-camlp4-devel.

* Thu Aug  7 2008 Richard W.M. Jones <rjones@redhat.com> - 0.2.8-1
- New upstream version.

* Tue Jun 10 2008 Richard W.M. Jones <rjones@redhat.com> - 0.2.4-1
- Initial RPM release.