]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
configure: add cclang_threadsan - gcc's cpp bails out for __has_feature()
authorJaroslav Kysela <perex@perex.cz>
Mon, 15 Jan 2018 17:09:40 +0000 (18:09 +0100)
committerJaroslav Kysela <perex@perex.cz>
Mon, 15 Jan 2018 17:09:40 +0000 (18:09 +0100)
configure
src/tvheadend.h
src/wrappers.c

index 58c951c8c947f4ca8c4ccdfd13790173c8c14a8b..8ba29299c6ff236b373d7fe698656695581aa006 100755 (executable)
--- a/configure
+++ b/configure
@@ -76,6 +76,7 @@ OPTIONS=(
   "libsystemd_daemon:no"
   "bintray_cache:yes"
   "ddci:no"
+  "cclang_threadsan:no"
 )
 
 #
@@ -298,6 +299,13 @@ int test(void)
 }
 '
 
+check_cc_snippet cclang_threadsan '
+int test(void){
+#if __has_feature(thread_sanitizer)
+  return 0;
+#endif
+}'
+
 #
 # Python
 #
index e84a62f0ad46a9b72586a2acd121da607abd5a70..5ed6f6685acd267cc05bc817f260ae9389d38acd 100644 (file)
@@ -832,7 +832,7 @@ void tvh_qsort_r(void *base, size_t nmemb, size_t size, int (*compar)(const void
 #define TVH_TITLE_LEN 256
 
 /* sanitizer helpers */
-#if __has_feature(thread_sanitizer)
+#if ENABLE_CCLANG_THREADSAN
 void *blacklisted_memcpy(void *dest, const void *src, size_t n);
 int blacklisted_close(int fildes);
 #else
index 02a58be85c1a3f0632a498a820f82f57c9c36ab5..1b1671f68f70185c0b4475d59cae1a18a3f6c2fb 100644 (file)
@@ -654,7 +654,7 @@ int regex_match_substring_length(tvh_regex_t *regex, unsigned number)
 /*
  * Sanitizer helpers to avoid false positives
  */
-#if __has_feature(thread_sanitizer)
+#if ENABLE_CCLANG_THREADSAN
 void *blacklisted_memcpy(void *dest, const void *src, size_t n)
   __attribute__((no_sanitize("thread")))
 {