summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/alsa-symbols.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/alsa-symbols.h b/include/alsa-symbols.h
index 344f021a..f8c49103 100644
--- a/include/alsa-symbols.h
+++ b/include/alsa-symbols.h
@@ -29,10 +29,17 @@
#define INTERNAL_CONCAT2_2(Pre, Post) Pre##Post
#define INTERNAL(Name) INTERNAL_CONCAT2_2(__, Name)
+#if __GNUC__ > 10
+#define symbol_version(real, name, version) \
+ extern __typeof (real) real __attribute__((symver (#name "@" #version)))
+#define default_symbol_version(real, name, version) \
+ extern __typeof (real) real __attribute__((symver (#name "@@" #version)))
+#else
#define symbol_version(real, name, version) \
__asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@" #version)
#define default_symbol_version(real, name, version) \
__asm__ (".symver " ASM_NAME(#real) "," ASM_NAME(#name) "@@" #version)
+#endif
#ifdef __clang__
#define EXPORT_SYMBOL __attribute__((visibility("default")))