327 lines
12 KiB
RPMSpec
327 lines
12 KiB
RPMSpec
%define _binary_payload w9.gzdio
|
||
Name: mtools
|
||
Summary: mtools, read/write/list/format DOS disks under Unix
|
||
Version: 4.0.37
|
||
Release: 1
|
||
License: GPLv3+
|
||
Group: Utilities/System
|
||
URL: http://www.gnu.org/software/mtools/
|
||
Source: ftp://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz
|
||
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||
|
||
|
||
%description
|
||
Mtools is a collection of utilities to access MS-DOS disks from GNU
|
||
and Unix without mounting them. It supports long file names, OS/2 Xdf
|
||
disks, ZIP/JAZ disks and 2m disks (store up to 1992k on a high density
|
||
3 1/2 disk).
|
||
|
||
|
||
%prep
|
||
%setup -q
|
||
|
||
./configure \
|
||
--prefix=%{buildroot}%{_prefix} \
|
||
--sysconfdir=/etc \
|
||
--infodir=%{buildroot}%{_infodir} \
|
||
--mandir=%{buildroot}%{_mandir} \
|
||
--enable-floppyd \
|
||
|
||
%build
|
||
make
|
||
|
||
%clean
|
||
echo rm -rf $RPM_BUILD_ROOT
|
||
[ X%{buildroot} != X ] && [ X%{buildroot} != X/ ] && rm -fr %{buildroot}
|
||
|
||
%install
|
||
make install
|
||
make install-info
|
||
strip %{buildroot}%{_bindir}/mtools %{buildroot}%{_bindir}/mkmanifest %{buildroot}%{_bindir}/floppyd
|
||
rm %{buildroot}%{_infodir}/dir
|
||
|
||
%files
|
||
%defattr(-,root,root)
|
||
%{_infodir}/mtools.info*
|
||
%{_mandir}/man1/floppyd.1*
|
||
%{_mandir}/man1/floppyd_installtest.1.gz
|
||
%{_mandir}/man1/mattrib.1*
|
||
%{_mandir}/man1/mbadblocks.1*
|
||
%{_mandir}/man1/mcat.1*
|
||
%{_mandir}/man1/mcd.1*
|
||
%{_mandir}/man1/mcopy.1*
|
||
%{_mandir}/man1/mdel.1*
|
||
%{_mandir}/man1/mdeltree.1*
|
||
%{_mandir}/man1/mdir.1*
|
||
%{_mandir}/man1/mdu.1*
|
||
%{_mandir}/man1/mformat.1*
|
||
%{_mandir}/man1/minfo.1*
|
||
%{_mandir}/man1/mkmanifest.1*
|
||
%{_mandir}/man1/mlabel.1*
|
||
%{_mandir}/man1/mmd.1*
|
||
%{_mandir}/man1/mmount.1*
|
||
%{_mandir}/man1/mmove.1*
|
||
%{_mandir}/man1/mpartition.1*
|
||
%{_mandir}/man1/mrd.1*
|
||
%{_mandir}/man1/mren.1*
|
||
%{_mandir}/man1/mshortname.1*
|
||
%{_mandir}/man1/mshowfat.1*
|
||
%{_mandir}/man1/mtools.1*
|
||
%{_mandir}/man5/mtools.5*
|
||
%{_mandir}/man1/mtoolstest.1*
|
||
%{_mandir}/man1/mtype.1*
|
||
%{_mandir}/man1/mzip.1*
|
||
%{_bindir}/amuFormat.sh
|
||
%{_bindir}/mattrib
|
||
%{_bindir}/mbadblocks
|
||
%{_bindir}/mcat
|
||
%{_bindir}/mcd
|
||
%{_bindir}/mcopy
|
||
%{_bindir}/mdel
|
||
%{_bindir}/mdeltree
|
||
%{_bindir}/mdir
|
||
%{_bindir}/mdu
|
||
%{_bindir}/mformat
|
||
%{_bindir}/minfo
|
||
%{_bindir}/mkmanifest
|
||
%{_bindir}/mlabel
|
||
%{_bindir}/mmd
|
||
%{_bindir}/mmount
|
||
%{_bindir}/mmove
|
||
%{_bindir}/mpartition
|
||
%{_bindir}/mrd
|
||
%{_bindir}/mren
|
||
%{_bindir}/mshortname
|
||
%{_bindir}/mshowfat
|
||
%{_bindir}/mtools
|
||
%{_bindir}/mtoolstest
|
||
%{_bindir}/mtype
|
||
%{_bindir}/mzip
|
||
%{_bindir}/floppyd
|
||
%{_bindir}/floppyd_installtest
|
||
%{_bindir}/mcheck
|
||
%{_bindir}/mcomp
|
||
%{_bindir}/mxtar
|
||
%{_bindir}/tgz
|
||
%{_bindir}/uz
|
||
%{_bindir}/lz
|
||
%doc NEWS
|
||
|
||
%pre
|
||
groupadd floppy 2>/dev/null || echo -n ""
|
||
|
||
%post
|
||
if [ -f %{_bindir}/install-info ] ; then
|
||
if [ -f %{_infodir}/dir ] ; then
|
||
%{_bindir}/install-info %{_infodir}/mtools.info %{_infodir}/dir
|
||
fi
|
||
if [ -f %{_infodir}/dir.info ] ; then
|
||
%{_bindir}/install-info %{_infodir}/mtools.info %{_infodir}/dir.info
|
||
fi
|
||
fi
|
||
|
||
|
||
%preun
|
||
install-info --delete %{_infodir}/mtools.info %{_infodir}/dir.info
|
||
if [ -f %{_bindir}/install-info ] ; then
|
||
if [ -f %{_infodir}/dir ] ; then
|
||
%{_bindir}/install-info --delete %{_infodir}/mtools.info %{_infodir}/dir
|
||
fi
|
||
if [ -f %{_infodir}/dir.info ] ; then
|
||
%{_bindir}/install-info --delete %{_infodir}/mtools.info %{_infodir}/dir.info
|
||
fi
|
||
fi
|
||
|
||
%changelog
|
||
* Sun Dec 26 2021 Alain Knaff <alain@knaff.lu>
|
||
- Removed mclasserase commands, which doesn't fit the coding
|
||
structure of the rest of mtools
|
||
- Add support to -i option to mcd
|
||
- Document -i in mtools.1
|
||
- Fix a missing commad error in floppyd_io.c
|
||
* Sun Nov 21 2021 Alain Knaff <alain@knaff.lu>
|
||
- Fix error status of recursive listing of empty root directory
|
||
- If recursive listing, also show matched files at level one
|
||
- Use "seekless" reads & write internally, where possible
|
||
- Text mode conversion refactoring
|
||
- Misc refactoring
|
||
* Fri Aug 06 2021 Alain Knaff <alain@knaff.lu>
|
||
- Fix cluster padding at end of file in batch mode, and add comments about what
|
||
happens here
|
||
* Fri Jul 23 2021 Alain Knaff <alain@knaff.lu>
|
||
- Fix mcopy -s issue
|
||
* Sat Jul 17 2021 Alain Knaff <alain@knaff.lu>
|
||
- Fix support for partitions (broken in 4.0.30)
|
||
- Portability fixes for Solaris 10 and 11
|
||
- General simplification of configure script, and largefile handling
|
||
- Tested and fixed for platforms *without* largefile support
|
||
- In cases where lseek works with 32-bit offsets, prefer lseek64 over llseek
|
||
- Fixed floppy sector size handling on platforms that are not Linux
|
||
- Added support for image files on command line to mcat
|
||
* Sat Jul 10 2021 Alain Knaff <alain@knaff.lu>
|
||
- Simplify algorithm that choses filesystem parameters for
|
||
format, and align it more closely with what Win7 does
|
||
- Fix mformatting XDF when XDF not explicitly specified on
|
||
mformat command line
|
||
- easier way to enter sizes on mformat command line (mformat -C -T 1440K)
|
||
- For small sizes, mformat assumes floppy geometries (heads 1 or 2,
|
||
tracks 40 or 80)
|
||
- Handle attempts to mformat too small filesystems more gracefully
|
||
- Enable minfo to print out additional mformat command line
|
||
parameters, if the present filesystem uses non-default values for
|
||
these
|
||
- minfo no longer prints bigsect if smallsect is set
|
||
- for remap filter, error when trying to write non-zero data to
|
||
unmapped sectors
|
||
- Fix misc compilation warnings occuring when disabling certain
|
||
features (largefiles, raw-term)
|
||
|
||
* Sat Jun 19 2021 Alain Knaff <alain@knaff.lu>
|
||
- Move Linux-specific block device sizing code into
|
||
linux-specific section of devices.c
|
||
- Error messages for all failure cases on fs_init failure
|
||
- Fix compilation without XDF support (OpenImage signature)
|
||
- Fix polarity of format_xdf command-line parameter of mformat
|
||
- In XDF_IO retry enough times to actually succeed, even if
|
||
FDC was in a bad state before
|
||
- Remove useless buffer flushing triggered when giving up a
|
||
reference to a stream node that is still referenced
|
||
elsewhere.
|
||
- Clearer error message if neither size nor geometry of drive
|
||
to be mformatted is known
|
||
- In mformat, make Fs dynamically allocated rather than
|
||
on-stack, so as to be able to use utilities supplied by
|
||
stream.c
|
||
- Remove duplicate writing of backup boot sector
|
||
- Allow to infer geometry if only size is specified
|
||
- Protect against attempt to create zero-sized buffer
|
||
- Code simplification in mattrib
|
||
- Remove dead code in mpartition
|
||
|
||
* Thu Jun 17 2021 Alain Knaff <alain@knaff.lu>
|
||
- Fixed XDF floppy disk access
|
||
- Fixed faulty behavior at end of image in mcat
|
||
- Device/Image size handling refactoring
|
||
- allow remap to write to zero-backed sectors (may happen if
|
||
buffer is flushed, and is not an error in that case)
|
||
- Raise an error when trying to mcopy multiple source files
|
||
over a single destination file (rather than directory)
|
||
- fix handling of "hidden" sectors (is a 2 byte quantity on
|
||
small disks, not 4 byte as previously assumed)
|
||
- Modernize partition support. Tuned consistency check to
|
||
actually check about important issues (such as overlapping
|
||
partitions) rather than stuff nobody else cares about
|
||
(alignment on entire cylinder boundaries)
|
||
- Move various "filter" options (partition, offset, swap,
|
||
scsi) into separate classes, rather than leaving almost
|
||
everything in plain_io
|
||
- Simplify and centralize geometry handling and LBA code
|
||
- Fix some more more compiler warnings
|
||
* Mon May 31 2021 Alain Knaff <alain@knaff.lu>
|
||
-Fix bug in cluster preallocation, which was accidentally introduced by compiler warning "fixes" from v4_0_28
|
||
* Sat Nov 28 2020 Alain Knaff <alain@knaff.lu>
|
||
- Fix compilation on Macintosh
|
||
- Ignore image file locking errors if we are performing a read-only access anyways
|
||
- Minor man-page fixes
|
||
* Sat Oct 24 2020 Alain Knaff <alain@knaff.lu>
|
||
- Preserve non-updated contents of info sector, just in case it contains program code
|
||
- When parsing config file, always use "C" locale for case-insensitive comparisons
|
||
* Sun Mar 22 2020 Alain Knaff <alain@knaff.lu>
|
||
- Spelling fixes in documentation
|
||
- Permit calling "make install" with >= -j2
|
||
- Added AC_SYS_LARGEFILE, needed for compiling on certain ARM procs
|
||
* Sun Dec 09 2018 Alain Knaff <alain@knaff.lu>
|
||
- Address lots of compiler warnings (assignments between different types)
|
||
- Network speedup fixes for floppyd (TCP_CORK)
|
||
- Typo fixes
|
||
- Explicitly pass available target buffer size for character set conversions
|
||
* Sun Dec 02 2018 Alain Knaff <alain@knaff.lu>
|
||
- Fixed -f flag for mformat (size is KBytes, rather than sectors)
|
||
- Fixed toupper/tolower usage (unsigned char rather than plain signed)
|
||
* Sat Nov 24 2018 Alain Knaff <alain@knaff.lu>
|
||
- Fixed compilation for MingW
|
||
- After MingW compilation, make sure executable has .exe extension
|
||
- Addressed compiler warnings
|
||
- Fixed length handling in character set conversion (Unicode file names)
|
||
- Fixed matching of character range, when containing Unicode characters (mdir "c:test[α-ω].exe")
|
||
- Fixed initialization of my_scsi_cmd constructor
|
||
* Sun Nov 11 2018 Alain Knaff <alain@knaff.lu>
|
||
- initialize directory entries to 0
|
||
- bad message "Too few sectors" replaced with "Too many sectors"
|
||
- apostrophe in mlabel no longer causes generation of long entry
|
||
- option to fake system date for file creation using the SOURCE_DATE_EPOCH environment variables
|
||
- can now be compiled with "clang" compiler
|
||
- fallback function for strndup, for those platforms that do not have it
|
||
- fixed a number of -Wextra warnings
|
||
- new compressed archive formats for uz/lz
|
||
- allow to specify number of reserved sectors for FAT32.
|
||
- file/device locking with timeout (rather than immediate failure)
|
||
- fixed support for BPB-less legacy formats.
|
||
- removed check that disk must be an integer number of tracks.
|
||
- removed .eh/.oh macros from manual pages
|
||
* Sat Sep 29 2018 Alain Knaff <alain@knaff.lu>
|
||
- Fix for short file names starting with character 0xE5 (by remapping it to 0x5)
|
||
- mpartition: Partition types closer to what Microsoft uses
|
||
- mformat: figure out LBA geometry as last resort if geometry
|
||
is neither specified in config and/or commandline, nor can be
|
||
queried from the device
|
||
- mformat: use same default cluster size by size as Microsoft for FAT32
|
||
- additional sanity checks
|
||
- document how cluster size is picked in mformat.c man page
|
||
- document how partition types are picked in mpartition.c man page
|
||
* Wed Jan 09 2013 Alain Knaff <alain@knaff.lu>
|
||
- Fix for names of iconv encodings on AIX
|
||
- Fix mt_size_t on NetBSD
|
||
- Fixed compilation on Mingw
|
||
- Fixed doc (especially mformat)
|
||
- Fix mformating of FAT12 filesystems with huge cluster sizes
|
||
- Minfo prints image file name in mformat command line if an image
|
||
- file name was given
|
||
- Always generate gzip-compressed RPMs, in order to remain
|
||
- compatible with older distributions
|
||
- Fixed buffer overflow with drive letter in mclasserase
|
||
* Wed Jun 29 2011 Alain Knaff <alain@knaff.lu>
|
||
- mbadblocks now takes a list of bad blocks (either as sectors
|
||
or as clusters)
|
||
- mbadblocks now is able to do write scanning for bad blocks
|
||
- mshowfat can show cluster of specific offset
|
||
- Enable mtools to deal with very small sector sizes...
|
||
- Fixed encoding of all-lowercase names (no need to mangle
|
||
these)
|
||
- Consider every directory entry after an ENDMARK (0x00) to be deleted
|
||
- After writing a new entry at end of a directory, be sure to also add
|
||
an ENDMARK (0x00)
|
||
- Deal with possibility of a NULL pointer being returned by
|
||
localtime during timestamp conversion
|
||
* Sat Apr 16 2011 Alain Knaff <alain@knaff.lu>
|
||
- configure.in fixes
|
||
- fixed formatting of fat_size_calculation.tex document
|
||
- compatibility with current autoconfig versions
|
||
- Make it clear that label is limited to 11 characters
|
||
- Fixed typo in initialization of FAT32 info sector
|
||
* Sun Oct 17 2010 Alain Knaff <alain@knaff.lu>
|
||
- Added missing -i option to mshortname
|
||
* Sun Oct 17 2010 Alain Knaff <alain@knaff.lu>
|
||
- Released v4_0_14:
|
||
- New mshortname command
|
||
- Fix floppyd for disks bigger than 2 Gig
|
||
- Remove obsolete -z flag
|
||
- Remove now unsupported AC_USE_SYSTEM_EXTENSIONS
|
||
- Fixed output formatting of mdir if MTOOLS_DOTTED_DIR is set
|
||
- Mformat now correctly writes backup boot sector
|
||
- Fixed signedness of serial number in mlabel
|
||
- Fixed buffer size problem in mlabel
|
||
- Make mlabel write backup boot sector if FAT32
|
||
- Catch situation where both clear and new label are given to mlabel
|
||
- Quote filename parameters to scripts
|
||
- Mformat: Close file descriptor for boot sector
|
||
- Added lzip support to scripts/uz
|
||
- Added Tot_sectors option to mformat
|
||
- Fixed hidden sector handling in mformat
|
||
- Minfo generates mformat command lines containing new -T option
|
||
- Mlabel prints error if label too long
|
||
* Sun Feb 28 2010 Alain Knaff <alain@knaff.lu>
|
||
- Merged Debian patches
|
||
* Tue Nov 03 2009 Alain Knaff <alain@knaff.lu>
|
||
- Mingw compatibility fixes
|