MAP_GUARD, MAP_EXCL, and MAP_NOCORE are FreeBSD only. Define them to be 0 if they aren't defined, and rely on the compiler to optimize away sections not relevant. Added only to the top of mmap.c since that's the only place we need this.
Signed-off-by: Warner Losh <i...@bsdimp.com> --- bsd-user/mmap.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/bsd-user/mmap.c b/bsd-user/mmap.c index d6c5a344c9b..2d91e8e8826 100644 --- a/bsd-user/mmap.c +++ b/bsd-user/mmap.c @@ -20,6 +20,20 @@ #include "qemu.h" +/* + * Not all the BSDs have all the MAP flags, so define some of them to 0 here and + * rely on the compiler optimizing always false conditions away. + */ +#ifndef MAP_GUARD +#define MAP_GUARD 0 +#endif +#ifndef MAP_EXCL +#define MAP_EXCL 0 +#endif +#ifndef MAP_NOCORE +#define MAP_NOCORE 0 +#endif + static pthread_mutex_t mmap_mutex = PTHREAD_MUTEX_INITIALIZER; static __thread int mmap_lock_count; -- 2.40.0