New package for RHEL 7.1

- Rebase to ntfs-3g 2014.2.15
  resolves: rhbz#1100319
- Change the package so it works with supermin5.
- Remove dependency on external FUSE.
This commit is contained in:
Richard W.M. Jones 2014-07-21 21:05:41 +01:00
parent b98a1ed2c3
commit 289bb11a76
2 changed files with 81 additions and 72 deletions

View File

@ -1,36 +1,32 @@
%global debug_package %{nil}
%global ntfs_version 2013.1.13
%global ntfs_version 2014.2.15
Name: libguestfs-winsupport
Version: 7.0
Version: 7.1
Release: 2%{?dist}
Summary: Add support for Windows guests to libguestfs
URL: http://www.ntfs-3g.org/
License: GPLv2+
ExclusiveArch: x86_64
# This package shouldn't be installed without installing the base
# libguestfs package.
Requires: libguestfs >= 1:1.20.0
Requires: libguestfs >= 1:1.27.19
# Needs fuse-libs (RHBZ#599300).
Requires: fuse-libs
# Built for supermin 5. This will not work with older supermin.
BuildRequires: supermin5
Requires: supermin5
# Source and patches for ntfs. Try to keep this in step with Fedora.
Source0: http://tuxera.com/opensource/ntfs-3g_ntfsprogs-%{ntfs_version}.tgz
Patch0: ntfs-3g_ntfsprogs-2011.10.9-RC-ntfsck-unsupported-return-0.patch
BuildRequires: fuse-devel
Requires: fuse
BuildRequires: libtool, libattr-devel
BuildRequires: libconfig-devel, libgcrypt-devel, gnutls-devel, libuuid-devel
# Required by binaries in the supermin appliance.
Requires: libgcrypt, gnutls, p11-kit, libtasn1, zlib
%description
This optional package adds support for Windows guests (NTFS) to the
@ -42,6 +38,9 @@ To enable Windows support, simply install this package.
To disable Windows support, uninstall this package.
The package contains NTFS FUSE filesystem support from
ntfs-3g %{ntfs_3g_version}.
%prep
%setup -q -n ntfs-3g_ntfsprogs-%{ntfs_version}
@ -53,42 +52,26 @@ CFLAGS="$RPM_OPT_FLAGS -D_FILE_OFFSET_BITS=64"
%configure \
--disable-static \
--disable-ldconfig \
--with-fuse=external \
--exec-prefix=/ \
--enable-crypto \
--enable-extras
make %{?_smp_mflags} LIBTOOL=%{_bindir}/libtool
# Create a README file.
cat <<'EOF' > README
This optional package adds support for Windows guests (NTFS) to the
base libguestfs Red Hat Enterprise Linux (RHEL) package. This is
useful for examining Windows virtual machines running on RHEL, and for
performing V2V of Windows guests from another hypervisor to RHEL.
The package contains NTFS FUSE filesystem support from
ntfs-3g %{ntfs_3g_version}.
EOF
%install
mkdir ntfs
export DESTDIR=$(pwd)/ntfs
make LIBTOOL=%{_bindir}/libtool DESTDIR=%{buildroot} install
rm -rf %{buildroot}%{_libdir}/*.la
rm -rf %{buildroot}%{_libdir}/*.a
#----- Standard package install rule, but installing into ntfs/ subdir.
make LIBTOOL=%{_bindir}/libtool install
rm -rf $DESTDIR%{_libdir}/*.la
rm -rf $DESTDIR%{_libdir}/*.a
rm -rf $DESTDIR%{_sbindir}/mount.ntfs-3g
cp -a $DESTDIR%{_bindir}/ntfs-3g $DESTDIR%{_sbindir}/mount.ntfs-3g
rm -rf %{buildroot}/%{_sbindir}/mount.ntfs-3g
cp -a %{buildroot}/%{_bindir}/ntfs-3g %{buildroot}/%{_sbindir}/mount.ntfs-3g
# Actually make some symlinks for simplicity...
# ... since we're obsoleting ntfsprogs-fuse
pushd $DESTDIR%{_bindir}
pushd %{buildroot}/%{_bindir}
ln -s ntfs-3g ntfsmount
popd
pushd $DESTDIR%{_sbindir}
pushd %{buildroot}/%{_sbindir}
ln -s mount.ntfs-3g mount.ntfs-fuse
# And since there is no other package in Fedora that provides an ntfs
# mount...
@ -96,54 +79,80 @@ ln -s mount.ntfs-3g mount.ntfs
# Need this for fsck to find it
ln -s ../bin/ntfsck fsck.ntfs
popd
mv $DESTDIR/sbin/* $DESTDIR%{_sbindir}
rmdir $DESTDIR/sbin
mv %{buildroot}/sbin/* %{buildroot}/%{_sbindir}
rmdir %{buildroot}/sbin
# We get this on our own, thanks.
rm -rf $DESTDIR%{_defaultdocdir}/%{name}/README
rm %{buildroot}%{_defaultdocdir}/ntfs-3g/README
#----- End of standard package install rule.
# Add this package to the libguestfs appliance.
mkdir -p %{buildroot}%{_libdir}/guestfs/supermin.d
echo libguestfs-winsupport > %{buildroot}%{_libdir}/guestfs/supermin.d/zz-winsupport
# Copy the files we need to a static supermin appliance.
rm -f files
echo . >> files
echo usr >> files
echo usr/bin >> files
echo usr/lib64 >> files
echo usr/sbin >> files
pushd ntfs
find | egrep '/s?bin/|/lib(64)/' >> ../files
cpio --quiet -o -H newc < ../files > ../ntfs.img
popd
# Supporting hostfiles.
cat <<'EOF' > ntfs.hostfiles
.
./usr
.%{_libdir}
.%{_libdir}/libfuse.so.*
.%{_libdir}/libgcrypt.so.*
.%{_libdir}/libgnutls.so.*
.%{_libdir}/libgpg-error.so.*
.%{_libdir}/libp11-kit.so.*
.%{_libdir}/libtasn1.so.*
.%{_libdir}/libz.so.*
./lib64
./lib64/libfuse.so.*
EOF
mkdir -p $RPM_BUILD_ROOT%{_libdir}/guestfs/supermin.d
install -m 0644 ntfs.img $RPM_BUILD_ROOT%{_libdir}/guestfs/supermin.d/
install -m 0644 ntfs.hostfiles $RPM_BUILD_ROOT%{_libdir}/guestfs/supermin.d/
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc COPYING README
%{_libdir}/guestfs/supermin.d/ntfs.img
%{_libdir}/guestfs/supermin.d/ntfs.hostfiles
%doc AUTHORS ChangeLog COPYING CREDITS NEWS README
# From ntfs-3g package:
%{_sbindir}/mount.ntfs
%{_sbindir}/mount.ntfs-3g
%{_sbindir}/mount.ntfs-fuse
%{_sbindir}/mount.lowntfs-3g
%{_bindir}/ntfs-3g
%{_bindir}/ntfsmount
%{_bindir}/ntfs-3g.probe
%{_bindir}/ntfs-3g.secaudit
%{_bindir}/ntfs-3g.usermap
%{_bindir}/lowntfs-3g
%{_libdir}/libntfs-3g.so.*
# From -devel subpackage:
%{_includedir}/ntfs-3g/
%{_libdir}/libntfs-3g.so
%{_libdir}/pkgconfig/libntfs-3g.pc
# From ntfsprogs package:
%{_bindir}/ntfscat
%{_bindir}/ntfscluster
%{_bindir}/ntfscmp
%{_bindir}/ntfsfix
%{_bindir}/ntfsinfo
%{_bindir}/ntfsls
%{_bindir}/ntfsck
%{_bindir}/ntfsdecrypt
%{_bindir}/ntfsdump_logfile
%{_bindir}/ntfsmftalloc
%{_bindir}/ntfsmove
%{_bindir}/ntfstruncate
%{_bindir}/ntfswipe
%{_sbindir}/fsck.ntfs
%{_sbindir}/mkfs.ntfs
%{_sbindir}/mkntfs
%{_sbindir}/ntfsclone
%{_sbindir}/ntfscp
%{_sbindir}/ntfslabel
%{_sbindir}/ntfsresize
%{_sbindir}/ntfsundelete
# Documentation.
%{_mandir}/man8/*.8*
# For libguestfs appliance:
%{_libdir}/guestfs/supermin.d/zz-winsupport
%changelog
* Mon Jul 21 2014 Richard W.M. Jones <rjones@redhat.com> - 7.1-2
- New package for RHEL 7.1
- Rebase to ntfs-3g 2014.2.15
resolves: rhbz#1100319
- Change the package so it works with supermin5.
- Remove dependency on external FUSE.
* Wed Apr 3 2013 Richard W.M. Jones <rjones@redhat.com> - 7.0-2
- Resync against Rawhide package (ntfs-3g 2013.1.13).
- Drop HAL file since HAL is dead.

View File

@ -1 +1 @@
2d6fb47ddf62b51733227126fe9227fe ntfs-3g_ntfsprogs-2013.1.13.tgz
f11d563816249d730a00498983485f3a ntfs-3g_ntfsprogs-2014.2.15.tgz