Simon Josefsson <[EMAIL PROTECTED]> wrote: > Using the perror module results in warnings: > > warning: module perror depends on a module with an incompatible license: > intprops > warning: module perror depends on a module with an incompatible license: > strerror > > The reason appears to be because perror is 'LGPLv2+' while intprops and > strerror is 'LGPL'. > > Does anyone see any problem with the patch below? > > /Simon > > diff --git a/modules/intprops b/modules/intprops > index f4709d5..0680adf 100644 > --- a/modules/intprops > +++ b/modules/intprops > @@ -14,7 +14,7 @@ Include: > "intprops.h" > > License: > -LGPL > +LGPLv2+ > > Maintainer: > Paul Eggert
An alternative is to remove strerror's dependency on the LGPL'd intprops module. (perror depends on strerror). strerror.c appears to need intprops only for its definition of the INT_STRLEN_BOUND macro, used here: { char *result = strerror (n); if (result == NULL || result[0] == '\0') { static char const fmt[] = "Unknown error (%d)"; static char mesg[sizeof fmt + INT_STRLEN_BOUND (n)]; sprintf (mesg, fmt, n); Just remove the inclusion of intprops.h and instead define INT_STRLEN_BOUND to whatever constant e.g., INT_STRLEN_BOUND(int64_t) evaluates to.