I pushed this: pathchk: port to hosts where mbstate_t is replaced This problem was discovered when trying to build git coreutils on Solaris 8 sparcv9 with Sun C 5.8: the 3rd argument to mbrlen was of type int * (a pointer to the gnulib replacement mbstate_t) but the system mbrlen wants the system mbstate_t *. * bootstrap.conf (gnulib_modules): Add mbrlen. * src/pathchk.c (mbrlen, mbstate_t) [!(HAVE_MBRLEN && HAVE_MBSTATE_T)]: Remove macros, which are wrong now that gnulib supplies replacements for mbstate_t and mbrlen. diff --git a/bootstrap.conf b/bootstrap.conf index 964b0be..820cb54 100644 --- a/bootstrap.conf +++ b/bootstrap.conf @@ -139,6 +139,7 @@ gnulib_modules=" maintainer-makefile malloc-gnu manywarnings + mbrlen mbrtowc mbsalign mbswidth diff --git a/src/pathchk.c b/src/pathchk.c index 8146528..4632696 100644 --- a/src/pathchk.c +++ b/src/pathchk.c @@ -25,11 +25,6 @@ #include "quote.h" #include "quotearg.h"
-#if ! (HAVE_MBRLEN && HAVE_MBSTATE_T) -# define mbrlen(s, n, ps) 1 -# define mbstate_t int -#endif - /* The official name of this program (e.g., no `g' prefix). */ #define PROGRAM_NAME "pathchk"
