SHA256
1
0
forked from pool/libguestfs
libguestfs/libguestfs.spec
Cédric Bosdonnat 308f6baa27 Accepting request 514065 from home:cbosdonnat:branches:Virtualization
- Fix python binding package
  * Replace python-libguestfs by python[23]-libguestfs packages
  * Add egg-info to python[23]-libguestfs package

OBS-URL: https://build.opensuse.org/request/show/514065
OBS-URL: https://build.opensuse.org/package/show/Virtualization/libguestfs?expand=0&rev=399
2017-08-02 16:04:59 +00:00

809 lines
23 KiB
RPMSpec

#
# spec file for package libguestfs
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2011 Michal Hrusecky <mhrusecky@novell.com>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# needsbinariesforbuild
Version: 1.36.5
Release: 0
%{ocaml_preserve_bytecode}
%bcond_without ocaml_bindings
%bcond_without lua_bindings
%bcond_without python_bindings
%bcond_without perl_bindings
%bcond_without hivex
%bcond_without zerofree
%bcond_without fuse
%bcond_without ruby_bindings
%bcond_without p2v
%bcond_without bash_completion
# The following defines are overridden in the individual subpackages
%define _configure_fuse --disable-fuse
%define _configure_lua --disable-lua
%define _configure_ocaml --disable-ocaml
%define _configure_perl --disable-perl
%define _configure_python --disable-python
%define _configure_ruby --disable-ruby
%define udevrulesdir /usr/lib/udev/rules.d
#
# use 'env LIBGUESTFS_HV=/path/to/kvm libguestfs-test-tool' to verify
%define kvm_binary /bin/false
%ifarch aarch64
%define kvm_binary /usr/bin/qemu-system-aarch64
%endif
%ifarch ppc64le
%define kvm_binary /usr/bin/qemu-system-ppc64
%endif
%ifarch ppc64
%define kvm_binary /usr/bin/qemu-system-ppc64
%endif
%ifarch s390x
%define kvm_binary /usr/bin/qemu-system-s390x
%endif
%ifarch x86_64
%define kvm_binary /usr/bin/qemu-system-x86_64
%endif
#
%define guestfs_docdir %{_defaultdocdir}/%{name}
#
Name: libguestfs
%if "%{?_ignore_exclusive_arch}" == ""
ExclusiveArch: x86_64 ppc64 ppc64le s390x aarch64
%endif
BuildRequires: aaa_base
BuildRequires: attr-devel
BuildRequires: augeas-devel >= 1.0.0
BuildRequires: autoconf
BuildRequires: automake
%if %{with bash_completion}
BuildRequires: bash-completion >= 2.0
%if 0%{?suse_version} >= 1330
BuildRequires: bash-completion-devel >= 2.0
%endif
%endif
BuildRequires: bison
BuildRequires: fdupes
BuildRequires: file-devel
BuildRequires: flex
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: gperf
BuildRequires: libacl-devel
BuildRequires: libcap-devel
BuildRequires: libconfig-devel
BuildRequires: libtool
BuildRequires: libvirt-devel >= 0.10.2
BuildRequires: libxml2-devel
BuildRequires: ncurses-devel
%if %{with perl_bindings}
BuildRequires: perl(Module::Build)
%endif
BuildRequires: createrepo
BuildRequires: db48-utils
BuildRequires: dhcp-client
BuildRequires: pcre-devel
BuildRequires: pkg-config
BuildRequires: qemu-tools
BuildRequires: readline-devel
BuildRequires: supermin >= 5.1.6
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(yajl) >= 2.0.4
# Required to build tools, its independent from bindings
BuildRequires: glib2-devel
BuildRequires: ocaml
BuildRequires: ocaml-findlib
#
BuildRequires: ocaml-rpm-macros >= 4.03
%if %{with ocaml_bindings}
%define _configure_ocaml --enable-ocaml
%endif
#
%if %{with fuse}
BuildRequires: fuse-devel
%define _configure_fuse --enable-fuse
%endif
#
%if %{with hivex}
BuildRequires: glibc-locale
BuildRequires: hivex
BuildRequires: hivex-devel
%endif
#
%if %{with p2v}
BuildRequires: gtk2-devel
%endif
#
Url: http://libguestfs.org/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Summary: Compatibility package for guestfs-tools
License: GPL-2.0
Group: System/Filesystems
Patch0: 0000-hotfix.patch
Patch100: appliance.patch
Source0: http://download.libguestfs.org/1.36-stable/libguestfs-%{version}.tar.gz
Source1: libguestfs.rpmlintrc
Source100: mount-rootfs-and-chroot.sh
Source789653: Pod-Simple-3.23.tar.xz
#
Source10001: libguestfs.test.simple.run-libugestfs-test-tool.sh
Source10002: libguestfs.test.simple.create-opensuse-guest.sh
Source10003: libguestfs.test.simple.create-opensuse-guest-crypt-on-lvm.sh
Source10004: libguestfs.test.simple.create-sles12-guest.sh
Source10005: libguestfs.test.simple.create-sles12-guest-crypt-on-lvm.sh
#
Requires: guestfs-tools
Requires: virt-v2v = %{version}
%description
libguestfs is a set of tools for accessing and modifying virtual machine (VM)
disk images. You can use this for viewing and editing files inside guests,
scripting changes to VMs, monitoring disk used/free statistics, P2V, V2V,
performing partial backups, cloning VMs, and much else besides.
libguestfs can access nearly any type of filesystem including: all known types
of Linux filesystem (ext2/3/4, XFS, btrfs etc), any Windows filesystem (VFAT
and NTFS), any Mac OS X and BSD filesystems, LVM2 volume management, MBR and
GPT disk partitions, raw disks, qcow2, VirtualBox VDI, VMWare VMDK, CD and DVD
ISOs, SD cards, and dozens more. libguestfs doesn't need root permissions.
All this functionality is available through a convenient shell called
guestfish, or use virt-rescue to get a rescue shell for fixing unbootable
virtual machines.
%package -n guestfs-tools
Summary: Tools for accessing and modifying virtual machine disk images
License: GPL-2.0
Group: System/Filesystems
Provides: %{name} = %{version}
Obsoletes: %{name} < %{version}
Requires: libguestfs0 = %{version}
Requires: python-evtx
%if %{with bash_completion}
Recommends: bash-completion >= 2.0
%endif
%if %{with perl_bindings}
Requires: perl(Data::Dumper)
Requires: perl(File::Basename)
Requires: perl(File::Temp)
Requires: perl(Getopt::Long)
Requires: perl(Locale::TextDomain)
Requires: perl(Pod::Usage)
Requires: perl(String::ShellQuote)
Requires: perl(Sys::Guestfs)
%{perl_requires}
%if %{with hivex}
Requires: perl(Win::Hivex)
Requires: perl(Win::Hivex::Regedit)
%endif
%endif
Requires: guestfs-data >= %{version}
%if %{with fuse}
Requires: fuse
%endif
# For virt-builder
Requires: curl
Requires: gpg2
Requires: xz
Conflicts: libguestfs0 < %{version}
%description -n guestfs-tools
libguestfs is a set of tools for accessing and modifying virtual machine (VM)
disk images. You can use this for viewing and editing files inside guests,
scripting changes to VMs, monitoring disk used/free statistics, P2V, V2V,
performing partial backups, cloning VMs, and much else besides.
libguestfs can access nearly any type of filesystem including: all known types
of Linux filesystem (ext2/3/4, XFS, btrfs etc), any Windows filesystem (VFAT
and NTFS), any Mac OS X and BSD filesystems, LVM2 volume management, MBR and
GPT disk partitions, raw disks, qcow2, VirtualBox VDI, VMWare VMDK, CD and DVD
ISOs, SD cards, and dozens more. libguestfs doesn't need root permissions.
All this functionality is available through a convenient shell called
guestfish, or use virt-rescue to get a rescue shell for fixing unbootable
virtual machines.
%package -n guestfsd
Summary: Daemon for the libguestfs appliance
License: GPL-2.0
Group: System/Filesystems
Conflicts: libaugeas0 < 1.0.0
%description -n guestfsd
guestfsd runs within the libguestfs appliance. It receives commands from the host
and performs the requested action by calling the helper binaries.
This package is only required for building the appliance.
#
%if %{with ocaml_bindings}
%package -n ocaml-libguestfs
Summary: Provides OCaml support for libguestfs
#
License: GPL-2.0
Group: System/Filesystems
%description -n ocaml-libguestfs
Allows OCaml scripts to directly use libguestfs.
%package -n ocaml-libguestfs-devel
Summary: Provides OCaml support for libguestfs
License: GPL-2.0
Group: Development/Libraries/Other
%description -n ocaml-libguestfs-devel
Allows OCaml scripts to directly use libguestfs.
%endif
#
%if %{with perl_bindings}
%package -n perl-Sys-Guestfs
Summary: Provides Perl support for libguestfs
License: GPL-2.0
Group: System/Filesystems
BuildRequires: perl
BuildRequires: perl(Data::Dumper)
BuildRequires: perl(Getopt::Long)
BuildRequires: perl(Locale::TextDomain)
BuildRequires: perl(Pod::Usage)
BuildRequires: perl(String::ShellQuote)
BuildRequires: perl(Sys::Virt)
%if %{with hivex}
BuildRequires: perl(Win::Hivex)
BuildRequires: perl(Win::Hivex::Regedit)
%endif
%define _configure_perl --enable-perl
#
Provides: libguestfs-perl = %{version}
Obsoletes: libguestfs-perl < %{version}
Requires: guestfs-data >= %{version}
Requires: perl(File::Temp)
Requires: perl(Locale::TextDomain)
%perl_requires
%description -n perl-Sys-Guestfs
Allows Perl scripts to directly use libguestfs.
%endif
#
%if %{with lua_bindings}
%package -n lua-libguestfs
Summary: Provides Lua support for libguestfs
License: GPL-2.0
Group: System/Filesystems
BuildRequires: lua-devel
Requires: guestfs-data >= %{version}
%define _configure_lua --enable-lua
#
%description -n lua-libguestfs
Allows lua scripts to directly use libguestfs.
%endif
#
%if %{with python_bindings}
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%package -n python2-libguestfs
Summary: Provides Python 2 support for libguestfs
License: GPL-2.0
Group: System/Filesystems
BuildRequires: %{python_module devel}
BuildRequires: %{python_module setuptools}
BuildRequires: python
BuildRequires: python-rpm-macros
%define _configure_python --enable-python
#
Obsoletes: libguestfs-python < %{version}
Obsoletes: python-libguestfs < %{version}
Provides: python-libguestfs = %{version}
Requires: guestfs-data >= %{version}
%description -n python2-libguestfs
Allows Python 2 scripts to directly use libguestfs.
%package -n python3-libguestfs
Summary: Provides Python 3 support for libguestfs
License: GPL-2.0
Group: System/Filesystems
%define _configure_python --enable-python
#
Obsoletes: libguestfs-python < %{version}
Obsoletes: python-libguestfs < %{version}
Provides: python-libguestfs = %{version}
Requires: guestfs-data >= %{version}
%description -n python3-libguestfs
Allows Python 3 scripts to directly use libguestfs.
%endif
#
%if %{with ruby_bindings}
%package -n rubygem-libguestfs
Summary: Ruby bindings for libguestfs
License: GPL-2.0
Group: System/Filesystems
BuildRequires: ruby
BuildRequires: ruby-devel
BuildRequires: rubygem-rake
Requires: guestfs-data >= %{version}
%define _configure_ruby --enable-ruby
#
%description -n rubygem-libguestfs
Allows Ruby scripts to directly use libguestfs.
%endif
%package test
Summary: Testcases for libguestfs
License: GPL-2.0
Group: System/Filesystems
Requires: %{name}
%description test
This package contains testcases to verify libguestfs functionality.
%package -n guestfs-data
BuildRequires: augeas-lenses
BuildRequires: bc
BuildRequires: btrfsprogs
BuildRequires: bzip2
BuildRequires: cdrkit-cdrtools-compat
BuildRequires: coreutils
BuildRequires: cpio
BuildRequires: cryptsetup
BuildRequires: diffutils
BuildRequires: dosfstools
BuildRequires: e2fsprogs
BuildRequires: file
BuildRequires: findutils
BuildRequires: gawk
BuildRequires: genisoimage
BuildRequires: glibc
BuildRequires: gptfdisk
BuildRequires: grep
BuildRequires: gzip
BuildRequires: initviocons
BuildRequires: iproute2
BuildRequires: jfsutils
BuildRequires: lvm2
BuildRequires: mdadm
BuildRequires: module-init-tools
BuildRequires: ncurses-utils
BuildRequires: nfs-client
BuildRequires: ntfs-3g
BuildRequires: ntfsprogs
BuildRequires: pam-config
BuildRequires: parted
BuildRequires: pciutils
BuildRequires: pciutils-ids
BuildRequires: psmisc
BuildRequires: reiserfs
BuildRequires: rsync
BuildRequires: sg3_utils
BuildRequires: strace
%ifarch %ix86 x86_64
BuildRequires: syslinux
%endif
BuildRequires: systemd
BuildRequires: systemd-sysvinit
BuildRequires: tar
BuildRequires: terminfo-base
BuildRequires: tunctl
BuildRequires: udev
BuildRequires: util-linux
BuildRequires: util-linux-lang
BuildRequires: xfsprogs
BuildRequires: xz
%if %{with zerofree}
BuildRequires: zerofree
%endif
BuildRequires: ldmtool
# Needed by guestfsd which is burried in the appliance
#
# The problem with this design is that rpm can't find the
# library dependencies from the guestfsd hidden in the
# daemon.tar.gz tarball.Supermin will compute an appliance
# at runtime based on the packages it will find on the host.
# Thus if there is no libaugeas, libhivex, etc on the host,
# the appliance will fail to start the guestfsd.
Requires: augeas
Requires: augeas-lenses
Requires: libaugeas0
Requires: libcap2
Requires: libhivex0
Requires: libpcre1
# For core disk features
Requires: qemu-tools
# Optional packages that could be picked up by supermin
Recommends: btrfsprogs
Recommends: dosfstools
Recommends: e2fsprogs
Recommends: cryptsetup
Recommends: gptfdisk
Recommends: jfsutils
Recommends: reiserfs
Recommends: xfsprogs
Recommends: mdadm
Recommends: parted
Recommends: zerofree
Recommends: genisoimage
Recommends: ldmtool
Summary: Virtual machine needed for libguestfs
License: GPL-2.0
Group: System/Filesystems
Provides: libguestfs-data = %{version}
Obsoletes: libguestfs-data < %{version}
%description -n guestfs-data
libguestfs needs for it's run a virtual machine image.
This package provides such an image, an initrd and a kernel.
%package devel
Summary: Development files for libguestfs
License: GPL-2.0
Group: Development/Libraries/Other
Requires: libguestfs0 = %{version}
%description devel
Development files for libguestfs.
libguestfs is a set of tools for accessing and modifying virtual machine (VM)
disk images. You can use this for viewing and editing files inside guests,
scripting changes to VMs, monitoring disk used/free statistics, P2V, V2V,
performing partial backups, cloning VMs, and much else besides.
libguestfs can access nearly any type of filesystem including: all known types
of Linux filesystem (ext2/3/4, XFS, btrfs etc), any Windows filesystem (VFAT
and NTFS), any Mac OS X and BSD filesystems, LVM2 volume management, MBR and
GPT disk partitions, raw disks, qcow2, VirtualBox VDI, VMWare VMDK, CD and DVD
ISOs, SD cards, and dozens more. libguestfs doesn't need root permissions.
All this functionality is available through a convenient shell called
guestfish, or use virt-rescue to get a rescue shell for fixing unbootable
virtual machines.
%package -n libguestfs0
Summary: Runtime library of libguestfs
License: LGPL-2.1
Group: System/Filesystems
Requires: %{kvm_binary}
Requires: qemu >= 2.0
Requires: qemu-tools
Requires: supermin >= 5.1.6
%if %suse_version == 1315
%if 0%{?is_opensuse} == 0
Recommends: guestfs-winsupport
%endif
%endif
%description -n libguestfs0
Library for libguestfs.
libguestfs is a set of tools for accessing and modifying virtual machine (VM)
disk images. You can use this for viewing and editing files inside guests,
scripting changes to VMs, monitoring disk used/free statistics, P2V, V2V,
performing partial backups, cloning VMs, and much else besides.
libguestfs can access nearly any type of filesystem including: all known types
of Linux filesystem (ext2/3/4, XFS, btrfs etc), any Windows filesystem (VFAT
and NTFS), any Mac OS X and BSD filesystems, LVM2 volume management, MBR and
GPT disk partitions, raw disks, qcow2, VirtualBox VDI, VMWare VMDK, CD and DVD
ISOs, SD cards, and dozens more. libguestfs doesn't need root permissions.
All this functionality is available through a convenient shell called
guestfish, or use virt-rescue to get a rescue shell for fixing unbootable
virtual machines.
%package -n virt-v2v
Summary: Convert a virtual machine to run on KVM
License: GPL-2.0
Group: System/Management
Requires: libguestfs0 = %{version}
Requires: qemu-block-ssh
# Conflicts with the old perl version
Conflicts: virt-v2v <= 0.9.1
%description -n virt-v2v
virt-v2v is a tool for converting and importing virtual machines to
libvirt-managed KVM. It can import a variety of guest operating systems
from libvirt-managed hosts.
%if %{with p2v}
%package -n virt-p2v
Summary: Convert a physical machine to run on KVM
License: GPL-2.0
Group: System/Management
Requires: gawk
Requires: virt-v2v = %{version}
%description -n virt-p2v
virt-p2v is a tool for converting physical machines into libvirt-managed KVM machines.
It can import a variety of guest operating systems from libvirt-managed hosts.
%endif
%prep
: _ignore_exclusive_arch '%{?_ignore_exclusive_arch}'
%setup -q -a 789653
%patch0 -p1
%patch100 -p1
%build
bison --version
# [Bug 789653] sles11 perl obsoletes perl-Pod-Simple unconditionally
export PERLLIB=`echo $PWD/Pod-Simple-*/lib`
# disable qemu test.
# If the package is built within kvm the configure test will fail because it starts kvm within kvm
# With QEMU in environment qemu and kvm packages are not needed at build time.
# With SUPERMIN and SUPERMIN_HELPER in environment, supermin package is not needed at build time.
export vmchannel_test=no
export QEMU="%{kvm_binary}"
export SUPERMIN=supermin
export SUPERMIN_HELPER=supermin-helper
# for configure macro below
CFLAGS="$RPM_OPT_FLAGS -Wno-unused"
CXXFLAGS="$RPM_OPT_FLAGS -Wno-unused"
autoreconf -fi
#
%configure \
--help || :
if python --version && ! pkg-config python
then
export PYTHON_LIBS="-lpython`python -c 'import distutils.sysconfig; print (distutils.sysconfig.get_python_version ());'`"
export PYTHON_CFLAGS="-I`python -c 'import distutils.sysconfig; print (distutils.sysconfig.get_python_inc ());'`"
export PYTHON_EXT_SUFFIX=.so
fi
#sed -i '1 s@^.*@#!/bin/sh -x@' configure
%configure \
--docdir=%{guestfs_docdir} \
--enable-daemon \
--enable-install-daemon \
--with-qemu=$QEMU \
--without-java \
--with-supermin-packager-config="$PWD/zypper.priv.conf --use-installed --verbose" \
--disable-haskell \
--disable-php \
%{_configure_fuse} \
%{_configure_lua} \
%{_configure_ocaml} \
%{_configure_perl} \
%{_configure_python} \
%{_configure_ruby} \
--disable-rpath \
--disable-static
#Workaround an autotools bug
make -j1 -C builder index-parse.c
# 'INSTALLDIRS' ensures that perl libs are installed in the vendor dir instead of the site dir
make \
INSTALLDIRS=vendor \
LD_RUN_PATH= \
%{?_smp_mflags}
%install
%makeinstall \
INSTALLDIRS=vendor \
udevrulesdir=%{udevrulesdir}
find $RPM_BUILD_ROOT -ls
mkdir -p $RPM_BUILD_ROOT%{_datadir}/guestfs
cp -avLt $RPM_BUILD_ROOT%{_datadir}/guestfs \
%{S:10005} \
%{S:10004} \
%{S:10003} \
%{S:10002} \
%{S:10001}
chmod 0755 $RPM_BUILD_ROOT%{_datadir}/guestfs/*
#remove ocaml bindings files if they are disable via rpm macro
%if !%{with ocaml_bindings}
rm -rfv $RPM_BUILD_ROOT%{_libdir}/ocaml
%endif
rm -rfv $RPM_BUILD_ROOT%{guestfs_docdir}
find $RPM_BUILD_ROOT -type f \( \
-name "virt-list-filesystems" -o -name "virt-list-filesystems.*" -o \
-name "virt-list-partitions" -o -name "virt-list-partitions.*" -o \
-name "virt-tar" -o -name "virt-tar.*" \
\) -print -delete
%if %{with perl_bindings}
# Delete empty perl bootstrap files
find $RPM_BUILD_ROOT -name "*.bs" -size 0c -print -delete
%perl_process_packlist
%perl_gen_filelist
# the macro above packages everything, here only the perl files are desrired
grep "%perl_vendorarch/" %{name}.files | tee t
mv t %{name}.files
%endif
%if %{with python_bindings}
pushd python
sed -i -e "s:libraries=:library_dirs=['$RPM_BUILD_ROOT/%{_libdir}'], libraries=:" setup.py
make stamp-extra-files
# Build needs libguestfs library to be installed
%python_build
%python_install
popd
%endif
#
find $RPM_BUILD_ROOT -name "*.la" -print -delete
rm -fv $RPM_BUILD_ROOT/%{_libdir}/*.a
#
touch %{name}.lang
%find_lang %{name}
%fdupes -s $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/tmp/etc/alternatives
pushd $RPM_BUILD_ROOT/tmp/etc/alternatives
ln -s /sbin/mount.ntfs-3g mount.ntfs
popd
pushd $RPM_BUILD_ROOT/tmp
tar czf $RPM_BUILD_ROOT/%{_libdir}/guestfs/supermin.d/zz-ntfs-symlink.tar.gz etc
popd
rm -rf $RPM_BUILD_ROOT/tmp
mkdir -p $RPM_BUILD_ROOT/tmp/usr/bin
cp %{S:100} $RPM_BUILD_ROOT/tmp/usr/bin
chmod a+x $RPM_BUILD_ROOT/tmp/usr/bin/*
pushd $RPM_BUILD_ROOT/tmp
tar czf $RPM_BUILD_ROOT/%{_libdir}/guestfs/supermin.d/zz-scripts.tar.gz usr
popd
rm -rf $RPM_BUILD_ROOT/tmp
%if %{with p2v}
# Remove the kickstart files from p2v package
rm $RPM_BUILD_ROOT/%{_datadir}/virt-p2v/p2v.ks.in
%endif
%clean
rm -rf $RPM_BUILD_ROOT
%post -n libguestfs0 -p /sbin/ldconfig
%postun -n libguestfs0 -p /sbin/ldconfig
%files test
%defattr(-,root,root)
%{_datadir}/guestfs
%files -n guestfs-data
%defattr(-,root,root)
%{_libdir}/guestfs
%if %{with ocaml_bindings}
%files -n ocaml-libguestfs
%defattr(-,root,root)
%dir %{_libdir}/ocaml
%dir %{_libdir}/ocaml/guestfs
%{_libdir}/ocaml/guestfs/META
%{_libdir}/ocaml/guestfs/*.cmi
%{_libdir}/ocaml/guestfs/*.cma
%{_libdir}/ocaml/stublibs
%files -n ocaml-libguestfs-devel
%defattr(-,root,root)
%dir %{_libdir}/ocaml
%dir %{_libdir}/ocaml/guestfs
%{_libdir}/ocaml/guestfs/*.a
%if %{ocaml_native_compiler}
%{_libdir}/ocaml/guestfs/*.cmx
%{_libdir}/ocaml/guestfs/*.cmxa
%endif
%{_libdir}/ocaml/guestfs/*.mli
%endif
#
%if %{with lua_bindings}
%files -n lua-libguestfs
%defattr(-,root,root)
%{_libdir}/lua
%endif
#
%if %{with perl_bindings}
%post -n perl-Sys-Guestfs -p /sbin/ldconfig
%postun -n perl-Sys-Guestfs -p /sbin/ldconfig
%files -n perl-Sys-Guestfs -f %{name}.files
%defattr(-,root,root)
%endif
#
%if %{with python_bindings}
%files -n python2-libguestfs
%defattr(-,root,root)
%{python2_sitearch}/*
%files -n python3-libguestfs
%defattr(-,root,root)
%{python3_sitearch}/*
%endif
#
%if %{with ruby_bindings}
%files -n rubygem-libguestfs
%defattr(-,root,root)
%{_libdir}/ruby
%endif
%files -n libguestfs0
%defattr(-,root,root)
%doc COPYING.LIB
%{_libdir}/*.so.*
%files devel
%defattr(-,root,root)
%{_libdir}/*.so
%{_libdir}/pkgconfig/*
%{_includedir}/guestfs.h
%{_includedir}/guestfs-gobject
%{_includedir}/guestfs-gobject.h
%{_datadir}/gtk-doc/html/guestfs
%{_mandir}/man3/*
%files -n guestfsd
%defattr(-,root,root)
%{udevrulesdir}
%{_sbindir}/guestfsd
%{_mandir}/man8/*
%files -n guestfs-tools -f %{name}.lang
%defattr(-,root,root)
%doc COPYING
%{_sbindir}/libguestfs-make-fixed-appliance
%{_bindir}/*
%exclude %{_bindir}/virt-v2v
%exclude %{_bindir}/virt-p2v-*
%config(noreplace) /etc/libguestfs-tools.conf
/etc/virt-builder
%dir /etc/xdg/virt-builder
%dir /etc/xdg/virt-builder/repos.d
%config /etc/xdg/virt-builder/repos.d/*
%if %{with bash_completion}
%{_datadir}/bash-completion
%exclude %{_datadir}/bash-completion/*/virt-v2v
%endif
%{_mandir}/man1/*
%exclude %{_mandir}/man1/virt-v2v.*
%exclude %{_mandir}/man1/virt-p2v*
%{_mandir}/man5/*
%files -n virt-v2v
%defattr(-,root,root)
%{_bindir}/virt-v2v
%{_datadir}/bash-completion/*/virt-v2v
%{_mandir}/man1/virt-v2v.*
%if %{with p2v}
%files -n virt-p2v
%defattr(-,root,root)
%{_libdir}/virt-p2v
%{_datadir}/virt-p2v
%{_bindir}/virt-p2v-make-kiwi
%{_bindir}/virt-p2v-make-disk
%{_mandir}/man1/virt-p2v-make-kiwi*
%{_mandir}/man1/virt-p2v-make-disk*
%endif
%changelog