The difference between mmap and mmap64 is the type of 'offset' argument.
mmap64 always uses a 64-bit interger as offset, while mmap uses off_t,
whose size can vary on different operating systems or architectures.
However, not all operating systems support mmap64. Fortunately, although
FreeBSD only has mmap, its off_t is always 64-bit regardless of
architectures, so we can simply use mmap when sizeof(off_t) == 8.
https://bugzilla.gnome.org/show_bug.cgi?id=791779
dnl Check for mmap (needed by electricfence plugin)
AC_FUNC_MMAP
-AC_CHECK_FUNCS([mmap64])
+AC_CHECK_SIZEOF([off_t])
AM_CONDITIONAL(GST_HAVE_MMAP, test "x$ac_cv_func_mmap_fixed_mapped" = "xyes")
dnl Check for mmap (needed by electricfence plugin)
cdata.set('SIZEOF_LONG', cc.sizeof('long'))
cdata.set('SIZEOF_SHORT', cc.sizeof('short'))
cdata.set('SIZEOF_VOIDP', cc.sizeof('void*'))
+cdata.set('SIZEOF_OFF_T', cc.sizeof('off_t'))
# Here be fixmes.
# FIXME: check if this is correct
#define ENCODED_BUFFER_SIZE (2 * 1024 * 1024)
+#if SIZEOF_OFF_T == 8
+#define mmap64 mmap
+#endif
+
enum
{
PROP_0,