Am 23/01/12 16:48, schrieb Svante Signell:
On Mon, 2012-01-23 at 16:38 +0100, Jelmer Vernooij wrote:
Am 23/01/12 16:16, schrieb Svante Signell:
What's the exact build failure ?
The original code uses "#ifndef IOV_MAX" to see if it should define
IOV_MAX. I don't see why that would fail if IOV_MAX isnt actually defined.
Original code:
#if !defined IOV_MAX
not defined!
# ifdef UIO_MAXIOV
not defined
# define IOV_MAX UIO_MAXIOV
# else
# ifdef __sgi
not __sgi
# define IOV_MAX 512
# else
# error IOV_MAX and UIO_MAXIOV undefined
errors out here!
# endif
# endif
#endif
with #if !defined IOV_MAX&& !defined __GNU__ the whole block of code is
skipped, since !IOV_MAX = TRUE, !__GNU__= FALSE. For other OSes,
!__GNU__ is always TRUE.
The whole point of this code block is to define IOV_MAX if the system
doesn't have it - other code relies on that constant. This change
breaks that contract.
I see that POSIX doesn't mandate IOV_MAX if there is no maximum. I think
we should perhaps remove that error altogether (and change the contract)
and fix any calling code that has an absolute dependency on IOV_MAX,
rather than special casing GNU here.
Cheers,
Jelmer
--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org