]> code.delx.au - pulseaudio/blobdiff - m4/tls.m4
Create a new macro for checking compiler support for TLS.
[pulseaudio] / m4 / tls.m4
diff --git a/m4/tls.m4 b/m4/tls.m4
new file mode 100644 (file)
index 0000000..3808f06
--- /dev/null
+++ b/m4/tls.m4
@@ -0,0 +1,17 @@
+AC_DEFUN([CC_CHECK_TLS], [
+  AC_CACHE_CHECK([whether $CC knows __thread for Thread-Local Storage],
+    cc_cv_tls___thread,
+    [AC_COMPILE_IFELSE(
+      AC_LANG_PROGRAM(
+        [[static __thread int a = 6;]],
+        [[a = 5;]]),
+      [cc_cv_tls___thread=yes],
+      [cc_cv_tls___thread=no])
+    ])
+  
+  AS_IF([test "x$cc_cv_tls___thread" = "xyes"],
+    [AC_DEFINE([SUPPORT_TLS___THREAD], 1,
+     [Define this if the compiler supports __thread for Thread-Local Storage])
+     $1],
+    [$2])
+])