Update portability notes.
[darkstat] / cdefs.h
diff --git a/cdefs.h b/cdefs.h
index d6b463c..05c8172 100644 (file)
--- a/cdefs.h
+++ b/cdefs.h
@@ -1,7 +1,9 @@
 /* darkstat 3
- * copyright (c) 2001-2008 Emil Mikulic.
+ * copyright (c) 2001-2014 Emil Mikulic.
  *
- * darkstat.h: general macros
+ * cdefs.h: compiler-specific defines
+ *
+ * This file borrows from FreeBSD's sys/cdefs.h
  */
 
 #ifdef __GNUC__
 # define _printflike_(fmtarg, firstvararg)
 #endif
 
-#if __GNUC__ == 2
-# define inline __inline__
-#else
-# ifdef __TenDRA__
-#  define inline __inline
-# endif
-#endif
-
-#if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 199901
-#define restrict __restrict
+#ifndef MAX
+# define MAX(a,b) ((a) > (b) ? (a) : (b))
 #endif
 
-#ifndef max
-# define max(a,b) ((a) > (b) ? (a) : (b))
+#ifndef MIN
+# define MIN(a,b) ((a) < (b) ? (a) : (b))
 #endif
 
-#ifndef min
-# define min(a,b) ((a) < (b) ? (a) : (b))
+#if !defined(__STDC_VERSION__) || __STDC_VERSION__ < 201112L
+# ifdef __COUNTER__
+#  define _Static_assert(x, y)    __Static_assert(x, __COUNTER__)
+# else
+#  define _Static_assert(x, y)    __Static_assert(x, __LINE__)
+# endif
+# define __Static_assert(x, y)   ___Static_assert(x, y)
+# define ___Static_assert(x, y)  typedef char __assert_ ## y[(x) ? 1 : -1]
 #endif
 
 /* vim:set ts=3 sw=3 tw=78 expandtab: */