All:
- The file COPYING has been reworded to be more obvious with
explaining work limits.
- A workaround for a bug in llvm-gcc-4.2 has been introduced in
inc/avoffset.c. The llvm-gcc-4.2 bug caused an endless loop at an
unexpected place.
- New target "htmlxn" to only rebuild html versions of man pages
only in case there was a change
- The CSW packaging definitions in the schily makefilesystem was
enhanced to permit referencing files in the package definition directory
- include/schily/sigset.h added new macros: blocked_sigs(),
block_sigs()
- include/schily/fcntl.h now includes O_SEARCH for POSIX.1-2008 compliance.
- Schily autoconf now tests for the size of mode_t, uid_t, gid_t, pid_t,
dev_t, major_t, minor_t
- Schily autoconf now defines a promoted type for mode_t that can be
used together with varargs. This is needed as mode_t is smaller than
int on some systems.
- New autoconf tests for getdelim() and strncasecmp()
- Added a workaround for a auto-dependency creation bug in the HP-UX
c-compiler that resulted in wrong dependency files for all files
in libshcily/stdio/ and for these files prevented an automated
recompilation in case that an include file was changed.
- Added links for:
amd64-freebsd-cc.rul
amd64-freebsd-gcc.rul
amd64-openbsd-cc.rul
amd64-openbsd-gcc.rul
x86_64-darwin-cc.rul
x86_64-darwin-gcc.rul
x86_64-darwin-cc64.rul
x86_64-darwin-gcc64.rul
x86_64-darwin-cc32.rul
x86_64-darwin-gcc32.rul
- RULES/rules.loc now makes $(PTARGET) to depend on $(ARCHDIR) to
support make -j 2
- New include files include/schily/inttypes.h and include/schily/stdint.h
- The script conf/makeinc is no longer confused by OpenBSD
that has man.7 and mandoc.7 and both match on man*
Libschily:
- New functions strstr() and wcsstr()
- New libschily::fgetaline() and libschily::getaline() implement the
functionality of the POSIX violating "getline()" from POSIX.1-2008.
- New file libschily/abspath.c
- New file libschily/resolvepath.c
- New file libschily/mkdirs.c
- An openat() emulation was added to libschily for platforms that
miss openat().
- An fchdir() emulation was added to libschily for platforms that
miss fchdir()
- libschily/at-defs.h new support file for internals from the *at()
emulation
- libschily/lxchdir.c new file to support chdir() to long
path names
- libschily/procnameat.c new file to support *at() functions in case
that a newer /proc file system implementation is available
- libschily/savewd.c new file to support to save the current working
directory regardless of whether fchdir() is present or not.
- libschily/wdabort.c new file with abort functions that are needed
in libschily for the case that no system fchdir is available and
an attempt to emulate *at() functions fails
- New functions strcasecmp() and strncasecmp() for libschily.
- New functions diropen() dirrdopen() dirclose() for libschily.
These functions are needed in order to emulate fchdir() on platforms
that do not support fchdir().
- file_raise(NULL, FALSE) now also affects files that have been
opened before the file_raise() call.
Libdeflt:
- The function defltcntl() in libdeflt is now working and allows to
select a case insensitive mode.
- New function defltsect() in libdeflt allows to create sub-sections
in configuration files. These subsections need to be named:
"[section-name]" and the '[' must be at the beginning of a line.
Libfind:
- libfind/walk.c now uses O_SEARCH to open directories
Cdrecord:
- cdrecord man page corrected some small typos in the EXAMPLES section.
- cdrecord has been converted to be able to run completely root-less
and suid-root-less and with no script that calls pfexec(1). This
works on OpenSolaris ONNV_140 or later because the functionality
of pfexec(1) has been integrated into the kernel.
To enable this feature. edit the file /etc/security/exec_attr and add:
Basic Solaris User:solaris:cmd:::/usr/bin/cdrecord:privs=file_dac_read,sys_devices,proc_lock_memory,proc_priocntl,net_privaddr
or
Basic Solaris User:solaris:cmd:::/opt/schily/bin/cdrecord:privs=file_dac_read,sys_devices,proc_lock_memory,proc_priocntl,net_privaddr
depending on where you install cdrecord.
No special shell is needed anymore.
Cdda2wav (Maintained/enhanced by J
- cdda2wav has been converted to be able to run completely root-less
and suid-root-less and with no script that calls pfexec(1). This
works on OpenSolaris ONNV_140 or later because the functionality
of pfexec(1) has been integrated into the kernel.
To enable this feature. edit the file /etc/security/exec_attr and add:
Basic Solaris User:solaris:cmd:::/usr/bin/cdda2wav:privs=file_dac_read,sys_devices,proc_priocntl,net_privaddr
or
Basic Solaris User:solaris:cmd:::/opt/schily/bin/cdda2wav:privs=file_dac_read,sys_devices,proc_priocntl,net_privaddr
depending on where you install cdda2wav.
No special shell is needed anymore.
Readcd:
- readcd has been converted to be able to run completely root-less
and suid-root-less and with no script that calls pfexec(1). This
works on OpenSolaris ONNV_140 or later because the functionality
of pfexec(1) has been integrated into the kernel.
To enable this feature. edit the file /etc/security/exec_attr and add:
Basic Solaris User:solaris:cmd:::/usr/bin/readcd:privs=file_dac_read,sys_devices,net_privaddr
or
Basic Solaris User:solaris:cmd:::/opt/schily/bin/readcd:privs=file_dac_read,sys_devices,net_privaddr
depending on where you install readcd.
No special shell is needed anymore.
All:
- A new rule RULES/profiled.lnk allows to call:
smake COPTX=-pg LDOPTX=-pg LINKMODE=profiled
to create binaries that use gprof.
- The Makefile System is now able to switch gmake-3.82 into a more POSIX
compliant mode to tell the shell to report problems back to gmake.
- New autocof tests on whether printf supoorts %lld and %jd
- Fixed the vc9-setup files to make VC9 work.
- Newer Cygwin "tail" versions do no longer support UNIX syntax.
change tail +2 to tail -n +2 in RULES/cc-mcs.rul to allow to use
the Microsoft compiler again
- A new environment variable MKLINKS_COPY allows to tell all
MKLINS scripts to generate file copies rather than symlinks.
Call:
MKLINKS_COPY=true
export MKLINKS_COPY
to enable this feature
- Run an additional test -h command in MKLNKS to verify whether mingw
supports symlinks
- MKLINKS now creates copies instead of symlink when we use MSC
as MSC does not support to read symlinks files
- Fixed a typo in include/schily/libport.h (group functions have been
defined to return struct passwd* instead of struct group*
- Fixed wrong bracketing for C++ in include/schily/stdlib.h
- Fixed wrong bracketing for C++ in include/schily/utypes.h
- Added a workaround for MSC to include/schily/utypes.h
MSC believes that a 32 bit int and a 32 bit long are incompatible
and cannot even be casted, so we need to make uint32_t a n unsigned long
- Let include/schily/archdefs.h define the standard processor #defines
when compiling with MSC.
- New include file include/schily/windows.h works around the oddities
from the MSC include file windows.h
- include/schily/stdio.h now defines popen()/pclose() to _popen()/_pclose()
if on WIN-DOS
- include/schily/limits.h now defines PIPE_BUF
- include/schily/utsname.h now defines struct utsname for our MSC uname()
emulation.
- The setup for the PATHs needed by Visual Studio 9 has been
corrected.
- autoconf has been modified to avoid optimizing away code that
is intended for testing. This help to work against a problem
with detecting mbrtowc() on MinGW
- autoconf now tests for mbtowc() and wctomb()
- RULES/i*86-mingw32_nt-gcc.rul now link against -lmingw32 instead
of -lmgw32.
- include/schily/stat.h now defines S_IREAD/S_IWRITE/S_IEXEC
These macros are available on typical UNIX systems but not
on Android. The definition comes from UNIX V7 and is not in
POSIX. Needed by SCCS and the Bourne Shell
- include/schily/wait.h now defines WIFCONTINUED() if needed
- include/schily/wchar.h now defines mbtowc() to mbrtowc() if
needed (e.g. on Android)
- include/schily/ccomdefs.h now correctly knows about the GCC
release that introduced __attribute__ (used).
- Android is not POSIX (by not defining various functions as functions
in libc as required by POSIX) because it tries to define many
functions that are part of the standard as inline macros in
include files only. This breaks autoconf, so we needed to rewrite
some tests (e.g for getpagesize, tcgetpgrp, tcsetpgrp)
- The Schily autoconf system has been enhanced to support cross
compilation. Schily autoconf is based on GNU autoconf and
GNU autoconf does not support cross compilation because it needs
to run scripts on the target system for some of the tests.
The "configure" script that is delivered with the Schily makefile
system runs 718 tests and 68 of them need to be run on the target
system.
The Schily autoconf system now supports a method to run these 65
tests natively on a target system. You either need a machine with
remote login features or you need an emulator with a method to
copy files into the emulated system and to run binaries on the
emulated system as e.g. the Android emulator.
We currently deliver three scripts for "remote" execution of
programs on the target system:
runrmt_ssh runs the commands remove via ssh
runrmt_rsh runs the commands remove via rsh
runrmt_android runs the commands remove via the debug bridge
If you need to remotely run programs on a system that is not
supported by one of there three scripts, you need to modify one
of them to match your needs.
To enable Cross Compilation use the following environment variables:
CONFIG_RMTCALL= Set up to point to a script that does
the remote execution, e.g.:
CONFIG_RMTCALL=`pwd`/conf/runrmt_ssh
CONFIG_RMTHOST= Set up to point to your remote host, e.g.:
CONFIG_RMTHOST=hostname
or
CONFIG_RMTHOST=user@hostname
use a dummy if you like to use something
like to the Android emulator.
CONFIG_RMTDEBUG= Set to something non-null in order to
let the remote execution script mark
remote comands. This will result in
configure messages like:
checking bits in minor device number... REMOTE 8
Note that smake includes automake features that automatically
retrieve system ID information. For this reason, you need to overwrite
related macros from the command line if you like to do a
cross compilation.
Related make macros:
K_ARCH= # (sun4v) Kernel ARCH filled from uname -m / arch -k
M_ARCH= # (sun4) Machine filled from arch
P_ARCH= # (sparc) CPU ARCH filled from uname -p / mach
OSNAME= # sunos, linux, ....
OSREL= # 5.11
OSVERSION= # snv_130
CCOM= # generic compiler name (e.g. "gcc")
CC_COM= # compiler to call (name + basic args)
ARCH= overwrites M_ARCH and P_ARCH
It is usually suffucient to set ARCH and OSNAME.
In order to use a cross compiler environment instead of a native compiler,
set the make macro CC_COM to something different than "cc".
If you are on Linux and like to compile for Android, do the following:
1) set up CC acording to the instructions from the cross compiler
tool chain
2) set environment variables CONFIG_RMTCALL / CONFIG_RMTHOST, e.g.:
setenv CONFIG_RMTCALL `pwd`/conf/runrmt_android
setenv CONFIG_RMTHOST NONE
3) call smake:
smake ARCH=armv5 OSNAME=linux CCOM=gcc "CC_COM=$CC"
- Several programs no longer test for HAVE_DEV_* but for HAVE__DEV_*
as we did switch from hand written tests for /dev/tty, /dev/null
and similar to AC_CHECK_FILES(/dev/tty /dev/null /dev/zero)
- The Makefile system now links dynamic libraries on Mac OS X against
libgcc_s.1 instead of libgcc.
Libschily:
- New function permtostr() in libschily allows to convert a
mode_t like stat.st_mode into a chmod compliant string like:
u=rw,g=r,o=r
that is accepted by libschily::getperm() to allow a conversion
back to a mode_t variable.
- libschily::rename() now uses mktemp() to temorarily save the
rename target file.
- comerr() now maps exit codes that would fold to '0' to EX_CLASH
which is -64
- New functions zerobytes() and cmpmbytes() added to libschily.
- New functions strstr() and wcsstr() added to libschily.
- libschily/fexec.c moved the workaround against the Mac OS X linker
for "environ" upwards to cover the new code also.
- Fixed libschily/gettimeofday.c to compile with MSC
- Fixed libschily/sleep.c to compile with MSC
- Fixed libschily/usleep.c to be empty with MSC as sleep.c includes
a working usleep()
- libschily/gethostname.c enhanced to support Win-DOS with cl.exe
- libschily/uname.c New function to support Win-DOS with cl.exe
- libschily/dirent.c New functions: opendir()/closedir()/readdir()
to support Win-DOS with cl.exe
- libschily/kill.c New function to support Win-DOS with cl.exe
- libschily/stdio/fgetline.c 64 bit speedup by calling fgets() in
case that getc() is not a macro.
- libschily/stdio/fgetstr.c 64 bit speedup by calling fgets() in
case that getc() is not a macro.
- libschily/chown.c new to support Win-DOS with cl.exe
Libfind:
- libfind/find.c disables -exec in case there is no fork().
This is in order to support MINGW
Libscg:
- libscg::scsi-aix.c was updated with some experimental code to support
two new SCSI kernel interfaces on AIX.
- Allow to disable the SCSI low level transport adoption layer
from libscg by adding -DNO_SCSI_IMPL
- libscg/scsihack.c now supports the MSC compiler
- Several small changes to work around oddoties fount in MS include files
- Trying to better support AIX again.
Cdrecord:
- Several changes to support mingw and MSC
Cdda2wav (Maintained/enhanced by Jörg Schilling, originated by Heiko Eißfeldt heiko@hexco.de):
- Several changes to support mingw and MSC
Readcd:
- Better algorithm for -edc-corr
Scgcheck:
- Several changes to support mingw and MSC
Mkisofs (Maintained/enhanced by Jörg Schilling since 1997, originated by Eric Youngdale):
- The mkisofs diagnostic tools now support MSC that does not support
POSIX terminal handling.
All:
- The makefile system now by default disables smake Simple Suffix Rules
and the POSIX Suffix Rules in order to speed up inference rule search.
Libschily:
- New functions mkgmtime() mklgmtime() and timegm()
Libfind:
- libfind no longer aborts with a lack of memory but writes an error
message
- libfind now correctly frees memory that has been allocated internaly
from treewalk()
Mkisofs (Maintained/enhanced by J
- Mkisofs now correctly supports El Torito multi boot entries by introducing
a Boot Dection Header before a list of alternate boot entries.
- New option -eltorito-platform allows to set the El Torito platform id
for a boot entry or for a list of boot entries. Supported values for the
parameter are:
- x86 the standard value vor x86 based PCs
- PPC the Power PC platform
- Mac The Apple Mac platform
- efi EFI based boot for PCs
- # an arbitrary numerical value
- New option -modification-date allows to specify a predictable UUID for grub.
The syntax is: YYYY[MM[DD[HH[MM[SS]]]]][.hh][+-GHGM] and is forgiving
enought to accept the pupular POSIX date format created by:
date "+%Y-%m-%d %H:%M:%S %z"
Libfind:
- New flag WALK_STRIPLDOT to strip leading "./" like star does
Cdrecord:
- cdrecord now warns about the correct max. CD-Text size
for a single language that is permitted by the standard.
Mkisofs (Maintained/enhanced by Jörg Schilling since 1997, originated by Eric Youngdale):
- Fixed several typos in the mkisofs man page and in mkisofs
Libscg:
- libscg/scsi-bsd.c tries to better support the SCSI sense data
length in the recently upgrades in FreeBSDs ATAPI/CAM module.
- try to keep SCSI status and error codes when doing a manual GET SENSE
on AIX, UnixWare, VMS, Linux Parallel Port, Apollo Domain
Cdrecord:
- cdrecord now warns and aborts if someone tries to write more CD-Text
for a single language than permitted by the standard.
Cdda2wav (Maintained/enhanced by Jörg Schilling, originated by Heiko Eißfeldt heiko@hexco.de):
- many typo fixes to the cdda2wav.1 man page, thanks to John Bradshaw
Mkisofs (Maintained/enhanced by Jörg Schilling since 1997, originated by Eric Youngdale):
- Add several forgotten options to the mkisofs man page.
All:
- The macros XARCH_GEN & XARCH_OPT are now in RULES/cc-sunpro*.rul
- The include file include/schily/ccomdefs.h now allows to disable
the printf() format checks for GCC with -DNO_PRINTFLIKE
This is needed in order to allow star to compile in the Solaris ON
cosolidation as GCC id too dumb for the printf() extensions.
- All include files (even those created by autoconf) are now protected
against multiple includion.
- New autoconf test for pathconf() and fpathconf()
- New autoconf test for /dev/stdin, /dev/stdout, /dev/stderr,
/dev/fd/0, /dev/fd/1, /dev/fd2
- New autoconf tests for: qecvt() qfcvt() qgcvt()
_ldecvt() _ldfcvt() _ldgcvt() _ldecvt_r() _ldfcvt_r() _ldgcvt_r()
qeconvert() qfconvert() qgconvert()
needed for long double support.
- New autoconf test for _qecvt() _qfcvt() _qgcvt()
and _qecvt_r() _qfcvt_r() _qgcvt_r() on AIX
- All linker map files have been modified to allow platform
dependent #ifdef's
- include/schily/wchar.h now includes a workyround for platforms
that do not have wcwidth().
- Make NLS the default (i.e. gettext() is called in case that schily/nlsdefs.h
was included)
Libschily:
- libschily/seterrno.c no longer overwrite the _TS_ERRNO definition
in order to pass the compile constrints in the Solaris ON consoliation.
- Several new global symbols in the mapfile for libschily/libschily-mapvers
- libschily/wcsndup.c had frgotten code and still did internaly implement
strndup()
- libschily now by default renames getline(), fgetline() and
fexec*() into js_getline(), js_fgetline() and js_fexec*().
This was needed because the POSIX standard commitee ignored
POSIX basic rules not to define functions that are in conflict
with existing published functions. The functions from linschily
have been in the public since more than 25 years and the
functions defined by POSIX.1-2008 even violate POSIX naming rules.
The POSIX fexec*() functions would e.g. have to be correctly called
fdexec*().
Existing programs can keep the official names getline(), fgetline()
and fexec*() as they are by default #defined to the new js_*() names.
To disable this convenience, add:
#define NO_SCHILY_GETLINE To disable schily getline(), fgetline()
#define NO_SCHILY_FEXEC To disable schily fexec*()
#define NO_SCHILY_FSPAWN To disable schily fspawn*()
- Libschily now has new "long double" support functions:
qftoes() and qftofs()
- Libschily now supports a locale dependend decimal point for printing
floating point numbers.
- Libschily now supports to print long double numbers using the
format() based portable printf() implementation. If this does not
work for your platform or if this does not work correctly for
your platform, please report. This was needed for out new "od"
implementation.
- The option parsing implementation getargs()/getfiles() from
libschily now supports to combine single character boolean
flags even in case the option string mentions to call a callback
function if a valid option was found. This was needed for out new
"od" implementation.
- filereopen() from libschily no longer calls open() internally
as long as there is no need to create or truncate the file.
- libschily's findinpath() now includes a new path parameter
to allow to use the function from bsh.
- fnmatch is now always available as js_fnmatch()
- New autoconf test for _qecvt() _qfcvt() _qgcvt()
and _qecvt_r() _qfcvt_r() _qgcvt_r() on AIX
- smake's searchfileinpath() moved into libschily to allow it
to be generally used for searching for program resources.
Libfind:
- New functions: find_hasprint() and find_hasexec()
Libscg:
- libscg/scg/aspi-dos.h now uses viod instead of VOID ti allow a compilation
with gcc.
- libscg/scsi-wnt.c (MS-WIN) now supports 64 SCSI busses
Cdrecord:
- A typo in cdrecord.c was corrected.
- cdrecord/cue.c now uses a correct byte order for RAW audio data in
Intel byte-order
Cdda2wav
- Fixed a typo in cdda2wav/cdda2ogg.1 (man page)
Mkisofs
- Added a hint that the option -b needs a boot image argument that is
located inside the ISO image tree.
- Added an additional hint on changed files in case that mkisofs encounteres
a file that did grow or shrink .
- Removed a superfluious second #include <schily/stat.h> from isoinfo.c
- Typo corrections in mkisofs/mkisofs.8 man page
- A bug was fixed with -sort and files > 4 GB. Mkisofs now correctly sorts the
disk addresses of the file content is such a case.
- New options -long-rr-time -no-long-rr-time -short-rr-time allow to control
the time format used for files with Rock Ridge extensions.
- The short time format supports year 1900..2155 with a one second
granularity
- The long time format supports year 0..9999 with a 10ms granularity.
Note that the Linux kernel only implements partial Rock Ridge support and
unfortunately does not support the long time format. It is planned to
make the long time stamp format the default in the future, so I encourage
the Linux kernel folks to add support for this time format.
- isoinfo now supports the new option -find and (via libfind) allows to use
find expressions on ISO-9660 images. If the find expression neither contains
-print nor -ls and isoinfo is called:
isoinfo -i xxx.iso -l -find .....
the ISO-9660 listing function from isoinfo is called whenever the find expression
returns TRUE. If there is a print or list primary in the find expression, then
the ISO-9660 listing is never called.
had been tracking alpha releases.
Changes since 2.01 (not the latest pkgsrc version!):
The most important enhancements since May 15th 2006 are:
- BluRay support was added
- The DVD support code was moved to the OpenSource part of cdrtools
- DVD Double layer support was added
- DVD-RAM support was added
- DVD Multi-border support for DVD- was added to cdrecord
- Support for reading and writing Hidden Tracks (audible content before
Track 01) on Audio CDs was added to cdda2wav and cdrecord
- Cdda2wav is now able to create CDRWIN CUE files instead of *.inf files
- Cdrecord now understands the CUE file enhancements from ExactAudioCopy
- SCSI autotarget mode makes cdrtools work without the dev= SCSI address
parameters in all cases where only one drive is available in the system
- Mkisofs now includes support for find(1) style command line arguments
implemented via "libfind"
- Mkisofs now includes working support for UTF-8 based locales
- Mkisofs now includes enhanced UDF support like symlinks, user IDs,
group IDs and permissions (needed for DVDs and BluRays)
There is also support for Apple specific extensions (thanks to
Helios.de)
- Mkisofs now supports ISO-9660 with files up to 8 TB (requires
-iso-level 3)
- New cdrecord option -minfo/-media-info to print Media
information/status
- Readcd now implements media quality scanning support code for
C1/C2/CU errors with Plextor and NEC/Optiarc drives. Use readcd -cxscan
- Readcd now implements media quality scan support code for Plextor
drives. Use readcd -pi8scan or -pifscan
- All SCSI aware programs from cdrtools now support -scanbus
- Support for the Plextor GigaRec feature was added
- Workarounds for many firmware bugs in various drives have been added
- Cdrecord now defaults to -sao mode instead of -tao
- Cdrecords CDRWIN CUE sheet parser was enhanced to support all features
from CDRWIN and cdrecord specific extensions in addition
- Cdrecord now allows CDRWIN CUE sheet based writing in
-raw/-raw16/-raw96r to work around Pioneer firmware bugs
and to allow to write SVCDs on Pioneer drives
- Cdrecord now supports DVD-RW/DL media (once the related media
will be made available to the public)
- Cdda2wav now implements a new option -interactive to support being
called from GStreamer (to avoid license problems with libcdio)
- Cdda2wav now supports MD5 sums for audio data
- Support for "root"-less installation on Solaris using fine grained
privileges was added
- Support for DragonFlyBSD was added
- Support for Zeta (BeOS clone) was added
- Support for Haiku (BeOS clone) was added
- Support for Syllable was added
- Support for ATARI FreeMiNT was added
- Support for AMIGA-OS was added
- Support for SunStudio 12 on Linux was added
Call "make CCOM=suncc"
- New program "btcflash" to flash firmware on some BTC writers
- A new Reed Solomon "decoder" (repair) library was added
- New experimental option -edc-corr in "readcd" was added
- Mkisofs no longer used GNU getopt_long() but getargs() to avoid various
bugs from GNU getopt_long()
- Mkisofs now supports correct inode numbers for hardlinks
- Mkisofs now implements "UNIX V6 FS style" link counts on directories,
this is: link count for directories is "2 + number of subdirectories"
- Mkisofs now implements the new Rock Ridge (rrip) protocol
version 1.12 from 1994 that added support for hard linked files
- Mkisofs now correctly implements deep directory relocation (this is
for directories nested deeper than 8 nesting levels)
- New mkisofs options -posix-H/-posix-L/-posix-P implement the -H/-L/-P
options defined by POSIX.1-2001 for descending commands like
ls/chmod/chown/find/pax/...
- The makefile system now implements support for cdrtools local dynamic
linking using:
make LINKMODE=dynamic
- All projects except "libhfs_iso", "libparanoia" and "schily autoconf"
have been relicensed to CDDL with permission from all authors.
Libparanoia was relicensed from GPL to LGPL with permission from Monty.
All:
- New autoconf test checks whether fnmatch() has a working FNM_IGNORECASE
- New autoconf test for strlcat() wcslcat() strnlen() wcsnlen()
Libschily:
- Schily fnmatch() now supports FNM_IGNORECASE
- New files strlcat.c wcslcat.c strnlen.c wcsnlen.c
Libfind:
- libfind bumped to version 1.5
- New file libfind/find_tok.h to separate the token names from the rest of the implementation.
- Moved token definitions from find.c to find_tok.h
- The primary -perm now implements a new feature:
-perm +mode will evaluate as true if any of the bits set in mode are set in the
permission bits fro a file.
- A bug with -exec introduced with using vfork() instead of fork() was fixed.
The replacement of the string "{}" now works correctly again even if the location
of the path in memory was changed during a realloc().
- New primary operators:
-amin deprecated - only for GNU find compatibility
-cmin deprecated - only for GNU find compatibility
-mmin deprecated - only for GNU find compatibility
-empty TRUE zero sized plain file or empty directory
-execdir program [argument ...] \\;
-fls file list files similar to 'ls -ilds' into 'file' (always TRUE)
-fprint file print file names line separated into 'file' (always TRUE)
-fprint0 file print file names nul separated into 'file' (always TRUE)
-fprintnnl file print file names space separated into 'file' (always TRUE)
-ilname glob TRUE if symlink name matches shell glob
-ilpat pattern TRUE if symlink name matches pattern
-iname glob TRUE if path component matches shell glob
-ipat pattern TRUE if path component matches pattern
-ipath glob TRUE if full path matches shell glob
-ippat pattern TRUE if full path matches pattern
-okdir program [argument ...] \\;
-print0 print file names nul separated to stdout (always TRUE)
-executable TRUE if file is executable by real user id of process
-readable TRUE if file is readable by real user id of process
-writable TRUE if file is writable by real user id of process
Mkisofs (Maintained/enhanced by J
- Do no longer archive the output file if it is part of the archives directory
tree.
- New option -data-change-warn allows to prevent mkisofs from aborting when
a file changes size.
-data-change-warn is implemented via errctl="WARN|GROW|SHRINK *"
- Print a hint to the option -data-change-warn if a shrunk/grown file is detected.
- Print a hint to the option -no-limit-pathtables in case that there are more
than 65535 parent directories in the target filesystem.
- Print hints on using -joliet-long or on avoiding -J in case that there are
file names that do not fit into 64 chars.
All:
- Added support for DragonFly/x86_64
- Support for "pcc" on Solaris x86 was added as a first step.
The C-Compiler "pcc" http://pcc.ludd.ltu.se/ is based on the
Portable C-Comppiler from AT&T from the late 1970s. It is
under BSDl and thus offers compilation with a really free
build environment.
Note that due to a pcc bug, the autoconf results for
Large File support are incorrect. Unless you edit the file
incs/i386-sunos5-pcc/xconfig.h and manually correct the
file to contain this:
#define _FILE_OFFSET_BITS 64 /* # of bits in off_t if settable */
You will not get working large file support.
Support for more Operating system will follow after the issues
in the compiler have been resolved.
Libfind:
- Fixed a bug in libfind/walk.c (calling strcatl() with last parameter 0
instead of (char *)0)
Cdrecord:
- Fixed a bug with INDEX 00 support for CUE files from
ExactAudioCopy
- Cdrecord no longer tries to close a session on a BD-RE media.
This is not supported in the recent MMC Standard and most drives
return a SCSI error when attempting to close such a session.
NEW features of cdrtools-2.01.01a75:
Cdrecord:
- Hidden Track support is now complete:
- Added support for writing Hidden Audio Tracks before Track #1
in the Mtsushita CW-7501 device driver.
- Added support for writing Hidden Audio Tracks before Track #1
in the Sony CDU-924 / CDU-948 device driver.
- Added support for writing Hidden Audio Tracks in RAW mode.
Cdrecord-2.01.01a74 did put "track number 0" into the subchannel
data for track 1 index 0. Cdrecord now correctly writes Track #1
into the sub channel data.
- Added support for Track #1 having a different number than 1 into
the CUE file parser.
- The CUE file parser now prints much better error messages in case that
a keyword is seen out of the permitted order.
- The CUE file parser now supports hidden tracks.
- Fixed a bug in the CUE file parser that caused "pregap size 0" (missing
INDEX 00) to be replaced by the default pregap size of 150 sectors.
Cdda2wav (Maintained/enhanced by J
- Hidden Track support is now complete:
- Fixed a bug in the cdda2wav track loop control that caused cdda2wav
not to write the *.inf file for the last track in case of an audio CD
with a hidden track.
- Introduced an alias "isrc" and "ISRC" for -vtrackid
- Introduced an alias "mcn" and "MCN" for -vcatalog
- cdda2wav now emits a "PREGAP" keyword in the CUE file for a CD without
hidden track if it starts with a sector number > 0.
NEW features of cdrtools-2.01.01a76:
Cdrecord:
- Added a workaround for a firmware bug in the drive:
'HL-DT-ST' 'BD-RE BH10LS30 ' '1.00'
That causes the drive to return zero media size for BluRay media.
- cdrecord now aborts if the cuefile= option was specified with a non-CD
media in the drive.
- CDRWIN CUE files now may refer to several data files where each data file
contains less than the whole disk but more than a single track.
- The CUE parser now correctly sets the sector size information for the
lead-in area.
- The CUE parser now by default only accepts CDRWIN CUE compliant files
but may be switched into an enhanced mode by introducing a special comment
"REM CDRTOOLS"
- The CUE parser now supports a FILE command between INDEX 00 and INDEX 01.
This is needed in order to write CUE sheets from Exact Audio Copy.
Note that cdrecord needs to be switched into the enhanced CUE parser mode
by either specifying "REM CDRTOOLS" or by specifying:
REM COMMENT "ExactAudioCopy v0.99pb5"
Also note that cdrecord currently does not support more than one FILE
command per TRACK. For this reason, hidden audio tracks only work if
the hidden audio data is in the same file that also contains data for
track 1.
- New commands "ARRANGER", "COMPOSER" and "MESSAGE" for adding CD-Text information
in CUE files. Note that these commands are cdrecord specific extensions that
re unknown by CDRWIN and thus need "REM CDRTOOLS" to be enabled.
- The CUE file format is now documented in the cdrecord man page.
- Fixed a small type bug in cdrecord/fifo.c (introduced a few
versions before) that hits if the OS does not support the FIFO.
Cdda2wav (Maintained/enhanced by J
- New cdda2wav option -vaudio-tracks
- Make cdda2wav -q silent again (even with CDs with hidden track) to
make it compatible again with scripts.
- cdda2ogg and cdda2ogg.1 added to standard install
The script cdda2ogg was enhanced to work seamlessly.
- cdda2mp3 and cdda2mp3.1 added to standard install
The script cdda2mp3 was enhanced to work seamlessly.
- the scripts cdda2ogg and cdda2mp3 now allow to forward options to
cdda2wav.
In order to enable "paranoia mode", call:
cdda2ogg -paranoia
In order to enable the most proof "paranoia mode", call:
cdda2ogg -paraopts=proof
- The cdda2ogg man page was completely reworked
- The SYSvr4 pkg definition now includes cdda2ogg and cdda2mp3
- Added a workaround for a broken ASPI that hangs with
odd transfer counts.
Readcd:
- Added a workaround for a broken ASPI that hangs with
odd transfer counts.
NEW features of cdrtools-2.01.01a73:
Cdrecord:
- The *.inf file parser now supports a new tag "Track=" that
is intended to carry the absolute track number from the original disk.
Cdda2wav (Maintained/enhanced by J
- Cdda2wav now permits to use "max" for the endtrack number. This
allows to specify e.g. -t2+max for a list of tracks from track #2
to the last audio track on the disk.
- New option -cuefile allows to tell cdda2wav to create a CDRWIN CUE
file. This currently only works together with wither -tall, or with
-t0+max or -t1+max.
Note that due to a misconception in the CDRWIN CUE file definition,
it is impossible to create 100% correct CD-audio copy by 100%
following the CDRWIN CUE file definition and having separate audio
files for each track at the same time. For this reason, it is currently
impossible to create CDRWIN CUE files while using cdda2wav -B.
- Cdda2wav now only writes a binary *.cdtext file in case that this
file would contain more data than a header that tells that there
is no further content.
- Cdda2wav no longer removes the Index0 entry from a longer Index list
if Index0 is -1.
- Cdda2wav now automatically scans for hidden audio tracks. This is a
complex task as there are drives that do not allow to read the
hidden data before track 1.
- New option -no-hidden-track allows to prevent cdda2wav from scanning
for a hidden audio track.
- Cdda2wav now writes the new tag "Track=" into the *.inf files that
is intended to carry the absolute track number from the original disk.
- A shortcut for paraopts=sectors-per-track-1,retries=200 was introduced.
The name of the shortcut is "proof", so just use "paraopts=proof" for
selecting the most stringent paranoia mode.
- Cdda2wav now automatically selects paranoia mode in case that the
paraopts= option was used.
- Cdda2wav now again works in suid root mode on Solaris 11. It seems that
the development versions from Solaris 11 did change the behavior with
fine grained privileges in a way that was incompatible with the way
cdda2wav did try to handle both suid root and fine grained privileges.
Mkisofs (Maintained/enhanced by J
- The man page for mkisofs was enhanced in order to better mention
that mkisofs always writes ISO-9660 and that other file systems are
thus always added as a hybrid file system.
NEW features of cdrtools-2.01.01a74:
Cdrecord:
- Cdrecord now supports to copy CDs with hidden track if there are *.inf files
created by cdda2wav. In order to copy a CD with hidden Track with optimal
quality, call:
cdda2wav -vall -B -paranoia paraports=proof cddb=0
cdrecord -v -sao -useinfo -text *.wav
- cdwrite@lists.debian.org removed from man page
please use the official mailing lists for cdrecord that exist since 10 years:
http://developer.berlios.de/mail/?group_id=5
Cdda2wav (Maintained/enhanced by J
- A forgotten debug message from implementing support for hidden tracks
has been removed.
- Fixed a small bug that made cdda2wav with hidden track support not fully
compatible to earlier versions. In case that only one track is to be extracted,
this is again always track #1 regsrdless whether the CD has a hidden track.
- Fixed a bug with CDRWIN CUE file support. Cdda2wav used the tag "WAV" instead
of "WAVE" for the data type specifier in the FILE tag.
- cdwrite@lists.debian.org removed from man page
please use the official mailing lists for cdrecord that exist since 10 years:
http://developer.berlios.de/mail/?group_id=5
Readcd:
- cdwrite@lists.debian.org removed from man page
please use the official mailing lists for cdrecord that exist since 10 years:
http://developer.berlios.de/mail/?group_id=5
Scgcheck:
- cdwrite@lists.debian.org removed from man page
please use the official mailing lists for cdrecord that exist since 10 years:
http://developer.berlios.de/mail/?group_id=5
Btcflash:
- cdwrite@lists.debian.org removed from man page
please use the official mailing lists for cdrecord that exist since 10 years:
http://developer.berlios.de/mail/?group_id=5
Mkisofs (Maintained/enhanced by J
- cdwrite@lists.debian.org removed from man page
please use the official mailing lists for cdrecord that exist since 10 years:
http://developer.berlios.de/mail/?group_id=5
2.01.01alpha72:
Cdrecord:
- The CDRWIN cue sheet parser has been enhanced to give better error messages:
- There are now hints on what is missing in the CUE file
- The error message now also contains the column where the problem was detected
- Allow cdrecord to compile again on a pre-C99 compiler (there was a variable delaration
past a statement in a function.
- A description for the *.inf file fomat was added to the cdrecord man page
- New (previously missing) CD-Text tags have been added to auinfo.c (*.inf file parser):
Albumsongwriter=
Albumcomposer=
Albumarranger=
Albummessage=
Albumclosed_info=
Note that these tags do not appear in the CDDB database.
Cdda2wav (Maintained/enhanced by J
- New arg "all" to -t option.
cdda2wav -B extracts all audio tacks into separate files
cdda2wav -tall extracts all audio tacks into a single files
- cdda2wav now by default writes a file "xxx.cdtext" with raw binary
CD-Text data in case cdda2wav was told to retrieve CD-Text.
- A new option -no-textfile allows to disable the creation of the file "audio.cdtext"
This version of cdda2wav creates a file "audio.cdtext" or similar (depending on
the set up file name base) in case that there is CD-Text on the medium and that
the drives supports to read the CD-Text data with MMC SCSI commands.
- Fixed a bug in cdda2wav that caused cdda2wav to set up the file name base too late.
This resultes in the files "audio.cdindex" and "audio.cddb" alwas to have this name
while the *.inf files use the name base from the cdda2wav arguments. Now all
files created by cdda2wav honor the file name base.
- Cdda2wav by default fills empty track specific CD-Text data with the Disk global
value (if present). A new option -no-textdefaults allows to disable this fallback
and leaves the related fields empty if they are empty on the mester CD.
- Fixed a problem with cdda2wav -interactive (used by GNOME GSTREAMER CD-DAE plugin)
that could cause cdda2wav to dump core in case that there is a data
session past the last audio track.
- New (previously missing) CD-Text tags have been added to the *.inf files:
Albumsongwriter=
Songwriter=
Albumcomposer=
Composer=
Albumarranger=
Arranger=
Albummessage=
Message=
Albumclosed_info=
Closed_info=
Note that these tags do not appear in the CDDB database.
Mkisofs (Maintained/enhanced by J
- Fixed a bug with file descriptor handling in mkisofs/apple.c
2.01.01a71:
All:
- include/schily/stat.h now supports nonosecond timestamps in struct stat on AIX.
- New autoconf test for nanosecond time stamps on AIX.
- conf/mkdir.sh
- conf/mkdep-aix.sh was changed to avoid warnings for #pragma weak a = b
as the IBM C-compiler calls a non "#pragma weak" cpp when called with -E
Cdrecord:
- Cdrecord now is able to use -isosize even in case that the image data
is read from stdin. This makes it easier to use "mkisofs | cdrecord".
All:
- Added support for Hurd on i686 to the Schily Makefilesystem.
- Modified conf/mkdir.sh to work around a deviation found in
/usr/xpg4/bin/sed on Solaris
- Modified conf/src-get to include conf/src-get in PATH to make
recursive calls to src-get work.
Libfind:
- Added $(LIB_ACL_TEST) to the libs for libfind to allow a shared libfind
with ACL support on Linux.
Cdrecord:
- Cdrecord now defaults to -sao in case that cuefile=something was specified
- man page restructured
Cdda2wav (Maintained/enhanced by J
- The default outout format is now .wav for all platforms.
Before, the default for Solaris was .au.
- man page restructured
Readcd:
- man page restructured
2.01.01a69:
All:
- Support for 64 Bit compilation was added for IRIX.
Call smake CCOM=cc64 or smake CCOM=gcc64 as usual.
- C++ compilation support fior IRIX was added to the makefile system
- Schily Makefile rules no longer contain Simple Suffix Rules.
All default rules are now based on Pattern Matching Rules.
This speeds up smake.
- Added autoconf test to distinct Linux ACLs from IRIX ACLs
Libschily:
- Removed some GCC warnings from libschily/getargs.c
Libfind:
- let libfind deal with the differences between Linux ACLs and IRIX ACLs
Libscg:
- Removed some GCC warnings from libscg/scsi-sgi.c
Cdrecord:
- Work around a bug in the firmware from drives
developed by PIONEER in November 2009. This affects
drives labelled "Pioneer", "Plextor" and "TEAC".
Do no longer call cdr_buffer_cap() before the drive
buffer was not at least filled once to avoid that
the the drive throughs away all data.
- Man page reworked
Cdda2wav (Maintained/enhanced by J
- Man page reworked
- Removed some (int) casts before the SNDCTL_DSP_* ioctl()s
Readcd:
- Man page reworked
Scgcheck:
- Man page reworked
Btcflash:
- Man page reworked
Mkisofs (Maintained/enhanced by J
- Various Cstyle changes
2.01.01a68:
All:
- VMS rules for libraries not create an archive XXX.olb instead of libXXX.a
- schily/utypes.h enhanced to allow to define maxint_t which is
missing on VMS
- Better autoconf test for union wait vs. int for platforms that
define union wait but use int as wait() parameter.
- schily/vfork.h now includes unistd.h as the related definitions
are there on Solaris
- Fixed a configure bug with opendir() inherited from GNU autoconf
- Enhanced the vfork() autoconf test to avoid a hang on VMS
Libschily:
- libschily/spawn.c now uses vfork()
- libschily/fexec.c now supports IO redirection on VMS
Libparanoia (Ported/enhanced by J
- Some #define inline definitions removed as "inline" is already
handled by schily/mconfig.h
Libfind:
- Fixed a typo in idcache.c
Libfile:
- Some changes for better VMS support
Libhfs_iso:
- Removed a warning from the HP-UX C-compiler about a possible endless loop
Libsiconv:
- Add the VMS C-compiler to the list of exceptions for not fully C99 compliant
compilers to allow compilation.
Libscg:
- changed a include path in libscg/scsi-mac-iokit.c to allow
compilation on "Snow Leopard"
Cdrecord:
- Added a workaround for a firmware oddity with DVD+RW on
'_NEC ' 'DVD_RW ND-3500AG' with media written from other drives.
Cdda2wav (Maintained/enhanced by J
- Added a forgotten modification in ringbuff.c that caused an abort due to
a wrong assert() condition.
Mkisofs (Maintained/enhanced by J
- Fixed a bug (writing to stdout instead of stderr) recently introduced with better
RR recognition support.
- "isoinfo" now supports iconv() based locales for Joliet.
All:
- Prevent a compiler warning when compiling 64 bit binaries on HP-UX
using make CCOM=cc64
- Some files in include/schily/*.h have been enhanced to better support VMS
- config.guess now knows about OpenVMS
- Changed bash test to use --version instead of -version as bash on OpenVMS
is bash-1.x
- include/schily/xmconfig.h (containing a "static" configuration for VMS
because "configure" does not work on VMS) was enhanced.
- Trying to add support for OpenVMS to RULES/*
- New autoconf tests for the type "long double" and a new "max size" type.
Libschily:
- libschily/*bytes.c now support 64 bit compilation and use a "ssize_t"
typed count parameter instead of "int".
Rscsi:
- First complete version of a man page for rscsi.
Cdda2wav (Maintained/enhanced by J
- cdda2wav now correctly deals with the case when no sound device
was specified. Thanks to Robert Grimm <rob@news.robgri.de>
for reporting.
Mkisofs (Maintained/enhanced by J
- Make "isovfy" CD-ROM-XA aware
- Make "isodump" CD-ROM-XA aware
NEW features of cdrtools-2.01.01a65:
All:
- *BSD comes with a broken sed(1), so we need to go back to tr(1) based
code for GNU make in the Schily Makefilesystem.
- Added support for amd64-netbsd-cc.rul to the Schily Makefilesystem
- Added support for DragonFly BSD to config.guess and config.sub
Libscg:
- Added a hack to liscg to allow cdrecord -scanbus to work on NetBSD
- Added a hack to liscg to allow cdrecord -scanbus to work on OpenBSD
Mkisofs (Maintained/enhanced by J
- Avoid signed chars ad parameter to toupper
NEW features of cdrtools-2.01.01a66:
- Added support for 64 bit compilation on HP-HX using "cc".
Use make CCOM=cc64 as usual to switch to 64 bit compilation.
Libschily:
- libschily/fconv.c reworked to deal with non-C99 compliant systems and to deal
with the constraints found in HP-UX-11.11.
Libsiconv:
- Fixed a problem in libsiconv in case that the the locale is specified as
"iconv:name".
Libscg:
- Make libscg deal with the new error code from HP-UX that
is returned for a non-existing ATAPI slave.
- Some minor changes in libscg to make scgcheck report less problems
with HP-UX
Cdrecord:
- Better man page with repect to dev=
- The cdrecord man page has been restructured.
- Fixed a bug in the workaround code for a firmware bug for DVD+R
media in HL-DT-ST drives.
Cdda2wav (Maintained/enhanced by J
- Better man page with repect to dev=
- The cdda2wav man page has been restructured.
Readcd:
- readcd now only send the Plextor specific SCSI commands for the -cxscan
option in case that the drive identifies as Plextor.
- Better man page with repect to dev=
Scgcheck:
- Better man page with repect to dev=
Btcflash:
- Better man page with repect to dev=
Mkisofs (Maintained/enhanced by J
- mkisofs man page reworked
- isoinfo man page reworked
- New file mkisofs/rock.h
- isodump now prints more information about Rock Ridge attributes to
help debugging non-compliant Rock Ridge ISO images.
- isoinfo now correctly identifies ISO images made with the Mac OS X
program "hdiutil" by e.g. calling:
hdiutil makehybrid -iso -hfs -verbose -o xxx.iso some_dir
As filesystems that violate the Rock Ridge standard.
Check e.g. by "isoinfo -i xxx.iso -d"
Interpreting Rock Ridge on such images can be enforced by calling:
"isoinfo -i xxx.iso -lR -debug"
- mkisofs now ignores the broken Rock Ridge attributes that have been
created by the Mac OS X program "hdiutil".
All:
- The schily makefilesystem now by default sets all locale related envronment
variables to "C" in order to avoid problems.
- Make the makefile emulation mode for "non-automake aware" make programs
like SunPro Make and GNU make more immune against oddities in the tr(1)
program that are seen with a locale that differs from LC_ALL=C
Another step to prevent some tr(1) oddities was to replace the call to
tr(1) by a call to sed(1).
- Added GMAKE_NOWARN=true to allow to disable the gmake warning
- Enhanced include/schily/priv.h to distinct Solaris and AIX process privileges
- New include file include/schily/math.h
- Try to workaound a problem with GCC on newer AIX versions. It seems that
e.g. gcc on AIX is not C99 compliant and does not support isnan().
Note that the current solution may compile and run on newer AIX versions
but does not seem to be the optimal solution as it cannot check whether
a float is a number or not.
It is unfortunate, that we do not have an AIX login that would allow
to implement better AIX support.
Libscg:
- The low level SCSI transport code for Mac OS X has been reworked.
The code now supports cdrecord -scanbus
The code now supports cdrecord's autotarget mode
The code now supports to communicate with BluRay drives
The code now prints a longer help text that instructs what to do in order
to work against the "diskarbitrationd" program on Mac OS that tries to
steal us our hardware.
If someone is able and willing to help, please send mail!
I like to be able to tell "diskarbitrationd" to give up specific drives
and to set up shared access.
Cdrecord:
- The cdrecord man page now mentions that the -clone mode is a bad idea to copy
audio CDs.
Readcd:
- The readcd man page now mentions that the -clone mode is a bad idea to copy
audio CDs.
All:
- include/schily/wait.h now includes process.h on DOS systems
- include/schily/resource.h new include file
- include/schily/select.h new include file
- Now all sources use schily/systeminfo.h instead of sys/systeminfo.h
- Now all sources use schily/assert.h instead of assert.h
- Now all sources use schily/priv.h instead of priv.h
- Now all sources use schily/procfs.h instead of profcs.h
- Now all sources use schily/syslog.h instead of syslog.h
- Now all sources use schily/float.h instead of float.h
- Now all sources use schily/ipc.h instead of sys/ipc.h
- Now all sources use schily/sem.h instead of sys/sem.h
- Now all sources use schily/shm.h instead of sys/shm.h
- New autoconf test for "#pragma weak"
Libmdigest:
- New library
Cdrecord:
- Correctly abort the FIFO in cdrecord on BeOS and Haiku
in case that the clone ara cannot be made shared.
Cdda2wav
- Cdda2wav is now using the sha1 implementation from libmdigest
- Try to avoid an endloss loop while parsing ISO-9660 directories
from rotten CD+ sessions.
Readcd:
- Fixed a problem in the man page.
All:
- New include files include/schily/ctype.h, include/schily/pwd.h
and include/schily/grp.h
- All programs are now using schily/stdio.h
for orthogonality.
- Haiku default install dir is now /boot/opt/schily
- New rules RULES/os-cygwin_nt-6.0-wow64.id and
RULES/os-cygwin_nt-6.1-wow64.id support Cygwin on 64bit
installations of Win Vista and "Win 7".
- New rules for compiling 64 Bit binaries on cygwin_nt-wow64
NOTE: You need to have a 64 bit aware gcc on Cygwin to use this!
- TEMPLATES/temp-gcc.rul and TEMPLATES/temp-xcc.rul
now correctly include cc-gcc.rul and cc-dumb.rul and thus
make the automake feature working again for completely
unknown platforms.
- Fixed RULES/rules.inc to make sure we install xx.h instead of
xx.h.exe
- Workaround an infinite hang in an autoconf test on 64 Bit Vista
with Cygwin
- Include limits.h in schily/hostname.h for Linux
- Several "%s" formats have been introduced in order to make gcc-4
happy even though the original strings have been pointer to constant
and well known strings
- Change the option order in the autoconf test for calling the linker
in order to avoid problems with the microsoft linker.
Libschily:
- libschily now is thread aware and uses the thread specific errno
value on Solaris, Linux and FreeBSD.
Libscg:
- Raised the SCSI Bus-number limit from 256 to 500 for Linux as a workaround
for a resource leak bug in the linux kernel. The workaround lets the problem
happen much later but cannot completely avoid it. If you are hit by the Linux
kernel resource leak bug, you need to reboot.
Cdrecord:
- Correctly abort the FIFO in cdrecord on BeOS and Haiku
in case that the clone ara cannot be made shared.
Mkisofs (Maintained/enhanced by J
- Fixed a potential malloc problem in mkisofs
All:
- Support for 64 bit compilation on mac OS X was added.
Call make CCOM=cc64 as on other platforms.
- $OLIBSDIR is no longer in the RUNPATH
- New include file include/schily/limits.h
- Make sure that all include files in include/schily/ include
include/schily/mconfig.h
- wide character support new
- New makefile "Mocsw" sets defaults for "opencsw" instead of Blastwave.
Mcsw for Blastwave of course continues to exist
- New defaults directory DEFAULTS_CSW includes special defaults that
compile e.g. for Sparc-V8 in order to get working binaries for older
Sparc non 64 Bit hardware.
- New autoconf test HAVE_SETBUF and HAVE_SETVBUF
- Several modification in hope to better support MINGW
Libschily:
- wide character support new
- sevaral str*.c functions new for orthogonality with the new wcs* code.
- Added a wide character patern matcher with: patwcompile(), patwmatch(), patwlmatch()
See files:
libschily/matchw.c and libschily/matchwl.c
- libschily/stdio/*.c fixed to use size_t as length parameter for
read*()/write*() operations.
Libscg:
- Added a workaround for the type desaster in the Appls IOKit include files
in order to support 64 bit binaries
Cdda2wav (Maintained/enhanced by J
- The -interactive option is now mentioned in the -help output and the man page.
- Call unit_ready() before retrieving the TOC data in order to work around a Solaris
scsa2usb (SCSA to USB Driver) bug.
Readcd:
- "readcd" no longer dumps core if the C2Scan function is selected from the
interactive interface.
Mkisofs (Maintained/enhanced by J
- Fixed a typo bug in the mkisofs man page that caused the two synopsis lines
to appear as one line when using GNU troff.
- isoinfo now prints "???" in case that an illegal month is in a ISO-9660
filesystem.
All:
- Trying to work around nasty Linux distributions that try to fool autoconf
function tests and thus may result in incorrect results for the functions
fexecl fexecle fexecv fexecve fspawnv fspawnl fspawnv_nowait getline fgetline
- New include files include/schily/dlfcn.h and include/schily/shcall.h
- New autoconf tests for dlopen() and similar functions
- Fixed a typo in include/schily/fnmatch.h that prevented compilation on BeOS
- Fixed a typo in include/schily/libport.h that prevented compilation on BeOS
- New makefile "Mocsw" allows to create packages for "opencsw"
- RULES/rules.csw enhanced to allow to overwrite EMAIL= and HOTLINE= from
the make command line.
- New autoconf test for getprogname()/setprogname()
- Support for using Microsoft "cl" to compile 64 bit binaries from Cygwin now
has been finished
Libschily:
- Code in libschily/fexec.c cleaned up for better readability
- libschily/checkerr.c now correctly handles the "WARN" directive.
Cdrecord:
- Cdrecord now calls read_format_capacities() in silent mode in order to
check whether the current drive supports this SCSI command.
Cdda2wav (Maintained/enhanced by J
- cdda2wav now gives better readable text with cdda2wav -help
- BeOS has a /boot/develop/headers/be/support/ByteOrder.h that also defines
_BYTEORDER_H and thus interferes with our cdda2wav/byteorder.h
Mkisofs (Maintained/enhanced by J
- libschily/checkerr.c (used by mkisofs) now correctly handles the "WARN" directive.
NEW features of cdrtools-2.01.01a59:
All:
- Add -D_GNU_SOURCE to the standard include flags for Linux in order
to unhide needed extensions.
Cdrecord:
- Better error messages when the media size is unknown
- Try to work around a firmware bug in the drive:
'HL-DT-ST' 'DVD-RAM GH22NP20' '1.02'
that is in effect with DVD+R media.
- cdtext.c now checks for empty CD-Text files to prevent a later endless loop in cdrecord
while writing the TOC. Thanks to Sebastian Tr
Cdda2wav (Maintained/enhanced by J
- cdda2wav now supports new parameters for the -output-endianess option.
"host" or "machine" represent the actual byte order of the host CPU in the current OS.
NEW features of cdrtools-2.01.01a58:
All:
- New Make rules for Syllable. Syllable is a fork from AtheOS.
- New make rules for Haiku
- New include file schily/sysexits.h is needed for Haiku
- New autoconf test for sysexits.h
- Autoconf tests for os2.h and os2me.h moved from cdda2wav to
global
- config.guess and config.sub now have support for Haiku
- New rule support for linux on "sh3", "sh4" and "sh4a" platforms.
- autoconf now acts more reliable and more orthogonal with AC_CHECK_TYPE() vs.
AC_CHECK_SIZEOF() and carefully includes include files separately based on
fine grained tests.
- Changed schily/dirent.h to correctly set up NAME_MAX on ATARI MiNT
- Changed schily/maxpath.h to correctly set up NAME_MAX on ATARI MiNT
Libschily:
- fexec now correctly works on Haiku and BeOS
- libschily/format.c now supports the %z (size_t) and %t (ptrdiff_t)
printf format size modifiers (fixed a typo introdiced in the first attempt)
Libscg:
- A first version of the SCSI adaptation layer for Syllable has been added.
Thanks to Kristian Van Der Vliet <vanders@liqwyd.com> for the first
implementation.
- Haiku is a BeOS clone and thus uses scsi-beos.c as SCSI adaptation layer.
IMPORTANT NOTICE: if you like to compile libscg with a current Haiku release
you first need to copy a file:
cd /boot/develop/headers/os
cp device/CAM.h drivers/CAM.h
CAM.h was at /boot/develop/headers/os/drivers/CAM.h in BeOS and as CAM
has no own hardware, it seems to belong into /boot/develop/headers/os/drivers/
Cdrecord:
- Fixed a minor typo in cdrecord
- Some better warnings with cdrecord in case that the environment variables
'CDR_FORCERAWSPEED=' or 'CDR_FORCSPEED=' have been specified.
Cdda2wav (Maintained/enhanced by J
- Cdda2wav now uses an autoconf test to decide whether BEOS clone areas
can be used. THis gives Haiku compatibility.
- Fixed a bug introduced with introducing support for MD5 Sums.
Cdda2wav now disables the MD5 sum output in case -no-infofile has been specified
- Autoconf tests for os2.h and os2me.h moved from cdda2wav to
global
Mkisofs (Maintained/enhanced by J
- Mkisofs now reports "Haiku" for the OS platform if on Haiku.
- The isoinfo man page now includes the -debug option
- Automated support for System ID
Haiku, Syllable, AMIGA-OS, ATARI-MiNT
- Fixed some Rock Ridge bugs that have been identified when investigating
in the OpenSolaris bug 6807009
http://defect.opensolaris.org/bz/show_bug.cgi?id=5385
- Man page description for -abstract -biblio -copyright is now better
to understand
All:
- New Make rules for Syllable. Syllable is a fork from AtheOS.
- New make rules for Haiku
- New include file schily/sysexits.h is needed for Haiku
- New autoconf test for sysexits.h
- config.guess and config.sub now have support for Haiku
- New rule support for linux on "sh3", "sh4" and "sh4a" platforms.
- autoconf now acts more reliable and more orthogonal with AC_CHECK_TYPE() vs.
AC_CHECK_SIZEOF() and carefully includes include files separately based on
fine grained tests.
- Changed schily/dirent.h to correctly set up NAME_MAX on ATARI MiNT
- Changed schily/maxpath.h to correctly set up NAME_MAX on ATARI MiNT
Libschily:
- fexec now correctly works on Haiku and BeOS
- libschily/format.c now supports the %z (size_t) and %t (ptrdiff_t)
printf format size modifiers (fixed a typo introdiced in the first attempt)
Libscg:
- A first version of the SCSI adaptation layer for Syllable has been added.
Thanks to Kristian Van Der Vliet <vanders@liqwyd.com> for the first
implementation.
- Haiku is a BeOS clone and thus uses scsi-beos.c as SCSI adaptation layer.
IMPORTANT NOTICE: if you like to compile libscg with a current Haiku release
you first need to copy a file:
cd /boot/develop/headers/os
cp device/CAM.h drivers/CAM.h
CAM.h was at /boot/develop/headers/os/drivers/CAM.h in BeOS and as CAM
has no own hardware, it seems to belong into /boot/develop/headers/os/drivers/
Cdrecord:
- Fixed a minor typo in cdrecord
- Some better warnings with cdrecord in case that the environment variables
'CDR_FORCERAWSPEED=' or 'CDR_FORCSPEED=' have been specified.
Cdda2wav (Maintained/enhanced by J
- Cdda2wav now uses an autoconf test to decide whether BEOS clone areas
can be used. THis gives Haiku compatibility.
- Fixed a bug introduced with introducing support for MD5 Sums.
Cdda2wav now disables the MD5 sum output in case -no-infofile has been specified
Mkisofs (Maintained/enhanced by J
- Mkisofs now reports "Haiku" for the OS platform if on Haiku.
- The isoinfo man page now includes the -debug option
- Automated support for System ID
Haiku, Syllable, AMIGA-OS, ATARI-MiNT
- Fixed some Rock Ridge bugs that have been identified when investigating
in the OpenSolaris bug 6807009
http://defect.opensolaris.org/bz/show_bug.cgi?id=5385
NEW features of cdrtools-2.01.01a57:
Libscg:
- New SCSI low level transport for ATARI FreeMiNT has been added.
Thanks to Yvan Doyeux
Cdrecord:
- Do not install by overwriting /etc/default/cdrecord in case an earlier file
exists.
Please give feedback on what you like to see in future.
Do you like to see a sample file installed?
- README.cdplus has been renewed
Cdda2wav (Maintained/enhanced by J
- Prevent a core dump from hitting ^C while cdda2wav tries to call
scg_open() to open the SCSI devices.
- A buggy address compuation that caused problems with 64 bit binaries
has been fixed.
- Cdda2wav now correctly deals with longer CD-Text information.
Thanks to Yvan Doyeux for creating a related test CD...
NEW features of cdrtools-2.01.01a56:
All:
- New autoconf test to distinguish between the free of charge
"Bundled" cc on HP-UX and the commercial cc. Only the commercial cc
supports ANSI C and the Bundled cc complains when the ANSI Options
are used:
(Bundled) cc: warning 480: The -A option is available only with the C/ANSI C product; ignored.
(Bundled) cc: warning 480: The -O option is available only with the C/ANSI C product; ignored.
These warnings are no longer present.
- schily/schily.h now auto-includes stdio.h in case that the platform
supports the new POSIX.1-2008 getline()/fgetline() functions that
violate against general POSIX rules and thus overlay our implementation
that exists since 1982.
- schily/stkframe.h now uses Intptr_t for the fr_savp member to make it
work correctly on 64bit systems without OS supplied stkframe.h.
- New autoconf test on whether unistd.h defines extern char ** environ.
- New file schily/stdio.h to simplify layering.
Libschily:
- Fixed a bug in fexecl() introduced in October 2008 that caused the
called program to be called with a too small argc (one too few).
- format() now supports %z for size_t and %t for ptrdiff_t
Libedc (Optimized by J
- Avoid some GCC warnings
Libdeflt:
- lbdeflt needs to be compiled before libcdrdeflt when creating
dynamic libs
Libscg:
- Avoid some GCC warnings
Cdrecord:
- Avoid some GCC warnings
- Some small typos in error messages have been fixed.
- Workaround for 'TSSTcorp' 'CDDVDW SE-S224Q ' 'TS01' firmware bug.
The drives does not return SES_UNDEF for unformatted DVD+RW media.
- Support again cdrecord -v -sao -multi *.wav
This stopped working with 2.01.01a29 when introducing DVD multi-border
support.
Cdda2wav (Maintained/enhanced by J
- struct tocdesc has been restructured to prevent struct tail padding on MC-680x0 systems.
Thanks to Yvan Doyeux for reporting this for the ATARI port.
- The drive 'HP ' 'CD-Writer+ 9600 ' '1.0a' does not like to read SCSI FULL TOC
with a too long transfer lenght. First retrieve the available data count.
- New options -debug -debug-scsi -kdebug -kdebug-scsi -kd to set SCSI low level
debugging in libscg
- The option -v not also supports "!" and "not" to invert the list
of "verbose" options (e.g. -v!indices for everything but indices).
- Avoid some GCC warnings specific to HP-UX
- Added a workaround for gmake < version 3.81.
Older gmake versions evaluate dependencies in the wrong order.
Readcd:
- Try to exit(excode) instead of exit(0) in case that siginificant
problems occured.
- Prevent readcd from dumping core via raisecond("file_write_err")->abort()
in case that the target filesystem fills up.
- Added a workaround for gmake < version 3.81.
Older gmake versions evaluate dependencies in the wrong order.
Scgcheck:
- Avoid some GCC warnings
- Added a workaround for gmake < version 3.81.
Older gmake versions evaluate dependencies in the wrong order.
Scgskeleton:
- Added a workaround for gmake < version 3.81.
Older gmake versions evaluate dependencies in the wrong order.
Btcflash:
- Added a workaround for gmake < version 3.81.
Older gmake versions evaluate dependencies in the wrong order.
Mkisofs (Maintained/enhanced by J
- Some casts have been added to increase the 64 bit compilation support
- mkisofs and the tools isodump, isovfy and isoinfo now completely
support the SUSP termination signature "ST".
- Do no longer flag the absence of a "RR" signature as an error in
isodump, isovfy and isoinfo as newer Rock Ridge standard versions removed RR.
- Fixed a minor problem with a debug print output and 64 bit compile mode.
- Avoid some GCC warnings
- Minor typo fix in the mkisofs man page
pkgsrc: despite changes below, nothing is installed suid for now
NEW features of cdrtools-2.01.01a55
All:
- Default install user changed from "bin" to "root".
- The install-sh script now complains if an attept was made to install
a program suid or sticky and the install user has no root privileges
- The makefile system has been modified to allow a separate set-up
for the install path of the configuration files to e.g. /etc/
via the DEFAULTS variable INS_RBASE
Rscsi:
- the configuration file "rscsi" is now by default installed into
/etc/default/rscsi
Cdrecord:
- Cdrecord is now by default installed suid root in case that the caller
of make install has root privileges
- The call to scg_close() introduced with 2.01.01a54 was not
done in the right order and could cause core dumps.
- the configuration file "cdrecord" is now by default installed into
/etc/default/cdrecord
- Some unused variables and functions have been commented out
Cdda2wav (Maintained/enhanced by J
- Cdda2wav is now by default installed suid root in case that the caller
of make install has root privileges
- Some unused variables and functions have been commented out
Readcd:
- Readcd is now by default installed suid root in case that the caller
of make install has root privileges
NEW features of cdrtools-2.01.01a54:
All:
- config.sub and config.guess now support ATARI MiNT
- All needed definition files for ATARI MiNT are now in RULES/*
- configure now checks whether shmget() works (needed for ATARI MiNT)
- The GNU linker on Linux now seems to support -R to set the LD_RUN_PATH
Added support for -R
- Added definitions to allow dynamic linking with the Sun Studio compiler
on Linux
- Added a new #define (NO_ACL) that alloed to disable ACL support via
command line when compiling
- include/schily/libport.h split into include/schily/libport.h and
include/schily/hostname.h to allow to avoid to include netdb.h for
applications that do not need gethostname() and getdomainname()
- include/schily/prototype.h now inlcludes the definitions for const...
- new autoconf test to check whether the Sun Studio compiler needs
-xarch=generic64 or -m64 for 64 bit compilation.
Libschily:
- New functions eaccess() and findinpath()
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Libparanoia (Ported/enhanced by J
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Libedc (Optimized by J
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Libcdrdeflt:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Libdeflt:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Libfind:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
- libfind now correctly deals with ARG_MAX in case that
the bitness of the libfind executable differs from the bitness
of the executable called by -exec name {} +
Libfile:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Libhfs_iso:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Libsiconv:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Libscg:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Libscgcmd:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Rscsi:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
- Raise the SCSI bus numer limit to 1024 to allow the new Linux ATA mapping.
Cdrecord:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
- New driver "mmc_bdrom" is used for profile 0x40 and allows to
retrieve the ADIP data for BD-R media that is reported as BD-ROM
by some drives.
- Added a workaround for a firmware bug in the drive
'HL-DT-ST' 'DVD-RAM GH22NP20'
that reports DVD-R media as media with zero size.
- Added a workaround for a firmware bug in many 'HL-DT-ST' drives
(e.g. 'HL-DT-ST' 'DVD-RAM GSA-H55N') that return unreliable data
with READ BUFFER and makes it impossible to get the drive DMA
transfer speed.
- Added a workaround for frequent kernel/driver bugs in
FreeBSD and Solaris that prevent the DMA residual count to work.
- Try to call scg_close() before exiting cdrecord.
- Default Transfer Size reverted from 126 kB to 63 kB.
Sorry FreeBSD guys - it seems that FreeBSD is the only OS that
correctly deals with larger DMA sizes.
FreeBSD people may add a line with CDR_TRANSFERSIZE=126k
in /etc/default/cdrecord to raise the default.
The current problems are:
- On Solaris 10 Sparc fs=126k causes a kernel panic
- On Solaris 11 the drivers partially return incorrect
max DMA sizes that may cause cdrecord to fail.
- On Linux with USB fs=126k may not work at all
- On Linux with other interfaces, fs=126k may reduce
the DMA speed to a value that always causes buffer
underruns.
I hope to find a better solution in the next development cycle
after the current code has been release as stable version.
Expect the next stable release to appear very soon.
Cdda2wav (Maintained/enhanced by J
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
- Suppress some incorrect warnings from GCC by doing a double cast.
- Allow longer path names for *.inf files.
- SCSI *scgp is now a clean parameter to all SCSI transport functions.
- toc.c changed to support the new schily/hostname.h
Readcd:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Scgcheck:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Scgskeleton:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Btcflash:
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
Mkisofs (Maintained/enhanced by J
- Workaround for a GCC warning with make DEFAULTSDIR=DEFAULTS_ENG
warning: 'sccsid' defined but not used added
- Raising PATH_MAX to be at least 1024 for all platforms as Cygwin
defines PATH_MAX to 260 which is too small for Cygwin.
- Implemented a better error message in case that the boot image
could not be found inside the target tree.
- A description for the -s/-sector option was added to the man page.
This option is used to allow to create conforming multi-session
images for e.g. the Kodak Photo CD or the Kodak Picture CD.
- A description forr the -XA and -xa option was added to the man page.
- Mkisofs now writes a better error message in case that it cannot
sort a directory because more than on directory content was merged
into the ISO image.
- isoinfo -d now prints the checksum for the Eltorito validation header
Libcdrdeflt:
- This is a new library that has been introduced as mans programs like
to parse the content of /etc/default/cdrecord
Libscgcmd:
- This is a new SCSI command library
Cdrecord:
- Converted to use libcdrdeflt
- Converted to use libscgcmd
- Man page now includes many small modifications that mention BluRay media.
Cdda2wav
- Converted to use libcdrdeflt
- Converted to use libscgcmd
- The -M/-md5 option now finally works.
Cdda2wav now computes MD5-sums for the audio data and writes the result
into the *.inf files.
Readcd:
- Converted to use libcdrdeflt
- Converted to use libscgcmd
Scgcheck:
- Converted to use libcdrdeflt
- Converted to use libscgcmd
Scgskeleton:
- Converted to use libcdrdeflt
- Converted to use libscgcmd
Btcflash:
- Converted to use libcdrdeflt
- Converted to use libscgcmd
Mkisofs (Maintained/enhanced by J
- Converted to use libcdrdeflt
- Converted to use libscgcmd
NEW features of cdrtools-2.01.01a52:
All:
- Config.sub now supports NetBSD on AMD64
- The email addresses in many file have been updated.
Libfile:
- The license has been changed from a license (similar to a BSDl 4 clause)
to a new BSDL 2 clause license with permission from all involved authors.
Libscg:
- Unneeded code from libscg/scsierrs.c removed
Cdda2wav
- The MD5 implemenation (although currently unused) has been
changed from the RSA variant (that requires advertizing for RSA)
to a "public domain" implementation from Colin Plumb used
in OpenBSD.
- The new MD5 implementation has been made portable.
All:
- Extended the file COPYING to mention that the GPL used by the "mkisofs project"
requires to publish the full source for all parts of mkisofs in case that you
publish mkisofs binaries.
- Added a new Changelog file for the changes since cdrtools-2.01
- RUlES/rules.prg no longer includes a line with SHELL=/bin/sh.
This is needed to allow to implement a workaround for various bash
bugs that afffect makefiles in case that /bin/sh is linked to bash.
If your platform installs bash in /bin/sh (Linux, ....) or in case
thaat your platform offers a broken variant of the Korn Shell in /bin/sh
(like HP-UX), fetch the "Schily source consolidation" from
ftp://ftp.berlios.de/pub/schily/, compile everything and install the
original Bourne Shell, that comes with this packet, into /bin/bosh.
If you then call ./.clean and re-compilee everything, you get a "smake"
that calls /bin/bosh instead of the broken system shell.
- Added an autoconf test for POSIX violations found in POSIX.1-2008.
The official POSIX rule is not to define "new" interfaces that
are in conflict with older interfaces of the same name.
Our interfaces fexec*() have been defined and published in 1982.
The new POSIX interfaces define a different interface and the
new POSIX interfaces even use names that are not compatible with
POSIX rules. The new POSIX interfaces in question should be called
fdexec*() to follow the rules of other similar POSIX functions.
Simiar problems exist with getline()/fgetline().
We try to automatically rename our functions in case that the functions
could be found in the local libc.
Libschily:
- Added sleep.c and gettimeofday.c that emulate sleep() and gettimeofday()
when using MSVC
- Try to rename ecvt()/fcgt()/gcvt() in case that one of these functions
does not work and the libc implementation does not allow to overwrite the
function.
Libscg:
- Included a patch for the CAM interface from the FreeBSD people.
The patch sets up the CAM data structrures in a way that allows
SCSI bus and target scanning.
Cdrecord:
- Make dure that the DVD and BluRay drivers do not lower the default timeout.
cdrecord timeout=# now always allows to raise the default timeout to a larger
value.
- Added a workaround to prevent the Lite-ON BD B LH-2B1S/AL09
from hanging up when trying to write a BluRay Medium.
- Cdrecord now by default tries to set up a DMA Size of 126 kB.
If non-MMC drives are found, we fall back to the old value of 63 kB
NEW features of cdrtools-2.01.01a50:
Libschily:
- changed __malloc() -> ___malloc() for the ongoing ATARI Port
- changed __realloc() -> ___realloc() for the ongoing ATARI Port
- changed __savestr() -> ___savestr() for the ongoing ATARI Port
Cdrecord:
- The cdrecord DVD multi-border code from May 2007 has been made OpenSource.
Multi-Border is the DVD multi-session equivalent. It allows to write
up to 1024 sessions on a single DVD.
The code currently covers the most important case of writing to DVD-R/DVD-RW
media.
You need to specify -multi for every session.
- The cdrecord man page now mentions -multi with respect to DVD multi-border.
Mkisofs (Maintained/enhanced by J
- mkisofs -UDF now does not longer replace controlchars in case that -J has not
been specified at the same time. This is a workaround for the fact that
mkisofs still shares the file name management code between UDF ans Joliet.
NEW features of cdrtools-2.01.01a49:
All:
- Several Makefiles have been modified to support not only "make all"
but also "make install" without calling "make all" before. This was needed
after the change that omits the symlinks from the tar archive.
Thanks to a report from Klaus Ditze <kd@heise.de>
Libparanoia (Ported/enhanced by J
- Plenty of new comments taken from cdparanoia-III-10.2
This doubles the size of the code!
Thanks to Monty (xiphmont@mit.edu)
- i_paranoia_overlap_r() does not longer increment beginA/beginB after the
match was found searching backwards. Taken from cdparanoia-III-10.2
- paranoia_free() now also frees p->cache and p->fragments taken from cdparanoia-III-10.2
- Some numerical values used in paranoia.c have been replaced by
FLAG_* definitions.
Mkisofs (Maintained/enhanced by J
- First step of changes intended to allow to remove Mac OS 9 "hfs" support
from mkisofs. Mac OS X supports UDF extensions and "hfs" does not support
large files. For this reason, "hfs" support is an anachronism.
NEW features of cdrtools-2.01.01a46:
All:
- New autoconf test AC_CHECK_DLIB() checks for lib members while using
specified include files. This is a workaround for the autoconf hostile
gettext() and iconv() implementations on Linux.
- THe gettext()/iconv() tests have been rewritten to use AC_CHECK_DLIB()
- The autoconf test AC_FUNC_VFORK from Paul Eggert was not written in
clean C and thus failed on a ANSI-C compiler, asuming that vfork()
is not available in the ANSI case.
- README.compile fixed to refer to READMEs/README.gmake instead of
README.gmake
- Symlink support in RULES/MKLINKS added for ia64-hp-ux-cc.rul and
ia64-hp-ux-gcc.rul, thanks to a hint from Steven M. Schweda
Cdda2wav (Maintained/enhanced by J
- The new -interactive option has now been stabilized for a first integration that
allows to replace libcdio for sound-juicer to come to an implementation without
license violations.
Mkisofs (Maintained/enhanced by J
- Mkisofs now correctly limits filenames with non-ISO-8859-1 characters
to 127 chars max.
- Mkisofs now correctly sets the permissions for "invented" unreal
directories in UDF instread of using mode 000.
NEW features of cdrtools-2.01.01a47:
All:
- DEFAULTS*/Defaults.dragonfly added
Thanks to a hint from Thomas Klausner
- Added a workaround for a Sun make bug
Mkisofs (Maintained/enhanced by J
- Mkisofs now correctly sets the permissions for "invented" unreal
directories in UDF instread of using mode 000. The last version
intruced a bug during the code cleanup phase.
- Mkisofs now correctly mixes multi-extent-File directory entries from
old sessions made by mkisofs. This is only related to multi-session
with files >= 4 GB.
- isoinfo now extracts files using 10 sectors at a time to speed up
operation
[pkgsrc note: this is based on patch-cj]
NEW features of cdrtools-2.01.01a48:
All:
- Next attempt to work around the non-autoconf friendly implementation
of GNU gettext and GNU libiconv.
- A new autoconf test allows to check whether the installed system shell
(/bin/sh) properly aborts with failed commands in "sh -ce 'cmd'".
If failed simple commands in "sh -ce 'cmd'" do not abort complex
commands, "make" will not stop on errors in the build process.
Note that this is a definite POSIX incompatibility.
The most well known defective shell with respect to this problem is "bash"
but /bin/sh on HP-UX-10.x (a Korn Shell modification) does not work
correctly either. If your system (Linux, HP-HX, ...) suffers from this
problem, I recommend to fetch the Schily Source consolidation from
ftp://ftp.berlios.de/pub/schily/
Use a version that has been published past September 1st 2008, compile
and install the contained Bourne Shell as "/bin/bosh". Then call
"./.clean" and compile again. The resulting "smake" will then
automatically call "/bin/bosh" instead of "/bin/sh" in order to
execute commands.
Libfind:
- & before some functions removed
Cdrecord:
- cdrecord now correctly writes DVD+R/DL media with all drives.
Before, there have been problems at the layer break with some
drives.
The comment is wrong. With this patch, formatting and writing in RAW
mode (perhaps the latter only with Pioneer drives) does not work.
Bump PKGREVISION.
NEW features of cdrtools-2.01.01a44:
*******
NOTE: cdrtools is currently in a state just before a new major release.
*******
All:
- New directory autoconf/ contains the complete Schily autoconf system.
It is based on GNU autoconf-2.13, the latest GNU autoconf that worked
correctly even on older systems.
- Sources and makefilesystem restructured to allow all needed files to be
retrieved from the SCCS repository and to call "make" later. To achieve
this, all symlinks have been removed from the tarball.
- The Schily Makefile System now includes rules to recreate the file
"configure" by calling "autoconf". This is needed in order to allow the
complete source tree to be extracted from the SCCS repository.
Libscg:
- aspi-win32.h and spti-wnt.h now in SCCS
Cdda2wav (Maintained/enhanced by Jörg Schilling, originated by Heiko Eißfeldt heiko@hexco.de):
- Interactive mode for corrected to allow new tests
for replacing libcdio in GStreamer.
- child_pid variable moved into gloval var structure.
NEW features of cdrtools-2.01.01a45:
All:
- Added a workaround for a GNU make design bug that causes the rules
to create file "foo" to be evaluated _past_ the "include foo"
statement in a Makefile has been evaluated. Note that you still need
GNU make 3.81. GNU make 3.80 and before will still fail to compile
cdrtools because of other unfixed GNU make bugs.
Note that the basic GNU make design bug has been reported to the
GNU make maintainers and accepted as bug by the GNU make maintainers
in 1998 already. It is still unfixed in GNU make although smake and
SunPro make verify that there is no problem to do it right.
Cdrecord:
- Reduced the minimal write speed of a ultraspeed CD-RW capable drive
from 16x to 10x.
Mkisofs (Maintained/enhanced by Jörg Schilling since 1997, originated by Eric Youngdale):
- Try to avoid incostencies with USE_ARGEFILES with multi-extent files
- Corrected the iso directory record size computation in stream-file mode
- Mkisofs no longer tries to write 8 TB of data in case that -stream-media-size
was too small.