From d741429a9b81fc62666e9be1ab4076e435195093 Mon Sep 17 00:00:00 2001 From: Blue Swirl Date: Sat, 12 Sep 2009 12:36:04 +0000 Subject: [PATCH] Add #defines needed by OpenSolaris, fix breakage by the #defines We need to define _XOPEN_SOURCE and __EXTENSIONS__ macros in order to get CMSG_ and TIOCWIN macros defined. But then _POSIX_C_SOURCE gets defined, which is (incorrectly) used as an indicator for existence of posix_memalign() in osdep.c. Signed-off-by: Blue Swirl --- configure | 4 ++++ osdep.c | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/configure b/configure index 646da75388..1160cf6559 100755 --- a/configure +++ b/configure @@ -326,6 +326,10 @@ SunOS) audio_drv_list="oss" fi audio_possible_drivers="oss sdl" +# needed for CMSG_ macros in sys/socket.h + QEMU_CFLAGS="-D_XOPEN_SOURCE=600 $QEMU_CFLAGS" +# needed for TIOCWIN* defines in termios.h + QEMU_CFLAGS="-D__EXTENSIONS__ $QEMU_CFLAGS" QEMU_CFLAGS="-std=gnu99 $QEMU_CFLAGS" LIBS="-lsocket -lnsl -lresolv $LIBS" ;; diff --git a/osdep.c b/osdep.c index 90cc95fd75..fd8bbd7e24 100644 --- a/osdep.c +++ b/osdep.c @@ -48,7 +48,7 @@ #include "sysemu.h" #include "qemu_socket.h" -#if !defined(_POSIX_C_SOURCE) || defined(_WIN32) +#if !defined(_POSIX_C_SOURCE) || defined(_WIN32) || defined(__sun__) static void *oom_check(void *ptr) { if (ptr == NULL) { @@ -87,7 +87,7 @@ void qemu_vfree(void *ptr) void *qemu_memalign(size_t alignment, size_t size) { -#if defined(_POSIX_C_SOURCE) +#if defined(_POSIX_C_SOURCE) && !defined(__sun__) int ret; void *ptr; ret = posix_memalign(&ptr, alignment, size); -- 2.39.5