On 9/16/2011 3:17 PM, Alan W. Irwin wrote: > typedef int _ssize_t; > typedef _ssize_t ssize_t; > > in MinGW/include/sys/types.h > > is completely avoided or _SSIZE_T_DEFINED is #define'd by > some other non-MinGW system header on Microsoft Windows.
I installed a fresh MinGW with the most recent mingw-get package information. It does install gcc 4.6 and does get your error. Try this patch: diff --git a/Utilities/cmlibarchive/libarchive/archive.h b/Utilities/cmlibarchive/libarchive/archive.h index 9b918a8..b2bb829 100644 --- a/Utilities/cmlibarchive/libarchive/archive.h +++ b/Utilities/cmlibarchive/libarchive/archive.h @@ -52,7 +52,7 @@ /* These should match the types used in 'struct stat' */ #if defined(_WIN32) && !defined(__CYGWIN__) #define __LA_INT64_T __int64 -# if defined(_SSIZE_T_DEFINED) +# if defined(_SSIZE_T_DEFINED) || (defined(_SSIZE_T_) && !defined(_NO_OLDNAMES)) # define __LA_SSIZE_T ssize_t # elif defined(_WIN64) > Another possibility is to clean up what I believe is the cause of this > mess which is the use of fixed types rather than macro-defined types > in Utilities/cmlibarchive/libarchive/*.c code which are potentially > inconsistent (as in this case) with macro-defined types in > Utilities/cmlibarchive/libarchive/archive.h. I think upstream libarchive is trying to change everything to "int64_t" for libarchive 3. -Brad _______________________________________________ cmake-developers mailing list [email protected] http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers
