Blob Blame History Raw
Name:           virt-v2v
Version:        0.7.0
Release:        2%{?dist}
Summary:        Convert a virtual machine to run on KVM

Group:          Applications/System
License:        GPLv2+ and LGPLv2+
URL:            http://git.fedoraproject.org/git/virt-v2v.git
Source0:        https://fedorahosted.org/releases/v/i/virt-v2v/%{name}-v%{version}.tar.gz
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

# Unfortunately, despite really being noarch, we have to make virt-v2v arch
# dependent to avoid build failures on architectures where libguestfs isn't
# available.
ExclusiveArch:  %{ix86} x86_64

# Build system direct requirements
BuildRequires:  gettext
BuildRequires:  perl
BuildRequires:  perl(Module::Build)
BuildRequires:  perl(ExtUtils::Manifest)
BuildRequires:  perl(Test::More)
BuildRequires:  perl(Test::Pod)
BuildRequires:  perl(Test::Pod::Coverage)
BuildRequires:  perl(Module::Find)

# Runtime perl modules also required at build time for use_ok test
BuildRequires:  perl(DateTime)
BuildRequires:  perl(IO::String)
BuildRequires:  perl(Locale::TextDomain)
BuildRequires:  perl(Module::Pluggable)
BuildRequires:  perl(Net::HTTPS)
BuildRequires:  perl(Net::SSL)
BuildRequires:  perl(Sys::Guestfs)
BuildRequires:  perl(Sys::Guestfs::Lib)
BuildRequires:  perl(Sys::Virt)
BuildRequires:  perl(Term::ProgressBar)
BuildRequires:  perl(URI)
BuildRequires:  perl(XML::DOM)
BuildRequires:  perl(XML::DOM::XPath)
BuildRequires:  perl(XML::Writer)

# Need an explicit package dependency for version requires
BuildRequires:  perl-libguestfs >= 1:1.6.0
BuildRequires:  perl-hivex >= 1.2.2

Requires:  perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))

# Need an explicit package dependency for version requires
Requires:       perl-libguestfs >= 1:1.6.0
Requires:       perl-hivex >= 1.2.2

# Net::SSL is loaded dynamically by Net::HTTPS in Sys::VirtV2V::Transfer::ESX.
# The dependency isn't automatically discovered.
Requires:       perl(Net::SSL)

# Need >= 0.8.1 for rpc fix talking to RHEL 5 libvirt
Requires:       libvirt >= 0.8.1

# For GuestOS transfer image
Requires:       /usr/bin/mkisofs

%description
virt-v2v is a tool for converting and importing virtual machines to
libvirt-managed KVM, or Red Hat Enterprise Virtualization. It can import a
variety of guest operating systems from libvirt-managed hosts and VMware ESX.


%prep
%setup -q -n %{name}-v%{version}

%build
%{__perl} Build.PL
./Build

# Perl doesn't need debuginfo
%define debug_package %{nil}

%install
rm -rf $RPM_BUILD_ROOT
./Build install \
    --destdir $RPM_BUILD_ROOT \
    --installdirs vendor \
    --install_path locale=%{_datadir}/locale \
    --install_path confdoc=%{_mandir}/man5

# Create lib directory, used for holding software to be installed in guests
statedir=$RPM_BUILD_ROOT%{_localstatedir}/lib/virt-v2v
mkdir -p $statedir/software

mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}
cp v2v/virt-v2v.conf $RPM_BUILD_ROOT%{_sysconfdir}/

%find_lang %{name}

# Not clear why this is being created as there is nothing arch-specific in
# virt-v2v. It isn't packaged, though, so we need to delete it.
find $RPM_BUILD_ROOT/%{perl_archlib} -name .packlist -type f | xargs rm


%check
./Build test


%clean
rm -rf $RPM_BUILD_ROOT


%files -f %{name}.lang
%defattr(-,root,root,-)

%doc TODO.txt
%doc META.yml
%doc ChangeLog
%doc COPYING COPYING.LIB

# For noarch packages: vendorlib
%{perl_vendorlib}/*

# Man pages
%{_mandir}/man1/*.1*
%{_mandir}/man3/*.3*
%{_mandir}/man5/*.5*

# Executables
%attr(0755,root,root) %{_bindir}/*

%dir %{_localstatedir}/lib/virt-v2v

%config(noreplace) %{_sysconfdir}/virt-v2v.conf
%config(noreplace) %{_localstatedir}/lib/virt-v2v/software


%changelog
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.7.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Thu Nov  4 2010 Matthew Booth <mbooth@redhat.com> - 0.7.0-1
- Update to release 0.7.0

* Thu Jul  1 2010 Matthew Booth <mbooth@redhat.com> - 0.6.1-1
- Only build virt-v2v on architectures where libguestfs is available

* Mon Jun 21 2010 Matthew Booth <mbooth@redhat.com> - 0.6.1-0
- Update to release 0.6.1
- Disable building of debuginfo

* Mon Feb 22 2010 Matthew Booth <mbooth@redhat.com> - 0.4.0-1
- Update to release 0.4.0
- Change dependency on genisofs to mkisofs
- Update libguestfs dependency to 1.0.84
- Add perl module dependencies: LWP::UserAgent, Net::HTTPS, Net::SSL, Net::URI
- Remove perl module dependency: Config::Tiny
- Add explicit build dependency on perl
- Add patch: virt-v2v-0.4.0-remove-fr.patch
- Add patch: virt-v2v-0.4.0-exechelper-cleanup.patch
- Add patch: virt-v2v-0.4.0-exechelper-tmpfile.patch

* Mon Dec  7 2009 Stepan Kasal <skasal@redhat.com> - 0.3.2-2
- rebuild against perl 5.10.1

* Mon Nov 9 2009 Matthew Booth <mbooth@redhat.com> - 0.3.2-1
- Update to release 0.3.2
- Add BuildRequires gettext

* Mon Nov 9 2009 Matthew Booth <mbooth@redhat.com> - 0.3.0-1
- Update to release 0.3.0

* Tue Sep 15 2009 Matthew Booth <mbooth@redhat.com> - 0.2.0-1
- Update to release 0.2.0

* Tue Sep  4 2009 Matthew Booth <mbooth@redhat.com> - 0.1.0-1
- Initial specfile