qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH for-1.1?] slirp: Avoid statements without effect on


From: Andreas Färber
Subject: [Qemu-devel] [PATCH for-1.1?] slirp: Avoid statements without effect on Big Endian host
Date: Sun, 27 May 2012 18:32:03 +0200

Darwin has HTON*/NTOH* macros that on BE simply return the argument.
This is incompatible with SLIRP's use of these macros as a statement.

Special-case Darwin in the HOST_WORDS_BIGENDIAN code path to redefine
these macros as no-op statement to avoid tons of compiler warnings.

Signed-off-by: Andreas Färber <address@hidden>
---
 slirp/ip.h |   33 ++++++++++++++++++++++-----------
 1 files changed, 22 insertions(+), 11 deletions(-)

diff --git a/slirp/ip.h b/slirp/ip.h
index 88c903f..6e98b1d 100644
--- a/slirp/ip.h
+++ b/slirp/ip.h
@@ -34,17 +34,28 @@
 #define _IP_H_
 
 #ifdef HOST_WORDS_BIGENDIAN
-# ifndef NTOHL
-#  define NTOHL(d)
-# endif
-# ifndef NTOHS
-#  define NTOHS(d)
-# endif
-# ifndef HTONL
-#  define HTONL(d)
-# endif
-# ifndef HTONS
-#  define HTONS(d)
+# if defined(__APPLE__)
+#  undef NTOHL
+#  undef NTOHS
+#  undef HTONL
+#  undef HTONS
+#  define NTOHL(d) do { } while (0)
+#  define NTOHS(d) do { } while (0)
+#  define HTONL(d) do { } while (0)
+#  define HTONS(d) do { } while (0)
+# else
+#  ifndef NTOHL
+#   define NTOHL(d)
+#  endif
+#  ifndef NTOHS
+#   define NTOHS(d)
+#  endif
+#  ifndef HTONL
+#   define HTONL(d)
+#  endif
+#  ifndef HTONS
+#   define HTONS(d)
+#  endif
 # endif
 #else
 # ifndef NTOHL
-- 
1.7.5.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]