%bcond_with externalfuse

Summary:        Linux NTFS userspace driver 
Summary(ja):    Linux NTFS ユーザ空間ドライバ
Name:           ntfs-3g
Version:        2022.5.17
Release:        1%{?_dist_release}
Group:          system
Vendor:         Project Vine
Distribution:   Vine Linux

License:        GPLv2+
URL:            https://www.tuxera.com/community/open-source-ntfs-3g/
Source0:        https://tuxera.com/opensource/ntfs-3g_ntfsprogs-%{version}.tgz
Patch0:         ntfs-3g_ntfsprogs-2011.10.9-RC-ntfsck-unsupported-return-0.patch

BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root

BuildRequires:  libtool
BuildRequires:  libattr-devel
BuildRequires:  libconfig-devel
BuildRequires:  libgcrypt-devel
BuildRequires:  gnutls-devel
BuildRequires:  libuuid-devel
%if %{with externalfuse}
BuildRequires:  fuse-devel
Requires:       fuse
%endif

%description
NTFS-3G is a stable, open source, GPL licensed, POSIX, read/write NTFS 
driver for Linux and many other operating systems. It provides safe 
handling of the Windows XP, Windows Server 2003, Windows 2000, Windows 
Vista, Windows Server 2008 and Windows 7 NTFS file systems. NTFS-3G can 
create, remove, rename, move files, directories, hard links, and streams; 
it can read and write normal and transparently compressed files, including 
streams and sparse files; it can handle special files like symbolic links, 
devices, and FIFOs, ACL, extended attributes; moreover it provides full 
file access right and ownership support.


%package devel
Summary:	Development files and libraries for ntfs-3g
Summary(ja):	ntfs-3g の開発ファイルとライブラリ
Group:		programming
Requires:	%{name} = %{version}-%{release}
Requires:	pkgconfig
Provides:       ntfsprogs-devel = %{version}-%{release}
Obsoletes:      ntfsprogs-devel < 2.0.0-3

%description devel
Headers and libraries for developing applications that use ntfs-3g 
functionality.


%package -n ntfsprogs
Summary:        NTFS filesystem libraries and utilities
Summary(ja):    NTFS ファイルシステム用ライブラリおよびユーティリティ
Group:          system
Provides:       ntfsprogs-gnomevfs = %{version}-%{release}
Obsoletes:      ntfsprogs-gnomevfs < 2.0.0-3

%description -n ntfsprogs
The ntfsprogs package currently consists of a library and utilities
such as mkntfs, ntfscat, ntfsls, ntfsresize, and ntfsundelete
(for a full list of included utilities see man 8 ntfsprogs after 
installation).


%debug_package


%prep
%setup -q -n %{name}_ntfsprogs-%{version}
%patch0 -p1 -b .unsupported


%build
export CFLAGS="%{optflags} -D_FILE_OFFSET_BITS=64"
%configure \
		--disable-static \
		--disable-ldconfig \
%if %{with externalfuse}
		--with-fuse=external \
%endif
		--exec-prefix=/ \
		--bindir=/bin \
		--sbindir=/sbin \
		--libdir=/%{_lib} \
		--enable-posix-acls \
		--enable-xattr-mappings \
		--enable-crypto \
		--enable-extras \
		--enable-quarantined

make %{?_smp_mflags} LIBTOOL=%{_bindir}/libtool


%install
rm -rf $RPM_BUILD_ROOT
make DESTDIR=$RPM_BUILD_ROOT LIBTOOL=%{_bindir}/libtool install

rm -f $RPM_BUILD_ROOT%{_libdir}/*.{la,a}
rm -f $RPM_BUILD_ROOT/%{_lib}/libntfs-3g.{la,a}

mkdir -p $RPM_BUILD_ROOT/sbin

# make the symlink an actual copy to avoid confusion
rm -rf $RPM_BUILD_ROOT/sbin/mount.ntfs-3g
cp -a $RPM_BUILD_ROOT/bin/ntfs-3g $RPM_BUILD_ROOT/sbin/mount.ntfs-3g

# make compatibility symlinks
ln -s ntfs-3g $RPM_BUILD_ROOT/bin/ntfsmount
ln -s mount.ntfs-3g $RPM_BUILD_ROOT/sbin/mount.ntfs-fuse
ln -s mount.ntfs-3g $RPM_BUILD_ROOT/sbin/mount.ntfs
ln -s ../bin/ntfsck $RPM_BUILD_ROOT/sbin/fsck.ntfs
mkdir -p $RPM_BUILD_ROOT%{_bindir}
ln -s /bin/ntfs-3g $RPM_BUILD_ROOT%{_bindir}/ntfs-3g
ln -s /bin/ntfsmount $RPM_BUILD_ROOT%{_bindir}/ntfsmount

# Put the .pc file in the right place.
mkdir -p $RPM_BUILD_ROOT%{_libdir}/pkgconfig/
mv $RPM_BUILD_ROOT/%{_lib}/pkgconfig/libntfs-3g.pc $RPM_BUILD_ROOT%{_libdir}/pkgconfig/

# We get this on our own, thanks.
rm -rf $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}/README


%clean
rm -rf $RPM_BUILD_ROOT


%files
%defattr(-,root,root,-)
%license COPYING
%doc AUTHORS ChangeLog CREDITS NEWS README
/sbin/mount.ntfs
%attr(4754,root,root) /sbin/mount.ntfs-3g
/sbin/mount.ntfs-fuse
/sbin/mount.lowntfs-3g
/bin/lowntfs-3g
/bin/ntfs-3g
/bin/ntfs-3g.probe
/bin/ntfsmount
%{_bindir}/ntfs-3g
%{_bindir}/ntfsmount
/%{_lib}/libntfs-3g.so.*
%{_mandir}/man8/mount.lowntfs-3g.*
%{_mandir}/man8/mount.ntfs-3g.*
%{_mandir}/man8/ntfs-3g*

%files devel
%defattr(-,root,root,-)
%{_includedir}/ntfs-3g/
/%{_lib}/libntfs-3g.so
%{_libdir}/pkgconfig/*.pc

%files -n ntfsprogs
%license COPYING
%doc AUTHORS CREDITS ChangeLog NEWS README
/bin/ntfscat
/bin/ntfscluster
/bin/ntfscmp
/bin/ntfsfix
/bin/ntfsinfo
/bin/ntfsls
/bin/ntfssecaudit
/bin/ntfsusermap
# extras
/bin/ntfsck
/bin/ntfsdecrypt
/bin/ntfsdump_logfile
/bin/ntfsfallocate
/bin/ntfsmftalloc
/bin/ntfsmove
/bin/ntfsrecover
/bin/ntfstruncate
/bin/ntfswipe
/sbin/fsck.ntfs
/sbin/mkfs.ntfs
/sbin/mkntfs
/sbin/ntfsclone
/sbin/ntfscp
/sbin/ntfslabel
/sbin/ntfsresize
/sbin/ntfsundelete
%{_mandir}/man8/mkntfs.8*
%{_mandir}/man8/mkfs.ntfs.8*
%{_mandir}/man8/ntfs[^m][^o]*.8*
%exclude %{_mandir}/man8/ntfs-3g*


%changelog
* Thu Sep 23 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2021.8.22-1
- new upstream release.
- dropped Patch1-4.

* Fri Apr 10 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2017.3.23-1
- new upstream release.
- imported Patch1-4 from rawhide.

* Mon Jul 25 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2016.2.22-1
- new upstream release.

* Wed Dec 30 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2015.3.14-3
- rebuilt with gnutls-3.4.x.

* Fri May  8 2015 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 2015.3.14-2
- reverted file location <Vine Linux:2914>

* Fri Apr 24 2015 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 2015.3.14-1
- new upstream release
- dropt hal files, since hal is very old

* Sun Mar 02 2014 NAKAMURA Kenta <kenta@vinelinux.org> 2014.2.15-1
- new upstream release

* Wed Feb 19 2014 NAKAMURA Kenta <kenta@vinelinux.org> 2013.1.13-2
- rebuilt with gnutls-3.2 and libgcrypt-1.6

* Tue Feb 19 2013 Daisuke SUZUKI <daisuke@linux.or.jp> 2013.1.13-1
- new upstream release

* Mon Nov 05 2012 Daisuke SUZUKI <daisuke@linux.or.jp> 2012.1.15-1
- new upstream release
- merge ntfsprogs
  - add Obsoletes and Provides ntfsprogs*
  - add BR: for ntfsprogs

* Sat Feb 26 2011 Yoji TOYODA <bsyamato@sea.plala.or.jp> 2011.1.15-1
- new upstream release
- fix %%files (add lowntfs-3g)

* Mon Jun 15 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 2009.4.4-1
- new upstream release
- use internal fuse-lite, remove BR: fuse-devel and R: fuse
- move binaries to /bin
- move libraries to /%%{_lib}
- add fdi file to enable hal automounting

* Sun Jan 25 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 2009.1.1-1
- new upstream release

* Sun Aug 17 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 1.2812-1
- new upstream release

* Fri Jul 25 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 1.2712-1
- new upstream release

* Thu Apr 24 2008 Daisuke SUZUKI <daisuke@linux.or.jp> 1.2412-1
- new upstream release

* Tue Jun 05 2007 Daisuke SUZUKI <daisuke@linux.or.jp> 1.516-0vl1
- initial build for Vine Linux

* Tue May 15 2007 Tom "spot" Callaway <tcallawa@redhat.com> 2:1.516-1
- bump to 1.516
- fix bugzilla 232031

* Sun Apr 15 2007 Tom "spot" Callaway <tcallawa@redhat.com> 2:1.417-1
- bump to 1.417

* Sun Apr 15 2007 Tom "spot" Callaway <tcallawa@redhat.com> 2:1.416-1
- bump to 1.416
- drop patch0, upstreamed

* Wed Apr  4 2007 Tom "spot" Callaway <tcallawa@redhat.com> 2:1.328-2
- allow non-root users to mount/umount ntfs volumes (Laszlo Dvornik)

* Sat Mar 31 2007 Tom "spot" Callaway <tcallawa@redhat.com> 2:1.328-1
- bump to 1.328
- drop patch, use --disable-ldconfig instead

* Wed Feb 21 2007 Tom "spot" Callaway <tcallawa@redhat.com> 2:1.0-1
- 1.0 release!

* Fri Jan 19 2007 Tom "spot" Callaway <tcallawa@redhat.com> 2:0-0.9.20070118
- symlink to mount.ntfs

* Wed Jan 17 2007 Tom "spot" Callaway <tcallawa@redhat.com> 2:0-0.8.20070118
- bump to 20070118

* Wed Jan 17 2007 Tom "spot" Callaway <tcallawa@redhat.com> 2:0-0.7.20070116
- bump to latest version for all active dists

* Wed Jan  3 2007 Tom "spot" Callaway <tcallawa@redhat.com> 1:0-0.6.20070102
- bump to latest version (note that upstream fixed their date mistake)

* Wed Nov  1 2006 Tom "spot" Callaway <tcallawa@redhat.com> 1:0-0.5.20070920
- add an obsoletes for ntfsprogs-fuse
- make some convenience symlinks

* Wed Oct 25 2006 Tom "spot" Callaway <tcallawa@redhat.com> 1:0-0.4.20070920
- add some extra Provides

* Mon Oct 16 2006 Tom "spot" Callaway <tcallawa@redhat.com> 1:0-0.3.20070920
- add explicit Requires on fuse

* Mon Oct 16 2006 Tom "spot" Callaway <tcallawa@redhat.com> 1:0-0.2.20070920
- fixed versioning (bumped epoch, since it now shows as older)
- change sbin symlink to actual copy to be safe

* Sun Oct 15 2006 Tom "spot" Callaway <tcallawa@redhat.com> 0.1.20070920-1
- Initial package for Fedora Extras
