[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Libcdio-devel] S_ISFIFO() S_ISLINK() macros missing in msys-1.0.10+ming
From: |
R. Bernstein |
Subject: |
[Libcdio-devel] S_ISFIFO() S_ISLINK() macros missing in msys-1.0.10+mingw-3.4.2 |
Date: |
Sat, 10 Sep 2005 10:41:16 -0400 |
Elio Blanca reports trouble compiling libcdio in
msys-1.0.10+mingw-3.4.2. Specifically compiling the portion handling
Rock-Ridge extensions (lib/iso9660/rock.c) fails because his
environment does not provide S_IFIFO() and S_ISLNK() macros.
He has a mistaken impression that because the particular OS he uses
might not be able to handle these natively, they can't ever get used.
The Rock-Ridge specification allows for symbolic links and sockets in
an ISO-9660 filesystem.
So when one has an ISO-9660 image (it usually has an extension .ISO)
that uses the Rock-Ridge extensions and that also contains a symbolic
link or a socket in the image, then in fact those macros are used, for
example, by the application called iso-info included in libcdio. And
of course there's nothing to stop other applications using libcdio
from doing likewise.
libcdio could add a configuration option to disable handling RockRidge
extensions altogether. Alternatively or additionally, libcdio could
test for these macros and add definitions if they aren't there. The
macro definitions are pretty simple, although on inspection it looks
like existing macros use other macros. And although those macros are
not all that standard, libcdio doesn't have to use those in its
replacement definition.
Anyone care to comment on what to do, possible problems with either
approach, or anything else on this matter?
Thanks.
- [Libcdio-devel] S_ISFIFO() S_ISLINK() macros missing in msys-1.0.10+mingw-3.4.2,
R. Bernstein <=