Move more portability goo over from pgbouncer.
authorMarko Kreen <markokr@gmail.com>
Wed, 16 Jun 2010 09:24:32 +0000 (12:24 +0300)
committerMarko Kreen <markokr@gmail.com>
Wed, 16 Jun 2010 09:25:29 +0000 (12:25 +0300)
FLEX_ARRAY, __func__, event_loopbreak.

usual/base.h
usual/event.h

index 5a905c6b1092ad5f06c6917948fc47c754050bed..52c39e17fbc60adea7d936030e0368d31e3523a8 100644 (file)
 /* number of elements in array */
 #define ARRAY_NELEM(a) (sizeof(a) / sizeof((a)[0]))
 
+/* how to specify array with unknown length */
+#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)
+#define FLEX_ARRAY
+#elif defined(__GNUC__)
+#define FLEX_ARRAY
+#else
+#define FLEX_ARRAY 1
+#endif
+
+/* tag for packed structure */
 #define _PACKED                        __attribute__((packed))
 
+/*
+ * Make sure __func__ works.
+ */
+#ifndef HAVE_FUNCNAME__FUNC
+#define __func__ __FUNCTION__
+#endif
+
 /*
  * make compiler do something useful
  */
index 51ddfe4ae1109bbf02712be3def7edaa9d3e866a..939fb280ab8da90833b1486caca29a4cdaf581ac 100644 (file)
@@ -39,6 +39,11 @@ static inline struct event_base *event_base_new(void)
 }
 #endif
 
+/* libevent 1.3 does not have event_loopbreak() */
+#ifndef HAVE_EVENT_LOOPBREAK
+static inline void event_loopbreak(void) { }
+#endif
+
 #else
 
 /*