X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=support%2Fsys-mman.c;h=afbe46624447d87a05a10d44e367427e0b45311d;hb=52d4b9dcb79e9d5b0c86e6d9ff297e563d80bdee;hp=15e125621d2d03b1596d3ed737dcab38019d8430;hpb=8d1a18d611a7e44bf9cdac34039652d1c325f5b0;p=mono.git diff --git a/support/sys-mman.c b/support/sys-mman.c index 15e125621d2..afbe4662444 100644 --- a/support/sys-mman.c +++ b/support/sys-mman.c @@ -22,6 +22,11 @@ #define __BSD_VISIBLE 1 #endif +#ifdef __NetBSD__ +/* For mincore () */ +#define _NETBSD_SOURCE +#endif + #include #include #include @@ -83,17 +88,25 @@ Mono_Posix_Syscall_msync (void *start, mph_size_t len, int flags) int Mono_Posix_Syscall_mlock (void *start, mph_size_t len) { +#if !defined(HAVE_MINCORE) + return ENOSYS; +#else mph_return_if_size_t_overflow (len); return mlock (start, (size_t) len); +#endif } int Mono_Posix_Syscall_munlock (void *start, mph_size_t len) { +#if defined(__HAIKU__) + return ENOSYS; +#else mph_return_if_size_t_overflow (len); return munlock (start, (size_t) len); +#endif } #ifdef HAVE_MREMAP @@ -124,9 +137,13 @@ Mono_Posix_Syscall_mremap (void *old_address, mph_size_t old_size, int Mono_Posix_Syscall_mincore (void *start, mph_size_t length, unsigned char *vec) { +#if defined(__HAIKU__) + return ENOSYS; +#else mph_return_if_size_t_overflow (length); return mincore (start, (size_t) length, (void*)vec); +#endif } #ifdef HAVE_POSIX_MADVISE