intel-gpu-tools: fix problem with redefinition of mmap64
authortgore <tim.gore@intel.com>
Fri, 28 Mar 2014 12:54:58 +0000 (12:54 +0000)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Fri, 28 Mar 2014 16:50:41 +0000 (17:50 +0100)
In android builds there is no reliable way to determine if mmap64 is defined
or not, and this sometimes leads to a compile error due to its re-defnition.
So this commit avoids its use altogether in intel-gpu-tools for Android builds,
unless the HAVE_MMAP64 macro is defined.

Signed-off-by: Tim Gore <tim.gore@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
lib/drmtest.h

index fdf98c6..f3afbaa 100644 (file)
 #ifdef ANDROID
 #ifndef HAVE_MMAP64
 extern void*  __mmap2(void *, size_t, int, int, int, off_t);
-static inline void *mmap64(void *addr, size_t length, int prot, int flags,
+
+/* mmap64 is a recent addition to bionic and not available in all android builds. */
+/* I can find no reliable way to know if it is defined or not - so just avoid it */
+#define mmap64 igt_mmap64
+static inline void *igt_mmap64(void *addr, size_t length, int prot, int flags,
         int fd, off64_t offset)
 {
     return __mmap2(addr, length, prot, flags, fd, offset >> 12);