Use XSI-compliant strerror_r by default on non-Linux
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Tue, 21 Feb 2012 02:54:04 +0000 (21:54 -0500)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Tue, 21 Feb 2012 02:54:04 +0000 (21:54 -0500)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
include/usterr-signal-safe.h
include/usterr.h

index d46b0f6a7af8929fbd9296dfc3bf29d37bdf179d..8e2c1cd2413ed748dd781f5d797e56bb52942d13 100644 (file)
@@ -115,7 +115,10 @@ do {                                                                       \
 #define ERR(fmt, args...) ERRMSG("Error: " fmt, ## args)
 #define BUG(fmt, args...) ERRMSG("BUG: " fmt, ## args)
 
-#if (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !defined(_GNU_SOURCE)
+#if !defined(__linux__) || ((_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !defined(_GNU_SOURCE))
+/*
+ * Version using XSI strerror_r.
+ */
 #define PERROR(call, args...)\
        do { \
                char buf[200] = "Error in strerror_r()"; \
@@ -123,6 +126,9 @@ do {                                                                        \
                ERRMSG("Error: " call ": %s", ## args, buf); \
        } while(0);
 #else
+/*
+ * Version using GNU strerror_r, for linux with appropriate defines.
+ */
 #define PERROR(call, args...)\
        do { \
                char *buf; \
index 86c9bf866a256dcff7f2b2ae6bf9893381db702a..c25348d74ce9d8869965c629d15c61d3dcf54950 100644 (file)
@@ -87,7 +87,10 @@ static inline int ust_debug(void)
 #define ERR(fmt, args...) ERRMSG("Error: " fmt, ## args)
 #define BUG(fmt, args...) ERRMSG("BUG: " fmt, ## args)
 
-#if (_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !defined(_GNU_SOURCE)
+#if !defined(__linux__) || ((_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !defined(_GNU_SOURCE))
+/*
+ * Version using XSI strerror_r.
+ */
 #define PERROR(call, args...)\
        do { \
                char buf[200] = "Error in strerror_r()"; \
@@ -95,6 +98,9 @@ static inline int ust_debug(void)
                ERRMSG("Error: " call ": %s", ## args, buf); \
        } while(0);
 #else
+/*
+ * Version using GNU strerror_r, for linux with appropriate defines.
+ */
 #define PERROR(call, args...)\
        do { \
                char *buf; \
This page took 0.025762 seconds and 4 git commands to generate.