Blame SPECS/libguestfs-winsupport.spec

446720
%global         ntfs_version 2017.3.23
446720
%global         compression_version 1.0
446720
446720
# debuginfo makes no sense for this package, so disable it
446720
%global         debug_package %{nil}
446720
446720
Name:           libguestfs-winsupport
446720
Version:        8.2
446720
Release:        1%{?dist}
446720
Summary:        Add support for Windows guests to virt-v2v and virt-p2v
446720
446720
URL:            http://www.ntfs-3g.org/
446720
# and URL:      https://github.com/ebiggers/ntfs-3g-system-compression
446720
License:        GPLv2+
446720
446720
# This package shouldn't be installed without installing the base
446720
# libguestfs package.
446720
Requires:       libguestfs >= 1:1.38.2
446720
446720
# Source and patches for ntfs-3g and ntfs-3g-system-compression.
446720
Source0:        http://tuxera.com/opensource/ntfs-3g_ntfsprogs-%{ntfs_version}.tgz
446720
Source1:        https://github.com/ebiggers/ntfs-3g-system-compression/archive/v%{version}/ntfs-3g-system-compression-%{compression_version}.tar.gz
446720
446720
Patch0:         ntfs-3g_ntfsprogs-2011.10.9-RC-ntfsck-unsupported-return-0.patch
446720
Patch1:         check-mftmirr.patch
446720
Patch2:         ntfs-3g-big-sectors.patch
446720
# Fix for ntfsclone crash.
446720
# Discussed with upstream developer but not upstream yet, see:
446720
# https://bugzilla.redhat.com/show_bug.cgi?id=1601146#c4
446720
Patch3:         ntfsclone-full-clusters-bz1601146.patch
446720
# CVE-2019-9755 (https://bugzilla.redhat.com/show_bug.cgi?id=1698502)
446720
Patch4:         0001-Fixed-reporting-an-error-when-failed-to-build-the-mo.patch
446720
446720
BuildRequires:  gcc
446720
BuildRequires:  libtool, libattr-devel
446720
BuildRequires:  libconfig-devel, libgcrypt-devel, gnutls-devel, libuuid-devel
446720
BuildRequires:  autoconf, automake, libtool, fuse-devel
446720
446720
446720
%description
446720
This optional package adds support for Windows guests (NTFS) to the
446720
virt-v2v and virt-p2v programs.
446720
446720
This package also supports system compression ("Compact OS") using the
446720
plugin from https://github.com/ebiggers/ntfs-3g-system-compression
446720
446720
446720
%prep
446720
%setup -q -n ntfs-3g_ntfsprogs-%{ntfs_version}
446720
%setup -n ntfs-3g_ntfsprogs-%{ntfs_version} -T -D -a 1
446720
%patch0 -p1 -b .unsupported
446720
%patch1 -p0 -b .check-mftmirr
446720
%patch2 -p0 -b .big-sectors
446720
%patch3 -p0 -b .ntfsclone
446720
%patch4 -p1
446720
446720
446720
%build
446720
CFLAGS="$RPM_OPT_FLAGS -D_FILE_OFFSET_BITS=64"
446720
%configure \
446720
        --disable-static \
446720
        --disable-ldconfig \
446720
        --exec-prefix=/ \
446720
        --enable-posix-acls \
446720
        --enable-xattr-mappings \
446720
        --enable-crypto \
446720
        --enable-extras \
446720
        --enable-quarantined
446720
make %{?_smp_mflags} LIBTOOL=%{_bindir}/libtool
446720
446720
# Build ntfs-3g-system-compression plugin.
446720
pushd ntfs-3g-system-compression-%{compression_version}
446720
autoreconf -i
446720
# Trick the plugin into using the just-compiled ntfs-3g.
446720
cp ../libntfs-3g/libntfs-3g.pc .
446720
sed -i \
446720
    -e 's,^libdir=.*,libdir=../libntfs-3g,' \
446720
    -e 's,^includedir=.*,includedir=../include,' \
446720
    libntfs-3g.pc
446720
export PKG_CONFIG_PATH=.
446720
%configure
446720
%make_build
446720
popd
446720
446720
446720
%install
446720
# Build it into a destdir which is not the final buildroot.
446720
mkdir destdir
446720
make LIBTOOL=%{_bindir}/libtool DESTDIR=$(pwd)/destdir install
446720
rm -rf destdir/%{_libdir}/*.la
446720
rm -rf destdir/%{_libdir}/*.a
446720
446720
rm -rf destdir/%{_sbindir}/mount.ntfs-3g
446720
cp -a destdir/%{_bindir}/ntfs-3g destdir/%{_sbindir}/mount.ntfs-3g
446720
446720
# Actually make some symlinks for simplicity...
446720
# ... since we're obsoleting ntfsprogs-fuse
446720
pushd destdir/%{_bindir}
446720
ln -s ntfs-3g ntfsmount
446720
popd
446720
pushd destdir/%{_sbindir}
446720
ln -s mount.ntfs-3g mount.ntfs-fuse
446720
# And since there is no other package in Fedora that provides an ntfs 
446720
# mount...
446720
ln -s mount.ntfs-3g mount.ntfs
446720
# Need this for fsck to find it
446720
ln -s ../bin/ntfsck fsck.ntfs
446720
popd
446720
mv destdir/sbin/* destdir/%{_sbindir}
446720
rmdir destdir/sbin
446720
446720
# We get this on our own, thanks.
446720
rm -r destdir/%{_defaultdocdir}
446720
446720
# Remove development files.
446720
rm -r destdir/%{_includedir}
446720
rm -r destdir/%{_libdir}/pkgconfig
446720
446720
# Install ntfs-3g-system-compression plugin in the same place.
446720
pushd ntfs-3g-system-compression-%{compression_version}
446720
%make_install DESTDIR=$(pwd)/../destdir
446720
popd
446720
rm -rf destdir/%{_libdir}/ntfs-3g/*.la
446720
446720
# Take the destdir and put it into a tarball for the libguestfs appliance.
446720
mkdir -p %{buildroot}%{_libdir}/guestfs/supermin.d
446720
pushd destdir
446720
tar zvcf %{buildroot}%{_libdir}/guestfs/supermin.d/zz-winsupport.tar.gz .
446720
popd
446720
446720
446720
%files
446720
%doc AUTHORS ChangeLog COPYING CREDITS NEWS README
446720
446720
%{_libdir}/guestfs/supermin.d/zz-winsupport.tar.gz
446720
446720
446720
%changelog
446720
* Mon Apr 27 2020 Danilo C. L. de Paula <ddepaula@redhat.com> - 8.2
446720
- Resolves: bz#1810193
446720
  (Upgrade components in virt:rhel module:stream for RHEL-8.3 release)
446720
446720
* Fri Jun 28 2019 Danilo de Paula <ddepaula@redhat.com> - 8.0-4
446720
- Rebuild all virt packages to fix RHEL's upgrade path
446720
- Resolves: rhbz#1695587
446720
  (Ensure modular RPM upgrade path)
446720
446720
* Wed Apr 10 2019 Richard W.M. Jones <rjones@redhat.com> - 8.0-3
446720
- Fix for CVE-2019-9755
446720
  (heap-based buffer overflow leads to local root privilege escalation)
446720
  resolves: rhbz#1698503
446720
446720
* Mon Jul 16 2018 Richard W.M. Jones <rjones@redhat.com> - 8.0-2
446720
- Fix for ntfsclone crash (RHBZ#1601146).
446720
446720
* Wed Jul 11 2018 Richard W.M. Jones <rjones@redhat.com> - 8.0-1
446720
- Rebase to 2017.3.23.
446720
- Remove patches which are now upstream.
446720
- Resynch with Fedora package.
446720
- Enable all architectures for RHEL 8.
446720
446720
* Wed Feb 22 2017 Richard W.M. Jones <rjones@redhat.com> - 7.2-2
446720
- Fix for handling guest filenames with invalid or incomplete
446720
  multibyte or wide characters
446720
  resolves: rhbz#1301593
446720
446720
* Tue Jul 07 2015 Richard W.M. Jones <rjones@redhat.com> - 7.2-1
446720
- Rebase and rebuild for RHEL 7.2
446720
  resolves: rhbz#1240278
446720
446720
* Tue Jun 30 2015 Richard W.M. Jones <rjones@redhat.com> - 7.1-6
446720
- Bump version and rebuild.
446720
  related: rhbz#1221583
446720
446720
* Fri May 15 2015 Richard W.M. Jones <rjones@redhat.com> - 7.1-5
446720
- Enable aarch64 architecture.
446720
  resolves: rhbz#1221583
446720
446720
* Thu Aug 28 2014 Richard W.M. Jones <rjones@redhat.com> - 7.1-4
446720
- Enable debuginfo support and stripping.
446720
  resolves: rhbz#1100319
446720
446720
* Thu Aug 28 2014 Richard W.M. Jones <rjones@redhat.com> - 7.1-3
446720
- Add patches from Fedora package which add fstrim support.
446720
  resolves: rhbz#1100319
446720
446720
* Mon Jul 21 2014 Richard W.M. Jones <rjones@redhat.com> - 7.1-2
446720
- New package for RHEL 7.1
446720
- Rebase to ntfs-3g 2014.2.15
446720
  resolves: rhbz#1100319
446720
- Change the package so it works with supermin5.
446720
- Remove dependency on external FUSE.
446720
446720
* Wed Apr  3 2013 Richard W.M. Jones <rjones@redhat.com> - 7.0-2
446720
- Resync against Rawhide package (ntfs-3g 2013.1.13).
446720
- Drop HAL file since HAL is dead.
446720
  resolves: rhbz#819939
446720
446720
* Thu Dec 20 2012 Richard W.M. Jones <rjones@redhat.com> - 7.0-1
446720
- New package for RHEL 7
446720
  resolves: rhbz#819939
446720
- Resync against Rawhide package.
446720
446720
* Mon Mar 28 2011 Richard W.M. Jones <rjones@redhat.com> - 1.0-7
446720
- Disable debuginfo package.
446720
  resolves: RHBZ#691555.
446720
446720
* Tue Mar  8 2011 Richard W.M. Jones <rjones@redhat.com> - 1.0-6
446720
- Require libguestfs 1.7.17 (newer version in RHEL 6.1).
446720
- Require febootstrap-supermin-helper instead of febootstrap
446720
  resolves: RHBZ#670299.
446720
446720
* Thu Jul  1 2010 Richard W.M. Jones <rjones@redhat.com> - 1.0-5
446720
- Make sure intermediate lib* directories are created in hostfiles (RHBZ#603429)
446720
446720
* Thu Jun  3 2010 Richard W.M. Jones <rjones@redhat.com> - 1.0-4
446720
- Requires fuse-libs (RHBZ#599300).
446720
446720
* Fri May 21 2010 Richard W.M. Jones <rjones@redhat.com> - 1.0-3
446720
- ExclusiveArch x86_64.
446720
446720
* Tue May 18 2010 Richard W.M. Jones <rjones@redhat.com> - 1.0-2
446720
- Package Windows support for libguestfs.