Blame SPECS/libguestfs-winsupport.spec

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