Chris Weyl 917ca5a
Name:           hfsplus-tools
Matthew Garrett 4da848b
Version:        540.1.linux3
1d7c2b7
Release:        22%{?dist}
Chris Weyl 917ca5a
Summary:        Tools to create/check Apple HFS+ filesystems
Chris Weyl 917ca5a
da41513
License:        APSL 2.0
Chris Weyl 6478668
URL:            http://gentoo-wiki.com/HOWTO_hfsplus
Chris Weyl 917ca5a
Matthew Garrett 4124cdd
Source0: http://cavan.codon.org.uk/~mjg59/diskdev_cmds/diskdev_cmds-%{version}.tar.gz
d8606c1
Patch0: hfsplus-tools-no-blocks.patch
fbe451a
Patch1: hfsplus-tools-learn-to-stdarg.patch
1d7c2b7
Patch2: hfsplus-tools-sysctl.patch
Chris Weyl 917ca5a
Chris Weyl 917ca5a
Source100:      http://www.opensource.org/licenses/apsl-2.0.txt
Chris Weyl 917ca5a
696ae72
BuildRequires:  gcc
Chris Weyl 917ca5a
BuildRequires: openssl-devel 
Matthew Garrett 2d84a27
BuildRequires: libuuid-devel
cee5f78
BuildRequires: make
Chris Weyl 917ca5a
Chris Weyl 917ca5a
# those tools are outdated, given the rebuilt mkfs/fsck.hfsplus in this
Chris Weyl 917ca5a
# package.  However, I don't want to Obsolete that package yet, as some people
Chris Weyl 917ca5a
# may have a valid use for it on their systems. 
Chris Weyl 917ca5a
Conflicts: hfsplusutils
Chris Weyl 917ca5a
Chris Weyl 917ca5a
# we want this to end up with the other mkfs.*'s, in /sbin
Chris Weyl 917ca5a
%define _exec_prefix /
Chris Weyl 917ca5a
Chris Weyl 917ca5a
Chris Weyl 917ca5a
%description
Chris Weyl 917ca5a
HFS+, HFS Plus, or Mac OS Extended are names for a file system developed by
Chris Weyl 917ca5a
Apple Computer to replace their Hierarchical File System (HFS). In addition to
Chris Weyl 917ca5a
being the default file system on modern Apple computers, HFS+ is one of two
Chris Weyl 917ca5a
formats, FAT being the other, that are supported by the iPod hard-disk based
Chris Weyl 917ca5a
music player. Unlike FAT, HFS+ supports UNIX style file permissions, which
Chris Weyl 917ca5a
makes it useful, for serving and sharing files in a secured manner. As Apple
Chris Weyl 917ca5a
Computer's devices and systems become increasingly ubiquitous, it becomes
Chris Weyl 917ca5a
important that Linux fully support this format.  This package provides tools
Chris Weyl 917ca5a
to create and check HFS+ filesystems under Linux.
Chris Weyl 917ca5a
Chris Weyl 917ca5a
The Linux kernel does not support writing to HFS+ journals, writing to a
Chris Weyl 917ca5a
hfsplus partition is recommended only after disabling journaling; however, the
Chris Weyl 917ca5a
kernel, as of version 2.6.16, supports case-sensitivity (also known as HFSX)
Chris Weyl 917ca5a
commit.
Chris Weyl 917ca5a
Chris Weyl 917ca5a
Chris Weyl 917ca5a
%prep
Chris Weyl 917ca5a
%setup -q -n hfsplus-mkfs-%{version} -n diskdev_cmds-%{version}
d8606c1
%patch0 -p1
fbe451a
%patch1 -p1
1d7c2b7
%patch2 -p1
Chris Weyl 917ca5a
Chris Weyl 917ca5a
# remove errant execute bits
Chris Weyl 6478668
find . -type f -name '*.[ch]' -exec chmod -c -x {} +
Chris Weyl 917ca5a
Chris Weyl 917ca5a
# make life easier on doc
Chris Weyl 917ca5a
cp %{SOURCE100} .
Chris Weyl 917ca5a
Chris Weyl 917ca5a
Chris Weyl 917ca5a
%build
Chris Weyl 917ca5a
export CFLAGS="%{optflags}"
Matthew Garrett 4124cdd
make %{?_smp_mflags} -f Makefile
Chris Weyl 917ca5a
Chris Weyl 917ca5a
Chris Weyl 917ca5a
%install
Chris Weyl 917ca5a
# the actual install...
Chris Weyl 917ca5a
mkdir -p %{buildroot}/%{_sbindir}
Chris Weyl 917ca5a
cp newfs_hfs.tproj/newfs_hfs %{buildroot}/%{_sbindir}/mkfs.hfsplus
Chris Weyl 917ca5a
cp fsck_hfs.tproj/fsck_hfs %{buildroot}/%{_sbindir}/fsck.hfsplus
Chris Weyl 917ca5a
Chris Weyl 917ca5a
# man pages -- a mildly non-invasive name change is in order
Chris Weyl 917ca5a
mkdir -p %{buildroot}/%{_mandir}/man8
Chris Weyl 917ca5a
cat fsck_hfs.tproj/fsck_hfs.8 | sed -e 's/[F|f]sck_hfs/fsck.hfsplus/g' \
Chris Weyl 917ca5a
    > %{buildroot}/%{_mandir}/man8/fsck.hfsplus.8
Chris Weyl 917ca5a
cat newfs_hfs.tproj/newfs_hfs.8 | sed -e 's/[N|n]ewfs_hfs/mkfs.hfsplus/g' \
Chris Weyl 917ca5a
    > %{buildroot}/%{_mandir}/man8/mkfs.hfsplus.8
Chris Weyl 917ca5a
Chris Weyl 917ca5a
# and a utility symlink...
Chris Weyl 917ca5a
cd %{buildroot}/%{_sbindir}
Chris Weyl 917ca5a
ln -s fsck.hfsplus fsck.hfs
Chris Weyl 917ca5a
cd %{buildroot}/%{_mandir}/man8
Chris Weyl 917ca5a
ln -s fsck.hfsplus.8 fsck.hfs.8
Chris Weyl 917ca5a
Chris Weyl 917ca5a
Chris Weyl 917ca5a
%files
Chris Weyl 917ca5a
%doc apsl-2.0.txt
Chris Weyl 917ca5a
%{_sbindir}/mkfs.hfsplus
Chris Weyl 917ca5a
%{_sbindir}/fsck.hfsplus
Chris Weyl 917ca5a
%{_sbindir}/fsck.hfs
Chris Weyl 917ca5a
%{_mandir}/man8/mkfs.hfsplus.8.gz
Chris Weyl 917ca5a
%{_mandir}/man8/fsck.hfsplus.8.gz
Chris Weyl 917ca5a
%{_mandir}/man8/fsck.hfs.8.gz
Chris Weyl 917ca5a
Chris Weyl 917ca5a
Chris Weyl 917ca5a
%changelog
1d7c2b7
* Tue Aug 11 2020 Adam Jackson <ajax@redhat.com> - 540.1.linux3-22
1d7c2b7
- <sys/sysctl.h> -> <linux/sysctl.h>
1d7c2b7
ff8a661
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 540.1.linux3-21
ff8a661
- Second attempt - Rebuilt for
ff8a661
  https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
ff8a661
d9149f2
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 540.1.linux3-20
d9149f2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
d9149f2
a3dc815
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 540.1.linux3-19
a3dc815
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
a3dc815
6eec8fe
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 540.1.linux3-18
6eec8fe
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
6eec8fe
393a860
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 540.1.linux3-17
393a860
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
393a860
c0133a5
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 540.1.linux3-16
c0133a5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
c0133a5
c0de798
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 540.1.linux3-15
c0de798
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
c0de798
3959a75
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 540.1.linux3-14
3959a75
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
3959a75
c1acce1
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 540.1.linux3-13
c1acce1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
c1acce1
b7d09eb
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 540.1.linux3-12
b7d09eb
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
b7d09eb
c90cd47
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 540.1.linux3-11
c90cd47
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
c90cd47
d575115
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 540.1.linux3-10
d575115
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
d575115
d809852
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 540.1.linux3-9
d809852
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
d809852
d8606c1
* Wed Jun 18 2014 Adam Jackson <ajax@redhat.com> 540.1.linux3-8
d8606c1
- Remove asinine blocks usage so we don't need clang, build with gcc, and
d8606c1
  remove ExcludeArchery to match
fbe451a
- Fix FTBFS on arm due to a... fascinating interpretation of how varargs work
d8606c1
5354074
* Tue Jun 10 2014 Richard W.M. Jones <rjones@redhat.com> - 540.1.linux3-7
5354074
- ExcludeArch arm because clang doesn't select the correct float ABI.
5354074
- Remove unnecessary cruft not required by modern RPM.
5354074
2b2df37
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 540.1.linux3-6
2b2df37
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
2b2df37
fb45289
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 540.1.linux3-5
fb45289
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
fb45289
2223c3e
* Wed Jun 12 2013 Dan HorĂ¡k <dan[at]danny.cz> - 540.1.linux3-4
2223c3e
- exclude ppc and s390, no working clang there
2223c3e
6984e46
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 540.1.linux3-3
6984e46
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
6984e46
0c1c2b0
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 540.1.linux3-2
0c1c2b0
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
0c1c2b0
Matthew Garrett 4da848b
* Thu Feb 16 2012 Matthew Garrett <mjg@redhat.com> 540.1.linux3-1
Matthew Garrett 4da848b
- update to new upstream
Matthew Garrett 4da848b
Matthew Garrett 4da848b
* Fri Feb 03 2012 Matthew Garrett <mjg@redhat.com> 540.1.linux2-1
Matthew Garrett 4da848b
- update to new upstream
Matthew Garrett 4da848b
Matthew Garrett 4124cdd
* Fri Feb 03 2012 Matthew Garrett <mjg@redhat.com> 540.1.linux1-1
Matthew Garrett 4124cdd
- update to new upstream
Matthew Garrett 4124cdd
- No longer provides mkfs.hfs - use hfsutils instead
Matthew Garrett 4124cdd
3246f49
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 332.14-14
3246f49
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
3246f49
Matthew Garrett fb94c55
* Sat Nov 19 2011 Matthew Garrett <mjg@redhat,com> 332.14-13
Matthew Garrett fb94c55
- hfsplus-tools-332.14-fix-uuid.patch: Fix UUID generation
Matthew Garrett fb94c55
362ca17
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 332.14-12
362ca17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
362ca17
30b248c
* Tue Feb 16 2010 Adam Jackson <ajax@redhat.com> 332.14 -11
30b248c
- hfsplus-tools-332.14-add-needed.patch: Fix FTBFS from --no-add-needed
30b248c
8df6cda
* Fri Aug 21 2009 Tomas Mraz <tmraz@redhat.com> - 332.14-11
8df6cda
- rebuilt with new openssl
8df6cda
377ab37
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 332.14-10
377ab37
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
377ab37
d6656af
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 332.14-9
d6656af
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
d6656af
f5af2a2
* Fri Jan 16 2009 Tomas Mraz <tmraz@redhat.com> - 332.14-8
f5af2a2
- rebuild with new openssl
f5af2a2
da41513
* Wed Sep 10 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 332.14-7
da41513
- RH Legal was kind enough to point out what I had overlooked, the clause in the APSL
da41513
  which permits "any subsequent version of this License published by Apple".
da41513
- Fixed license tag
da41513
069b5e7
* Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 332.14-6
069b5e7
- Autorebuild for GCC 4.3
069b5e7
Chris Weyl 6478668
* Tue Aug 21 2007 Chris Weyl <cweyl@alumni.drew.edu> 332.14-5
Chris Weyl 6478668
- bump, minor spec fixes
Chris Weyl 6478668
Chris Weyl 33ae29b
* Tue Nov 21 2006 Chris Weyl <cweyl@alumni.drew.edu> 332.14-4
Chris Weyl 33ae29b
- include hfsbootdata (BZ#213365)
Chris Weyl 33ae29b
Chris Weyl c31bb11
* Thu Aug 31 2006 Chris Weyl <cweyl.drew.edu> 332.14-3
Chris Weyl c31bb11
- bump for mass rebuild
Chris Weyl c31bb11
Chris Weyl cd27ae8
* Fri Aug 18 2006 Chris Weyl <cweyl@alumni.drew.edu> 332.14-2
Chris Weyl cd27ae8
- bump 
Chris Weyl cd27ae8
Chris Weyl 917ca5a
* Wed Jul 26 2006 Chris Weyl <cweyl@alumni.drew.edu> 332.14-1
Chris Weyl 917ca5a
- update to 332.14
Chris Weyl 917ca5a
Chris Weyl 917ca5a
* Thu Jul 20 2006 Chris Weyl <cweyl@alumni.drew.edu> 332.11-1
Chris Weyl 917ca5a
- add manpages
Chris Weyl 917ca5a
- add a copy of the license
Chris Weyl 917ca5a
- tweak makefiles to build with our CFLAG optimizations, not those hippy
Chris Weyl 917ca5a
  optimizations gentoo uses ;)
Chris Weyl 917ca5a
Chris Weyl 917ca5a
* Tue Jul 04 2006 Chris Weyl <cweyl@alumni.drew.edu> 332.11-0
Chris Weyl 917ca5a
- Build process snagged from Gentoo.  Thanks, guys :)
Chris Weyl 917ca5a
- Initial spec file for F-E