---------------------------------------------------------------
| id3 mass tagger v0.79
-------------------------------------------------------------

the contents of the source distribution:

 COPYING        - license
 INSTALL        - ... ? :)
 README         - program documentation
 CHANGES        - changelog

 makefile       - generic (gnu) makefile
 makefile.dj    - makefile for djgpp2
 makefile.bcc   - makefile for borland c++
 makefile.nmk   - makefile for microsoft c++

 main.cpp       - main program file                             (C++)
 pattern.*      - + automatic variables                         (C++)
 sedit.*        - string formatting                             (C++)
 set_base.h     - abstract patch class                          (C++)
 setid3.*       - + id3v1 implementation                        (C++)
 getid3.*       - + id3v1 reader                                (C++)
 setid3v2.*     - + id3v2 implementation                        (C++)
 getid3v2.*     - + id3v2 reader                                (C++)
 setlyr3.*      - + lyrics3 implementation                      (C++)
 getlyr3.*      - + lyrics3 reader                              (C++)
 setfname.*     - + file renamer/handler                        (C++)
 setquery.*     - + stdout formatter                            (C++)
 setgroup.h     - + combiner                                    (C++)
 varexp.*       - wildcard/pattern matching class               (C++)
 fileexp.*      - filefinder/matcher                            (C++)
 mass_tag.*     - + tagging engine                              (C++)
 charconv.*     - character conversion                          (C++)
 char_ucs.*     - + utf16 encoding                              (C++)
 char_utf8.*    - + utf8 encoding                               (C++)
 utf8.h         - stand-alone utf8 encoder/decoder              (C++)
 auto_dir.h     - smart dirent pointer class                    (C++)

 id3v1.*        - definitions & data relevant to ID3v1 tag data (C)
 id3v2.*        - basic ID3v2 reading/writing interface         (C)
 fileops.*      - auxiliary file functions                      (C)
 lyrics3.*      - Lyrics3v2 interface                           (C++)

 id3.man        - raw man page                                  (troff -man)

 debian/        - Debian files for creating a .deb package
 rpm/           - RPM specfile for creating a .rpm package

---------------------------------------------------------------
| (c) squell 2003-2015 - copyright notice
-------------------------------------------------------------

All files in this package are copyrighted. This is NOT public domain software.

This software comes under a FreeBSD style license, which (in short) means you
can pretty much do with it as you please (including redistribution under
another license such as the GNU GPL), as long as copyright is acknowledged.

It also means you can't sue me if anything terrible happens.

For the actual licensing conditions you should read the file 'COPYING',
which should be included in this source distribution.

---------------------------------------------------------------
| building and installing using a package manager
-------------------------------------------------------------

Files are included for building packages for .deb and .rpm-based Linux 
distributions, and FreeBSD. The package will identify itself as `id3mtag'.

* .deb (Debian/Ubuntu)

From the source tree, run:
> dpkg-buildpackage -b

This should create a .deb file in the parent directory.

* .rpm (Fedora/CentOS)

The simplest way is to simply run:
> rpmbuild -ta id3-0.79.tar.gz

Then look in your RPM build area ($HOME/rpmbuild)

* FreeBSD

Install audio/id3mtag from the ports collection.

---------------------------------------------------------------
| building and installing manually
-------------------------------------------------------------

Successfully compiled with (non-exhaustive list):

 - GCC 4.x, 5.0
 - Clang 3.x
 - Microsoft C/C++ 16.x/18.x
 - Borland/Embarcadero C++ 5.5/6.90
 - Oracle/Sun C++ 5.13, using STLport4

This program is mostly written in portable ISO C90/C++03 so basically all
you need is a standards-compliant C/C++ compiler.

===
Makefiles

Pick the makefile you need and rename it to 'makefile' or use 'make -f':

  'makefile'  is meant for generic GNU/BSD systems. You will have to edit it
  if you want to/need to use different settings. (You can also use this
  file for building with mingw32-make)

  The predefined CFLAGS and CXXFLAGS settings are tuned to gcc 3.x. Do not
  use -fno-rtti when compiling with gcc 2.95.

  'makefile.dj'  is for DOS systems using DJGPP v2

  'makefile.nmk'  is for building a Win32 executable with VisualStudio `nmake'

  'makefile.bcc'  is for building a Win32 executable with C++Builder `make'

===
Standard makefile targets:

 make id3           - fully enabled executable (default)
 make id3l          - id3v1 only executable
 make all           - both executables
 make final         - same as all, but tries to strip / pack the executables
 make clean         - removes all files produced by make

'final' assumes you have UPX (http://upx.sourceforge.net/) installed on
Win32/DOS systems.

Generic GNU/BSD makefile targets & variables:

 make install       - installs the program
 make install-strip - like install, but strips executable of debug info
 make install-full  - also installs the documentation in $(datadir)/doc
 make uninstall     - uninstall (does not remove documentation)
 make help          - lists all makefile targets and variables

Because id3 does not have a configure script (yet), you can set
these variables only on the 'make' commandline:

 prefix             - the prefix directory       (def. "/usr/local")
 bindir             - dir for binaries           (def. "$(prefix)/bin")
 mandir             - dir for manpages           (def. "$(prefix)/man")
 datadir            - dir for shared files       (def. "$(prefix)/share")
 binary             - the binary to install      (def. "id3")

E.g: "make install prefix=$HOME" to install in $HOME/bin instead. See inside
'makefile' or try `make help' for more details (and more variables).

---------------------------------------------------------------
| useful links
-------------------------------------------------------------

(Win32) Minimalist GNU for Windows:
  http://www.mingw.org/

---------------------------------------------------------------
| contact: squell@alumina.nl
-------------------------------------------------------------

