Hello,
The monetary module is causing a build error on older glibc platforms
(e.g. CentOS 5):
depbase=`echo strfmon_l.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -std=gnu99 -DHAVE_CONFIG_H -DEXEEXT=\"\" -DEXEEXT=\"\"
-DNO_XMALLOC -DEXEEXT=\"\" -I. -I.. -DGNULIB_STRICT_CHECKING=1
-fvisibility=hidden -g -
O2 -MT strfmon_l.o -MD -MP -MF $depbase.Tpo -c -o strfmon_l.o
strfmon_l.c &&\
mv -f $depbase.Tpo $depbase.Po
In file included from strfmon_l.c:20:
./monetary.h:530: error: expected declaration specifiers or '...' before
'locale_t'
./monetary.h:530: error: format string argument not a string type
./monetary.h:530: error: nonnull argument with out-of-range operand
number (argument 1, operand 4)
strfmon_l.c:32: error: conflicting types for 'rpl_strfmon_l'
./monetary.h:530: error: previous declaration of 'rpl_strfmon_l' was here
make[4]: *** [strfmon_l.o] Error 1
The issue seems to be that in older glibc versions locale_t is defined
in <locale.h> instead of <xlocale.h> (which gets pulled in via
<monetary.h>).
-tgc