Commit 9949297e authored by James Morrison's avatar James Morrison Committed by Sandro Tosi

Imported Debian patch 0.8.0-4

parents 08e11bdc 312f0d90
* Extended support for id3 tags 1.0 and 1.1
- Can now find more than one trailing tag.
- Tag detector in start and end junk.
- Possibility to remove the end junk without removing the trailing tag.
- Possibility to remove the trailing tag.
- Declares the tag and its version in -c and -l if width allows it.
- Tag dumper, displaying the tag contents and some useful information
(version, conformance to the specification).
* Minor improvements or changes
- VERSION defined by default to "undefined :(" to prevent compilation
failure when compiling "by hand".
- Columns count detection, to adapt the display to the terminal width.
- Separation of code and headers in crc16.h (thus creating a new file,
crc16.cc).
- "single ligne" fix for errors (such as "not a mpeg 1.0/2.0") in -l and
-c modes.
- Count of checked files fixed (was too high due to multiple pass on
cut-junk-end, cut-junk-start and now cut-tag-end.
- Considered 128kbps as the only normal bitrate (112kbps streams are
quite rare nowadays).
- Considered the copyright bit being set as normal, since having
copyrighted files may be legal if it's your own work or if you
own the original copy.
- Added a Makefile.BSD for building with non-GNU make.
- Now never says "1 bytes".
* Planed but not yet implemented
- Filenames filtering.
- Rewriting of the retrying mecanism, to avoid doing the same test many
times.
- Tag fixer.
- Last frame completion.
==============================================================================
Q: Can mp3check scan whole directories for mp3 files and check/list/correct
them?
------------------------------------------------------------------------------
A: Of course. This is what I use most of the time:
mp3check -re3GTo /space/mp3
This will check all files with extension 'mp3' or 'MP3' (-3) recursively
under directory '/space/mp3' for errors. The output will be colorized and
ID3 tags and truncated last frames are ignored.
==============================================================================
Q: Can you add a feature to mp3check to add CRC to mp3 files which don not
have a CRC?
------------------------------------------------------------------------------
A: That's not possible, sorry. The CRC takes two bytes of extra space in every
frame. One would have to re-encode each frame to make room for those two
bytes which would result in loss of quality of course. But this is not what
you want.
==============================================================================
Q: I have an mp3 file which makes certain mp3 players (like xmms) crash, but
mp3check does not find any errors in this file. Why is that?
------------------------------------------------------------------------------
A: mp3check does only check the 'frame header' of each frame in the mp3 file
for consistency. Additionally is checks the CRC checksum over the side
information of each frame (which is only a small but important part of each
frame). All other data is ignored, although also this data has an inner
structure which can be corrupted in which case some mp3 players crash
(although there is no excuse for such a behavior ;-) )
==============================================================================
Q: Why can't mp3check fix all those errors in my mp3 files?
------------------------------------------------------------------------------
A: mp3check was never meant to fix anything. All those fixing options are
useful by-products and are becoming more and more powerful, but mp3check is
not meant as a tool to fix errors in mp3 in the first line, but to _check_
for errors.
==============================================================================
Q: Could you add feature X and option Y to mp3check? It would be so useful!
------------------------------------------------------------------------------
A: I am very busy and mp3check is only one of the tools I am maintaining. If
you can report a bug, I would be happy to fix it. If is is a small, well
defined feature you're requesting I will be happy to implement it. But I
am even happier if you can send me a patch. ;-)
==============================================================================
Q: I am disappointed: About 0.1% to 10% of all mp3 files I downloaded from the
internet had at least minor errors. How can this be?
------------------------------------------------------------------------------
A: Ask me an easier question, please. It seems that hundreds of copying
generations of a file through UDP connections (FTP), hard disks and local
Ethernet cables leave their traces on the mp3 files. ;-) Use mp3check to
filter the bad ones out and only use the good ones. That way we might get
rid of the problem.
==============================================================================
Q: I have files with the .wav filename extension but mp3checks claims they are
mp3 files. And I have files with the .mp3 filename extension but mp3check
claims that no mp3 streams. How can that be?
------------------------------------------------------------------------------
A: A filename extension has not necessarily something to do with it contents.
mp3check totally ignores the filename extension. I have seen mp3 streams
encapsulated in a wav file and I have seen mp3 files containing a RealAudio
stream. This shouldn't be a problem for the tools dealing with such files.
==============================================================================
Q: Can you send me a list of mp3 servers?
------------------------------------------------------------------------------
A: What is that? I use mp3check only for my own recordings. ;-)
==============================================================================
Q: I looked at the source and it seems that tstring.* and tappconfig.* are
pure overhead and that all the functionality of mp3check is implemented in
mp3check.cc.
------------------------------------------------------------------------------
A: You are right.
1998:
20 Jan: mp3check started and first header seek check (v0.0)
21 Jan: v0.1 colorization, error and anomaly check implen, crc started
23 Jan: v0.2 advanced formatting
24 Jan: v0.3 disable errors/anomalies
27 Jan: v0.3a -c only first frame bug fixed, --dump-header added
27 Jan: v0.3b starting mpeg 2.0 support, cut-junk-start added
28 Jan: v0.3c added some data for mpeg 2.0
09 Jul: v0.3e mpeg2.5 does not work :(
18 Sep: 0.3.1 prepare for sunsite
22 Oct: 0.4.1 prepare for use with printcdcover (raw output format)
1999:
25 Aug: 0.4.2 cerr changed to cerror (conflict with c++ libs with gcc2.95.1)
15 Sep 19:21 0.4.3 cut-junk-end added (thanks to Pollyanna Lindgren <jtlindgr@cs.helsinki.fi>)
19 Sep 18:13 0.4.4 fix-headers added (no succes on trying to fix madonna-mix)
2000:
31 May 20:00 0.5.0 avoid creating temporary file on cut-junk-start/end (thanks to Michael Stefaniuc <mstefani@redhat.de>)
no color by default, spurious color on no color removed, --cut-junk-end will not touch files with TAG trailers (thanks to Chris Pimlott <pimlottc@null.net>)
avoid endless loop on dummy+cut-junk-end
21:35 max-errors added (thanks to Preston.F.Crow.Adv94@Alum.Dartmouth.ORG (Preston F. Crow Adv94))
padding/framelength for layer 1+2 fixed (thanks to Dieter Baron <dillo@danbala.ifoer.tuwien.ac.at>)
18 Jun 15:30 0.5.1 crc check for mpg1.0/layer1 added, untested. frame length padding fixed for layer 1
10 Jul 01:00 0.5.2 tappframe simplified
13 Jul 22:00 0.5.2 --fix-crc added, endian support
2001:
26 Feb 00:00 0.6.0 Khalis (Jean Delvare) big patch applied. Lots of new features and options.
26 Feb 00:00 0.6.1 experimental big-endian support added (has to be tested)
27 Feb 00:00 0.6.2 big-endian works, --no-summary option added for batch processing, testsuite started, --show-valid files added
28 Feb 00:00 0.6.3 first frame not checked error fixed, --fix-header improved, --edit-frame-b added
19 Mar 00:15 0.6.4 applied Khalis 'cygwin' patch, runtime endianess checking removed
25 Jun 21:55 0.6.5 applied Khalis 'epmtyfiles' patch
07 Nov 20:00 0.6.6 applied Fredrik Roubert 64-bit patch
13 Nov 22:30 0.7.0 --recursive, --accept, --reject, --xdev, --only-mp3, --filelist, --print-files added, --ascii-only added
19 Nov 00:30 0.7.1 cleaner code for filename filtering, avoid use of values.h and MAXDOUBLE (thanks to Khali for both fixes)
19 Nov 23:00 0.7.2 -c fixed: hide unprintable chars in name
22 Nov 23:00 0.7.3 --xdev fixed by Khali (recursion under Win32 was broken)
To build mp3check on little-endian machines (e.g. Intel/i386) simply
type 'make'. On big-endian machines first edit the CXXFLAGS at the
top of the Makefile.
Installation:
=============
Type:
./configure
make
make install
If you want to debug use:
make CXXFLAGS="-Wall -W -g"
instead of
make
If you start from a fresh CVS checkout do:
make -f Makefile.cvs
./configure
make
make install
# use this on big-endian machines (like m68k, PowerPC, MIPS and Sparc)
# CPPFLAGS = -DBIGENDIAN
# CXXFLAGS = -O2 -Wall
CXXFLAGS = -O2
# use correct linker in implicit rule (c++ or g++)
CC=$(CXX)
# Edited for Debian GNU/Linux by Klaus Kettner (kk@debian.org)
DESTDIR =
BIN = $(DESTDIR)/usr/bin
TARGET = mp3check
OBJECTS = crc16.o id3tag.o mp3check.o tappconfig.o tstring.o tfiletools.o
${TARGET} : ${OBJECTS}
clean :
rm -f ${OBJECTS} ${TARGET} ${TARGET}.exe core *~
# debian install target
install : mp3check
install -d $(BIN)
install ./mp3check $(BIN)
install -d $(DESTDIR)/usr/share/doc/mp3check
install -m 644 -p FAQ TODO THANKS CHANGES-Khali HISTORY $(DESTDIR)/usr/share/doc/mp3check
# red hat package target
spec:
sed -e "s/^\(Version:\).*/\1 $(VER)/" $(TARGET).spec > $(TARGET).spec.new || true
mv -f $(TARGET).spec.new $(TARGET).spec || true
AUTOMAKE_OPTIONS = foreign
bin_PROGRAMS = mp3check
TAPPFRAME_SRC = tappconfig.cc tappconfig.h tstring.cc tstring.h texception.h tmap.h tvector.h tfiletools.h tfiletools.cc
mp3check_SOURCES = mp3check.cc crc16.cc crc16.h id3tag.cc id3tag.h $(TAPPFRAME_SRC)
man_MANS = mp3check.1
EXTRA_DIST = $(man_MANS) Makefile.cvs
CLEANFILES = *~
cvsclean: distclean
rm -f $(distdir).tar.gz $(distdir).lsm stamp-h.in mkinstalldirs missing libtapp install-sh configure config.h.in autoscan.log aclocal.m4 Makefile.in .dep.* COPYING
rm -rf autom4te.cache
TARNAME = $(distdir).tar.gz
LSMNAME = $(distdir).lsm
$(LSMNAME):
cp LSM_ENTRY $(LSMNAME)
streplace -q "__VERSION__=$(VERSION)" $(LSMNAME)
streplace -q "__DATE__=`date -R`" $(LSMNAME)
streplace -q "__LSM_NAME__=`ls $(LSMNAME) -l -s |awk '{printf "%3sk %s\n",$$1,$$10}'`" $(LSMNAME)
streplace -q "__TAR_NAME__=`ls $(TARNAME) -l -s |awk '{printf "%3sk %s\n",$$1,$$10}'`" $(LSMNAME)
mdist: dist
streplace -qx '(md5sum not available)=md5sum: '`md5sum $(TARNAME)|awk '{print $$1}'` $(LSMNAME)
.PHONY: $(LSMNAME) mdist
dist-hook: $(LSMNAME) mp3check.spec
sed -e "s/^\(Version:\).*/\1 $(VERSION)/" mp3check.spec > mp3check.spec.new
mv -f mp3check.spec.new mp3check.spec
all: linkit
aclocal
autoconf
autoheader
automake -a
@echo
@echo Now type
@echo " ./configure"
linkit:
test \! -d ../libtapp || ln -sf `grep '^TAPPFRAME_SRC' Makefile.am| sed 's/\([a-zA-Z0-9_.-][a-zA-Z0-9_.-]*\)/..\/libtapp\/\1/g'|cut -d= -f2-` .
test \! -d ../libtapp || ln -sf ../libtapp .
test \! -d ../libtapp || ln -sf ../libtapp/COPYING .
.PHONY: all linkit
CXXFLAGS = -Wall -W -Woverloaded-virtual
# define this on big-endian machines (Sparc, PowerPC, ...)
# CXXFLAGS = -Wall -W -Woverloaded-virtual -DBIGENDIAN
# CXXFLAGS = -O3 -Wall -W -pedantic -Woverloaded-virtual -Wno-long-long
TARGET = mp3check
include Makefile.rules
This diff is collapsed.
# rules common to all c++ projects
# set vars: TARGET, CXXFLAGS, MSRC, MOC
CC = $(CXX)
SRC = $(wildcard *.cc)
OBJ = $(SRC:.cc=.o) $(MSRC:%.h=.moc.%.o) $(ADDOBJ)
VER = $(shell grep '^\#define VERSION' $(TARGET).cc|head|awk '{if(substr($$3, 1, 1)=="\"")print substr($$3, 2, length($$3)-2); else print $$3}')
$(TARGET): $(OBJ)
.PHONY: clean clobber spec dist version
clean:
rm -f *.o .*.o *.rpo $(CLEAN)
rm -rf ti_files
version:
@echo $(VER)
clobber: clean
rm -f $(TARGET) core *~ *# .dep.* .moc.* $(CLOBBER)
spec:
test -s $(TARGET).spec && sed -e "s/^\(Version:\).*/\1 $(VER)/" $(TARGET).spec > $(TARGET).spec.new || true
test -s $(TARGET).spec && mv -f $(TARGET).spec.new $(TARGET).spec || true
BASEDIR = /tmp/dist
DISTNAME = $(TARGET)-$(VER)
DISTFULL = $(DISTNAME).tar.gz
LSMFULL = $(DISTNAME).lsm
AUTHOR = "overmann@iname.com (Johannes Overmann)"
WEBPAGE = http://www.linuxfreak.com/~overmann/soft/
dist: clobber spec
mkdir -p $(BASEDIR)
rm -rf $(BASEDIR)/$(DISTNAME)*
mkdir $(BASEDIR)/$(DISTNAME)
cp -r * $(BASEDIR)/$(DISTNAME)
rm -rf $(BASEDIR)/$(DISTNAME)/NODIST
find $(BASEDIR)/$(DISTNAME) -name '*.h' -or -name '*.cc' -or -name '*.c'|xargs -n1 check_for_gpl_header
mv $(BASEDIR)/$(DISTNAME)/LSM_ENTRY $(BASEDIR)/$(LSMFULL)
test -s $(BASEDIR)/$(DISTNAME)/Makefile.dist && mv $(BASEDIR)/$(DISTNAME)/Makefile $(BASEDIR)/$(DISTNAME)/Makefile.devel && mv $(BASEDIR)/$(DISTNAME)/Makefile.dist $(BASEDIR)/$(DISTNAME)/Makefile || true
tar -C $(BASEDIR) -czf $(BASEDIR)/$(DISTFULL) $(DISTNAME)
rm -rf $(BASEDIR)/$(DISTNAME)
streplace -q __VERSION__=$(VER) $(BASEDIR)/$(LSMFULL)
streplace -q __AUTHOR__=$(AUTHOR) $(BASEDIR)/$(LSMFULL)
streplace -q __WEBPAGE__=$(WEBPAGE) $(BASEDIR)/$(LSMFULL)
streplace -q __TITLE__=$(TARGET) $(BASEDIR)/$(LSMFULL)
streplace -q "__DATE__=`date -R`" $(BASEDIR)/$(LSMFULL)
streplace -q "__LSM_NAME__=`ls $(BASEDIR)/$(LSMFULL) -l -s |awk '{printf "%3sk %s\n",$$1,substr($$10,11)}'`" $(BASEDIR)/$(LSMFULL)
streplace -q "__TAR_NAME__=`ls $(BASEDIR)/$(DISTFULL) -l -s |awk '{printf "%3sk %s\n",$$1,substr($$10,11)}'`" $(BASEDIR)/$(LSMFULL)
streplace -q __MD5SUM__=`md5sum $(BASEDIR)/$(DISTFULL)|awk '{print $$1}'` $(BASEDIR)/$(LSMFULL)
echo
echo "==> lsm-file is at $(BASEDIR)/$(LSMFULL)"
echo "==> distribution package is at $(BASEDIR)/$(DISTFULL)"
# meta object compiler for qt
.moc.%.cc: %.h
$(MOC) -o $@ $<
# dependencies
.dep.%: %.cc
@$(SHELL) -ec '$(CPP) $(CPPFLAGS) -MM $< | sed '\''s/$*\.o/& $@/g'\'' > $@'
-include $(OBJ:%.o=.dep.%)
......@@ -22,6 +22,7 @@ Jean 'Khali' Delvare <delvare@ensicaen.ismra.fr>
(0.7.1 CygWin again, cleaner code for filename filtering, lot of testing)
(0.7.2 -c fixed)
(0.7.3 --xdev fixed)
(0.8.0 VBR support added and other improvements)
Jeff Squyres <jsquyres@lsc.nd.edu>
(0.5.0-0.6.0 Great help in improving portability.)
......@@ -32,6 +33,9 @@ Michael Uemminghaus <uemmingh@mail.rmc.de>
Fredrik Roubert <roubert@df.lth.se>
(0.6.6 64-bit fixes, testing on DEC Alpha)
Gerald Schnabel <Gerri@studserv.uni-stuttgart.de>
(0.7.4 mp3check.spec file and RedHat packages updated)
------------------------------------------------------------------
Thanks also go to the following people who contributed indirectly:
......
dnl aclocal.m4 generated automatically by aclocal 1.4-p6
dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl This program is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
dnl PARTICULAR PURPOSE.
# Do all the work for Automake. This macro actually does too much --
# some checks are only needed if your package does certain things.
# But this isn't really a big deal.
# serial 1
dnl Usage:
dnl AM_INIT_AUTOMAKE(package,version, [no-define])
AC_DEFUN([AM_INIT_AUTOMAKE],
[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
AC_REQUIRE([AC_PROG_INSTALL])
PACKAGE=[$1]
AC_SUBST(PACKAGE)
VERSION=[$2]
AC_SUBST(VERSION)
dnl test to see if srcdir already configured
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
fi
ifelse([$3],,
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
AC_REQUIRE([AM_SANITY_CHECK])
AC_REQUIRE([AC_ARG_PROGRAM])
dnl FIXME This is truly gross.
missing_dir=`cd $ac_aux_dir && pwd`
AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir)
AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir)
AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
AC_REQUIRE([AC_PROG_MAKE_SET])])
# Copyright 2002 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# AM_AUTOMAKE_VERSION(VERSION)
# ----------------------------
# Automake X.Y traces this macro to ensure aclocal.m4 has been
# generated from the m4 files accompanying Automake X.Y.
AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"])
# AM_SET_CURRENT_AUTOMAKE_VERSION
# -------------------------------
# Call AM_AUTOMAKE_VERSION so it can be traced.
# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
[AM_AUTOMAKE_VERSION([1.4-p6])])
#
# Check to make sure that the build environment is sane.
#
AC_DEFUN([AM_SANITY_CHECK],
[AC_MSG_CHECKING([whether build environment is sane])
# Just in case
sleep 1
echo timestamp > conftestfile
# Do `set' in a subshell so we don't clobber the current shell's
# arguments. Must try -L first in case configure is actually a
# symlink; some systems play weird games with the mod time of symlinks
# (eg FreeBSD returns the mod time of the symlink's containing
# directory).
if (
set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
if test "[$]*" = "X"; then
# -L didn't work.
set X `ls -t $srcdir/configure conftestfile`
fi
if test "[$]*" != "X $srcdir/configure conftestfile" \
&& test "[$]*" != "X conftestfile $srcdir/configure"; then
# If neither matched, then we have a broken ls. This can happen
# if, for instance, CONFIG_SHELL is bash and it inherits a
# broken ls alias from the environment. This has actually
# happened. Such a system could not be considered "sane".
AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
alias in your environment])
fi
test "[$]2" = conftestfile
)
then
# Ok.
:
else
AC_MSG_ERROR([newly created file is older than distributed files!
Check your system clock])
fi
rm -f conftest*
AC_MSG_RESULT(yes)])
dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
dnl The program must properly implement --version.
AC_DEFUN([AM_MISSING_PROG],
[AC_MSG_CHECKING(for working $2)
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
if ($2 --version) < /dev/null > /dev/null 2>&1; then
$1=$2
AC_MSG_RESULT(found)
else
$1="$3/missing $2"
AC_MSG_RESULT(missing)
fi
AC_SUBST($1)])
# Like AC_CONFIG_HEADER, but automatically create stamp file.
AC_DEFUN([AM_CONFIG_HEADER],
[AC_PREREQ([2.12])
AC_CONFIG_HEADER([$1])
dnl When config.status generates a header, we must update the stamp-h file.
dnl This file resides in the same directory as the config header
dnl that is generated. We must strip everything past the first ":",
dnl and everything past the last "/".
AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
<<am_indx=1
for am_file in <<$1>>; do
case " <<$>>CONFIG_HEADERS " in
*" <<$>>am_file "*<<)>>
echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
;;
esac
am_indx=`expr "<<$>>am_indx" + 1`
done<<>>dnl>>)
changequote([,]))])
/* config.h.in. Generated from configure.ac by autoheader. */
/* config.h.in. Generated from configure.in by autoheader. */
/* Define to 1 if you have the `asprintf' function. */
#undef HAVE_ASPRINTF
......@@ -117,6 +117,9 @@
slash. */
#undef LSTAT_FOLLOWS_SLASHED_SYMLINK
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
......@@ -135,6 +138,9 @@
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Version number of package */
#undef VERSION
/* Define to 1 if your processor stores words with the most significant byte
first (like Motorola and SPARC, unlike Intel and VAX). */
#undef WORDS_BIGENDIAN
......
This diff is collapsed.
# Process this file with autoconf to produce a configure script.
AC_INIT(mp3check, 0.7.3, overmann@iname.com)
AC_CONFIG_SRCDIR([crc16.cc])
AC_CONFIG_HEADER([config.h])
AC_INIT(streplace)
AM_INIT_AUTOMAKE(mp3check,0.8.0)
AC_CONFIG_SRCDIR(mp3check.cc)
AM_CONFIG_HEADER(config.h)
# Checks for programs.
AC_PROG_CXX
......@@ -38,3 +39,9 @@ AC_CHECK_FUNCS([asprintf ftruncate memmove memset munmap strchr strdup strerror
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
echo "========================================================================"
echo "Now type"
echo " make"
echo or
echo ' make CXXFLAGS="-Wall -W -g"'
mp3check (0.8.0-4) unstable; urgency=low
* Apply patch to allow mp3check to compile with gcc 3.4. (Closes: #260651)
-- James Morrison <phython@debian.org> Sun, 25 Jul 2004 13:38:13 -0700
mp3check (0.8.0-3) unstable; urgency=low
* Don't write based the end of memory. (Closes: #227977)
-- James Morrison <phython@debian.org> Tue, 27 Jan 2004 20:15:07 -0500
mp3check (0.8.0-2) unstable; urgency=low
* Fix build issues on m68k, alpha and ia64.
-- James Morrison <phython@debian.org> Mon, 27 Jan 2003 19:24:27 -0500
mp3check (0.8.0-1) unstable; urgency=low
* Acknowledge NMU. (Closes: #143862)
* Limit the description lines in debian/control to 80 characters.
(Closes: 144750)
-- James Morrison <phython@debian.org> Sat, 18 Jan 2003 15:36:44 -0500
mp3check (0.7.3-4.1) unstable; urgency=high
* Put the binary back in. Closes: #143862 (NMU; patch in bug report)
......
......@@ -2,18 +2,18 @@ Source: mp3check
Section: sound
Priority: optional
Maintainer: James Morrison <phython@debian.org>
Build-Depends: debhelper (>= 3.0), autoconf
Standards-Version: 3.5.6.1
Build-Depends: debhelper (>= 3.0)
Standards-Version: 3.6.1.1
Package: mp3check
Architecture: any
Depends: ${shlibs:Depends}
Suggests: mpg321
Description: Check mp3 files for consistency
Check mp3 files for consistency and print several errors and warnings. List
stream attributes (color). Layer 1,2,3, mpeg1.0+2.0 are currently supported.
CRC check for layer 3.
Prints several errors and warnings concerning the consistency of mp3 files.
Lists stream attributes (color). Layer 1,2,3, mpeg1.0+2.0 are currently
supported. CRC check for layer 3.
.
mp3check is very useful for incomplete mp3 detection as it can be used to scan
through your mp3 collection and find all mp3s that aren't perfect. Good for use
with Napster and other bulk downloading of mp3s.
mp3check is very useful for incomplete mp3 detection as it can be used to
scan through your mp3 collection and find all mp3s that aren't perfect. Good
for use with many file sharing systems.
......@@ -3,11 +3,11 @@ Sat, 2 Sep 2000 22:26:01 +0200.
It was downloaded from http://www.0vermann.de/soft/mp3check/mp3check.html
Upstream Author(s): Johannes Overmann
Upstream Author: Johannes Overmann
Copyright:
You are free to distribute this software under the terms of the GNU
General Public Licence. On Debian GNU/Linux systems, the complete text
of the GNU General Public Licence can be found in the /usr/share/common-
licences/GPL file.
of the GNU General Public Licence can be found in the
/usr/share/common-licenses/GPL file.
THANKS
TODO
FAQ
CHANGES-Khali
HISTORY
webpage/mp3check.html
webpage/mp3check.jpg
webpage/mp3check2.jpg
......@@ -11,7 +11,6 @@ export DH_COMPAT=3
configure: configure-stamp
configure-stamp:
dh_testdir
autoconf
touch install-sh # ensure this file exists.
# Add here commands to configure the package.
./configure --prefix=/usr --mandir=\$${prefix}/share/man
......@@ -34,7 +33,6 @@ clean:
# Add here commands to clean up after the build process.
-$(MAKE) distclean
rm -rf configure autom4te.cache
dh_clean
......@@ -62,7 +60,7 @@ binary-arch: build install
dh_installcron
dh_installman mp3check.1
dh_installinfo
dh_installchangelogs
dh_installchangelogs
dh_link
dh_strip
dh_compress
......
#!/bin/sh
#
# install - install a program, script, or datafile
# This comes from X11R5 (mit/util/scripts/install.sh).
#
# Copyright 1991 by the Massachusetts Institute of Technology
#
# Permission to use, copy, modify, distribute, and sell this software and its
# documentation for any purpose is hereby granted without fee, provided that
# the above copyright notice appear in all copies and that both that
# copyright notice and this permission notice appear in supporting
# documentation, and that the name of M.I.T. not be used in advertising or
# publicity pertaining to distribution of the software without specific,
# written prior permission. M.I.T. makes no representations about the
# suitability of this software for any purpose. It is provided "as is"
# without express or implied warranty.
#
# Calling this script install-sh is preferred over install.sh, to prevent
# `make' implicit rules from creating a file called install from it
# when there is no Makefile.
#
# This script is compatible with the BSD install script, but was written
# from scratch. It can only install one file at a time, a restriction
# shared with many OS's install programs.
# set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it.
doit="${DOITPROG-}"
# put in absolute paths if you don't have them in your path; or use env. vars.
mvprog="${MVPROG-mv}"
cpprog="${CPPROG-cp}"
chmodprog="${CHMODPROG-chmod}"
chownprog="${CHOWNPROG-chown}"
chgrpprog="${CHGRPPROG-chgrp}"
stripprog="${STRIPPROG-strip}"
rmprog="${RMPROG-rm}"
mkdirprog="${MKDIRPROG-mkdir}"
transformbasename=""
transform_arg=""
instcmd="$mvprog"
chmodcmd="$chmodprog 0755"
chowncmd=""
chgrpcmd=""
stripcmd=""
rmcmd="$rmprog -f"
mvcmd="$mvprog"
src=""
dst=""
dir_arg=""
while [ x"$1" != x ]; do
case $1 in
-c) instcmd="$cpprog"
shift
continue;;
-d) dir_arg=true
shift
continue;;
-m) chmodcmd="$chmodprog $2"
shift
shift
continue;;
-o) chowncmd="$chownprog $2"
shift
shift
continue;;
-g) chgrpcmd="$chgrpprog $2"
shift
shift
continue;;
-s) stripcmd="$stripprog"
shift
continue;;
-t=*) transformarg=`echo $1 | sed 's/-t=//'`
shift
continue;;
-b=*) transformbasename=`echo $1 | sed 's/-b=//'`
shift