New features with AN-2017-11-21:

This is the first localization step for the schily source consolidation. Many
programs now (hopefully) call gettext() for all strings that need localization.

-	The next step will include dgettext() calls for the libraries and the
	missing programs

-	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 the tools should *****
*****		call all programs 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.		   *****

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

	*** Due to the fact that schily-tools 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, call:

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


	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 thoroughly.
		Please report problems!

	The new smake version mentioned above is smake-1.2.4

-	libschily: format() (the printf worker) now supports the floating
	point formats: 'E', 'F', 'G'.

-	printf: Added a new standalone printf implementation based on the
	file printf.c from the Bourne Shell. It aims to be compatible with
	both POSIX and the Solaris /usr/bin/printf. This allows to replace
	the closed source printf from Solaris by our printf implementation.

-	Schily.Copyright updated

-	Bourne Shell: The printf implementation was extended:

	-	Support for floating point numbers has been added to make it
		compatible to the Solaris printf.

		The format specifiers 'e', 'E', 'f', 'F', 'g', 'G' are now
		supported.

		If you like to avoid floating point support in the shell,
		comment out:

			CPPOPTS += -DDO_SYSPRINTF_FLOAT

		in  sh/Makefile

	-	Support for %n$ has been added. This does much more than the
		closed source Solaris printf as the Solaris printf only supports
		string parameters and not integers and as the Solaris
		implementation only supports up to 20 parameters.

-	Bourne Shell test suite: tests for floating point numbers have been added

-	Bourne Shell test suite: tests for "printf %n$" have been added

-	Bourne Shell: A bug with the string stack handling in the printf
	builtin bas been fixed.

-	Bourne Shell: A defective PS1 macro could cause a virtual endless loop
	in case that e.g. a .profile script for ksh93 was loaded and contains
	unsupported macro expansions. We no longer execute a longjmp() to just
	before the prompt, but just let the PS1 prompt expansion fail with an
	error message.

-	Bourne Shell: "set +X" did not cause an error message. This is a bug
	that was probably introduced in 1981 already - when support for
	"set +" has been introduced.

	Thanks to Robert Elz for reporting.

-	Bourne Shell: the function prs_cntl() (used in many error printing
	functions) did overwrite the buffer that is used for general output
	buffering. This did clobber the printf output in case that the
	conversion of printf parameters caused warnings.

-	Old Bourne Shell (osh): a few conformance tests have been added

-	star: When in list or diff mode on an "exustar" typed archive, star did
	believe a hardlinked symlink is both hardlink and symlink but only the
	hardlink target is present in the archive. We thus only list or compare
	the hardlink now.



-	Bourne Shell Missing features for POSIX compliance:

	- Support for $'...' quoting (this is not needed for the current
					version of POSIX but for the next POSIX
					version that will be named SUSv8).
					The development of SUSv8 will start in
					late 2016.

	We are now expecting the Bourne Shell to be fully POSIX compliant.

-	Bourne Shell further TODO list:

	-	Finish loadable builtin support.

	-	POSIX does not allow us to implement ". -h", so we will
		add a "source" builtin to be able to implement "source -h"

-	The following builtins (that are available in bsh) are still missing in
	the Bourne Shell:

	err			echo with output going to stderr
	glob			echo with '\0' instead of ' ' between args
	env			a builtin version of /usr/bin/env

	The following bsh intrinsics are still missing in the Bourne Shell:

	-			the restricted bsh has restriction features that
				are missing in the Bourne shell.

	-	source -h	read file into history but do not execute

	and probably more features not yet identified to be bsh unique.



Author:

Joerg Schilling
D-13353 Berlin
Germany

Email: 	joerg@schily.net, js@cs.tu-berlin.de
	joerg.schilling@fokus.fraunhofer.de

Please mail bugs and suggestions to me.