***************** Important news ****************************

For the 'Slottable Source Plugin Module' SSPM Features read README.SSPM

***************** Please Test *********************************

NEW features of cdrtools-3.01a29:

This is the first localization step for cdrtools. All programs now (hopefully)
call gettext() for all strings that need localization.

-	The next step will include dgettext() calls for the libraries.

-	The following step will include the extracted strings

-	The last step will include German translations and install support
	for the resulting binary message object files.

----------> Please test and report compilation problems! <---------

***** NOTE: As mentioned since 2004, frontends to cdrtools should *****
*****		call all programs from cdrtools in the "C" locale *****
*****		by e.g. calling: LC_ALL=C cdrecord ....		  *****
*****		unless these frontends support localized strings  *****
*****		used by the cdrtools with NLS support.		  *****

This version compiles on Win-DOS using the Microsoft compiler cl.exe but
warning: due to missing POSIX compliance with basic features (e.g. stat()
does not return inode numbers), there are many problems with the resulting
code and thus it is recommended to better use a POSIX layer on top of 
WIN-DOS.

		*** WARNING        ***
		*** Need new smake ***

	*** Due to the fact that schily-2014-04-03 introduced to use new macro
	*** expansions and a related bug fix in smake, you need a new smake
	*** to compile this source. To ensure this, get a recent "schily"
	*** tarball from http://sourceforge.net/projects/schilytools/files/
	*** and call:

	cd ./psmake
	./MAKE-all
	cd ..
	psmake/smake
	psmake/smake install

	The new smake version mentioned above is smake-1.2.4.
	Note that smake-1.2.5 exists and is preferrable.

	Now you have a new smake that is able to compile this source.

	Note that the major makefile restructuring introduced in
	schily-2014-04-03 is now more than am month ago and thus seems
	to work without problems.

	WARNING: the new version of the isoinfo program makes use of the 
		*at() series of functions that have been introduced by Sun
		in August 2001 and added to POSIX.1-2008. For older platforms,
		libschily now includes emulations for these functions but
		these emulations have not yet been tested thouroughly.
		Please report problems!

All:

-	include/schily/sysexits.h adopts to the recent changes on Haiku that
	prevent usual autoconf tests as #include <sysexits.h> works but symbols
	are only defined with #define _BSD_SOURCE

-	include/schily/wait.h now knows about the Haiku specific macro
	WIFCORED() and #defines WCOREDUMP() to WIFCORED().

-	Support for x86_64-haiku-cc.rul and x86_64-haiku-gcc.rul was added
	to the makefile system.

-	The file RULES/r-gmake.dep was modified to make sure that the 
	dependency files (*.d) depend from the include files as well.
	Previous versions included xxx.d instread of $(ARCHDIR)/xxx.d

-	Makefile system: two new targets have been addes:

	man		creates localized versions of the man pages in the
			OBJ directory

	installman	installs only the manual pages

Libschily:

-	New function j_error() works where error() is to generic.

-	make strlcatl() and wcslcatl() work with K&R compilers

-	libschily/getargs.c now is more careful with calling va_arg()
	and only calls it as many times as a related format is found in the
	format string.

-	libschily now contains a getdelim() implementation and always uses
	getdelim() to implement the fgetaline() function.

-	libschily: the *mem.c implementations now include new *mexval()
	functions to set the exit code on failure to a static value instead
	of the default "errno" value for the failure.

-	libschily: the linker map file now also lists the forgotten new entries:
	strlcatl() and wcslcatl()

-	libschily/spawn.c:wait_chld() no longer returns 0 if the child process
	was killed by a signal.

-	libschily now adds some of the existing (old) man pages for various
	functions from libschily.

Libcdrdeflt:

Libdeflt:

Libedc (Optimized by Jörg Schilling, originated by Heiko Eißfeldt heiko@hexco.de):

Libfile:

Libfind:

-	libfind/idcache.c now saves uname/gname as long as possible and uses
	strlcpy() instead of strncpy().

-	libfind: the forgotten entries find_hasexec() and find_hasprint()
	have been added to the linker map file

Libhfs_iso:

Libmdigest:

Libparanoia (Ported/enhanced by Jörg Schilling, originated by Monty xiphmont@mit.edu):

Libscg:

Libscgcmd:

Libsiconv:

-	libsiconv: the forgotten sic_base() was added to the linker map file

Rscsi:

Cdrecord:

-	The programs cdrecord adopts to the recent Haiku
	changes with a randomized address space and now use B_EXACT_ADDRESS
	instead of B_ANY_ADDRESS for the clone_area() call to get shared memory
	for a FIFO.

Cdda2wav (Maintained/enhanced by Jörg Schilling, originated by Heiko Eißfeldt heiko@hexco.de):

-	The programs cdda2wav adopts to the recent Haiku
	changes with a randomized address space and now use B_EXACT_ADDRESS
	instead of B_ANY_ADDRESS for the clone_area() call to get shared memory
	for a FIFO.

Readcd:

Scgcheck:

Scgskeleton:

Btcflash:

Mkisofs (Maintained/enhanced by Jörg Schilling since 1997, originated by Eric Youngdale):

-	mkisofs: isodump did not compile on non c99 compilers.


HELIOS TODO:

	-	Add the HELIOS UNICODE mapping code. This needs to be done 
		at UCS-2 level for Joliet and UDF (instead of UTF-8) and only
		for Rock Ridge (in case of a UTF-8 based target locale) using
		UTF-8 based translations.

	-	Make the Apple extensions work again with "mkisofs -find"

TODO:

	-	read Joliet filenames with multi-session if no TRANS.TBL
		or RR is present. I am looking for a volunteer for this task!

		Note that this can never be 100% correct as there is no relation
		between the names on the master (UNIX) filesystem, the ISO-9660
		names and the Joliet names. Only the Rock Ridge names are
		untranslated with respect to the original files on the
		master (UNIX) filesystem.

	-	add libecc/edc for CDI and similar.


CYGWIN NT-4.0 NOTES:

To compile on Cygwin32, get Cygwin and install it.
For more information read README.win32

The files are located on:

http://sourceforge.net/projects/cdrtools/files/alpha/ ...

NOTE:	These tar archives are 100% POSIX compatible. GNU tar may get some
	minor trouble. If you like a 100% POSIX compliant tar, get star from
	http://sourceforge.net/projects/s-tar/files/ of from the schily-*
	tarball at: http://sourceforge.net/projects/schilytools/files/

WARNING: Do not use 'winzip' to extract the tar file!
	Winzip cannot extract symbolic links correctly.

Joerg
