cvs root doesn't build for me, and it appears to be on account of some confusion in configure and in the code regarding the iconv library. The make dies with: gcc -std=gnu99 -g -O2 -DMAINTAINER_MODE -DHAVE_CONFIG_H -Wall -W -I./popt -o mkrounding -I. ./mkrounding.c In file included from ./rsync.h:839, from ./mkrounding.c:20: ./proto.h:258: error: parse error before 'ic' proto.h:258 is: int iconvbufs(iconv_t ic, xbuf *in, xbuf *out, int flags); Apparently iconv_t isn't getting defined. iconv_t is part of the iconv library and iconv.h. In rsync.h:368 iconv.h is conditionalized by this line: #if defined HAVE_ICONV_OPEN && defined HAVE_ICONV_H #include <iconv.h> After a little experimentation I discovered that HAVE_ICONV_OPEN on my configuration is undefined. I tried tracing through the configuration files but I don't understand the logic behind the setting of HAVE_ICONV_OPEN. It's my understanding that iconv_open is part and parcel of the iconv library, and I don't understand why a test needs to be made. However configure.in hints at "Solaris and HP-UX weirdness"(?) To temporarily work around this build problem I reconfigured with --disable-iconv, but since the offending line in proto.h isn't conditionalized it still fails, but for a different reason. So two problems: 1. cvs root isn't building on OS X due to HAVE_ICONV_OPEN not being set. But iconv_open() exists, so maybe there's a problem with the configuration tests. 2. Attempting to disable iconv support via --disable-iconv fails because some parts of the code are not conditionalized. I came across proto.h:258 and flist.c:1649 (filesfrom_convert). There are probably others.
I checked in some fixes to get the non-iconv code working again. If you know a way to do iconv conversions on a mac, let me know. If not, I may check into it before too long.