cdrtools Changelog

New in version 3.01 Alpha 22

January 21st, 2014
  • All:
  • include/schily/varargs.h now includes a new type va_lists_t that is a structure that covers va_list.
  • include/schily/getargs.h now has comment for the arguments and return code of the getargs() callback functions.
  • The schily makefilesystem now includes a new symlink ppc64le-linux-cc.rul for non-automake aware make implementations such as gmake.
  • New autoconf tests for strspn() strcspn() wcsspn() wcscspn()
  • Libschily:
  • libschily now implements strspn() strcspn() wcsspn() wcscspn()
  • libschily/format.c (the low level printf() implementation) now implements support for %n$ argument repositioning for the case that "n" is 1..30, or if larger points to an int type arg.
  • libschily/fprformat.c fixed a bug that would prevent to use stdio macros with newer OpenSolaris versions, making printf() not as fast as expected.
  • Libsiconv:
  • sic_open() no longer tries to open all characterset names as files in the current directory but only if the name contains a slash.

New in version 3.01 Alpha 21 (January 6th, 2014)

  • All:
  • Define DEV_NULL in include/schily/mconfig.h to address the missing /dev/null on DOS
  • New autoconf tests for: getc_unlocked getchar_unlocked putc_unlocked putchar_unlocked flockfile funlockfile ftrylockfile
  • Symlinks for armv4tl-linux-cc.rul s390x-linux-cc.rul armv5tel-linux-cc.rul new, to support non-automake aware make programs such as gmake.
  • Do not define a gethostname() prototype in schily/hostname.h for MinGW, as MinGW as a wrong prototype is in the non-standard file winsock.h
  • include/schily/stdio.h now implements code that partially unhides the FILE * data structures from the 64 bit Solaris libc. This allows to implement a getc_unlocked() macro even for 64 bit Solaris as done by libc, so libschily is able to achieve similar stdio I/O performance, which is needed to be able to implement a printf() in libschily that is faster than printf() from libc.
  • Libschily:
  • New functions xcomerr(), xcomerrno(), fxcomerr(), fxcomerrno() in libschily allow error message and exit with an exit value that differs from errno.
  • a bug in libschily/format.c that caused %.*s to be printed incorrectly has been fixed.
  • libschily/format.c has been redesigned to allow the code to be reused for fprformat() via #include.
  • libschily/fprformat.c New function fprformat() in libschily is implementing the same direct interface as doprnt() from libc and thus allows to implement printf() faster than the printf() from libc on Solaris.
  • libschily/jsprintf.c For Solaris, jsprintf() now is implemented based on fprformat(). This allows printf() from libschily to be aprox. 33% faster than printf() from libc on Solaris and aprox. 2x as fast as jsprintf() in libschily has been before. This gives another performance boost for printf() bound programs like hdump/od that is used as a OSS replacement for the closed source od(1) on OpenSolaris. This now makes the OSS od(1) on OpenSolaris typically 5x faster then the closed source version.
  • libschily/getdtablesize.c now treats MinGW the same as when compiling on Win-DOS using cl.exe.
  • libschily/mkdirat.c and libschily/mkdirs.c now take care of the fact that MinGW has a non standard compliant mkdir()
  • libschily/mkfifoat.c fixed a type from, cut/paste the file from mkdirat.c
  • Cdrecord:
  • cdrecord/cue.c now has a better comment related to cdrtools specific CUE enhancements.
  • Fixed a typo in cdrecord.dfl
  • Cdda2wav (Maintained/enhanced by Jörg Schilling, originated by Heiko Eißfeldt
  • Avoid a redefined xxx warning for cdda2wav/exitcodes.h
  • Added a #undef interface to cdda2wav/interface.h to make sure that the #define interface from windows.h does not cause problems even when using MinGW
  • Mkisofs:
  • mkisofs/mkisofs.8 fixed illegal troff sequence "\\" to "\e"
  • Try to avoid a direct string "/dev/null" in mkisofs.c to allow it to work on Win-DOS without POSIX layer.

New in version 3.01 Alpha 20 (December 27th, 2013)

  • All:
  • New Schily Makefiles rules for armv7l-linux
  • autoconf/ now treats MinGW32 the same as when compiling with cl.exe
  • Libschily:
  • libschily::format.c (printf) now supports length modifiers like h hh l ll t z for the %n format.
  • libschily::format.c has been restructured for parsing the field width parameters in a way that would allow to later introduce support for %n$
  • Try to take care about the fact that MinGW32 does not support a standard compliant mkdir() function with two parameters. This applies top libschily/mkdirat.c and libschily/mkdirs.c
  • Corrected a typo in libschily/mkfifoat.c that called mkdir() instead of mkfifo()
  • libschily/getdtablesize.c needs the same treatment for MinGW32 as for cl.exe
  • Libparanoia:
  • libparanoia now implements the first stage in C2 error pointer support: it now is able to deal with input data that contains C2 pointers and it implements new callbacks to report C2 statistics back to the caller.
  • libparanoia now supports to control the size of the read ahead buffer. This allows libparanoia to be adopted to the current constraints.

New in version 3.01 Alpha 19 (November 23rd, 2013)

  • This version added different fine-grained privilege handling that keeps root privileges in cases where cdrtools have been called by a privileged program.
  • Libfind now supports "event port" type files.
  • Clashes with an outdated cdda_paranoia.h file in /usr/local/include/ as seen on FreeBSD are now avoided.
  • Emulations for *at() functions have been added to libschily.

New in version 3.01 Alpha 18 (October 18th, 2013)

  • Added rules for non-automake enabled make programs (like gmake) for: ppc64-linux-cc.rul and ppc64-linux-gcc.rul.
  • Added new OS version ID rules for various WIN-DOS versions:
  • New autoconf test in whether struct timespec is defined.
  • Various Cstyle changes in the include/schily directory.
  • New include file: include/schily/shedit.h.
  • Make sure that include/schily/time.h always includes a struct timespec definition.
  • New functions getnstimeofday() and setnstimeofday().
  • Added defltsect() to the list of exported functions for the shared library version.
  • Fixed a filedesrciptor leak in libfind that hits when using -empty on empty directories.
  • Fixed fine grained privilege handling for Linux. Thanks for Daniel Pielmeier from Gentoo for reporting and testing.

New in version 3.01 Alpha 17 (August 6th, 2013)

  • The Schily Makefilesystem no longer uses CC= for internal tasks.
  • Automatic support has been added for ARMv5 and ARMv6.
  • This makes compilation on the RaspberryPI also possible with the non-automake aware gmake.
  • Allows "static" compilation (compilation that does not use the dynamic defines from the Schily Makefilesystem) on Linux ARMv6 (which is used by RaspberryPI).
  • Many sources have been modified to handle __CYGWIN32__ as __CYGWIN__
  • This is needed as newer Cygwin versions that run in 64-bit mode no longer define __CYGWIN32__ but __CYGWIN__.

New in version 3.01 Alpha 16 (July 11th, 2013)

  • This version fixes a bug in libparanoia that caused too small array initialization.
  • The OpenCSW build environment was updated to the last release.
  • This release allows "static" compilation for Linux x86 for cdrtools library users.
  • The include files from the Schily portability environment have been restructured.

New in version 3.01 Alpha 15 (June 3rd, 2013)

  • On Linux and Solaris, this release will warn you if necessary fine-grained permissions are missing.
  • It works around a FreeBSD 9.1 bug that prevented compilation of cdda2wav.
  • mkisofs compiles without -DUDF and without -DDVD_VIDEO.

New in version 3.01 Alpha 14 (April 23rd, 2013)

  • A typo in include/schily/stat.h related to nanosecond handling on NetBSD and OpenBSD was fixed.
  • suid-root-less installation is now supported on Linux using fcaps (generally available since Linux 2.6.24).
  • -new-dir-mode in mkisofs now just supersedes the effect of -dir-mode on directories that have been "invented" by mkisofs.