Testing a linux application that uses "madvise", varnish cache, I have realized that in cygwin doesnot exists this function but exists the alternative "posix_madvise".
Adding inside configure.ac script: + AC_DEFINE([madvise], [posix_madvise], [In CYGWIN, madvise function is not defined, instead we use posix_madvise]) + AC_DEFINE([MADV_RANDOM], [POSIX_MADV_RANDOM], [In CYGWIN, MADV_RANDOM define is not defined, instead we use POSIX_MADV_RANDOM]) allows compiling successfuly the aplication, without any other source changes. I think it could be interesting adding this defines to cygwin headers, at the end of <sys/mman.h> file #define madvise posix_madvise #define MADV_NORMAL POSIX_MADV_NORMAL #define MADV_SEQUENTIAL POSIX_MADV_SEQUENTIAL #define MADV_RANDOM POSIX_MADV_RANDOM #define MADV_WILLNEED POSIX_MADV_WILLNEED #define MADV_DONTNEED POSIX_MADV_DONTNEED This allows us to make less changes when compiling linux applications. I have seen that correct POSIX function is "posix_madvise" and "madvise" is defined in some systems: Linux and FreeBSD but seems people in this systems prefer use it instead posix_* alternative. -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple