summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2013-04-28 20:10:33 +0200
committerJan Kratochvil <jan.kratochvil@redhat.com>2013-04-30 14:25:18 +0200
commitfba1588ee438e47a24e92fbd378756501933d00d (patch)
tree2d3cde2c13b845806f5da6b88e01cae7e9cc9499
parent807ea3155d09c9b128f569b469209e530879e690 (diff)
downloadelfutils-fba1588ee438e47a24e92fbd378756501933d00d.tar.gz
New macro COMPAT_VERSION_NEWPROTO.
lib/ * eu-config.h (COMPAT_VERSION_NEWPROTO): New. Twice. Signed-off-by: Jan Kratochvil <jan.kratochvil@redhat.com>
-rw-r--r--lib/ChangeLog4
-rw-r--r--lib/eu-config.h6
2 files changed, 10 insertions, 0 deletions
diff --git a/lib/ChangeLog b/lib/ChangeLog
index 1fa42491..6ce3168f 100644
--- a/lib/ChangeLog
+++ b/lib/ChangeLog
@@ -1,3 +1,7 @@
+2013-04-30 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * eu-config.h (COMPAT_VERSION_NEWPROTO): New. Twice.
+
2013-04-26 Jan Kratochvil <jan.kratochvil@redhat.com>
* system.h (LE64, BE64): Move here the definitions from
diff --git a/lib/eu-config.h b/lib/eu-config.h
index 68efb82b..3afff26a 100644
--- a/lib/eu-config.h
+++ b/lib/eu-config.h
@@ -170,12 +170,18 @@ asm (".section predict_data, \"aw\"; .previous\n"
".symver _compat." #version "." #name "," #name "@" #version);
# define NEW_VERSION(name, version) \
asm (".symver " #name "," #name "@@@" #version);
+# define COMPAT_VERSION_NEWPROTO(name, version, prefix) \
+ asm (".symver _compat." #version "." #name "," #name "@" #version); \
+ __typeof (_compat_##prefix##_##name) _compat_##prefix##_##name \
+ asm ("_compat." #version "." #name);
# define COMPAT_VERSION(name, version, prefix) \
asm (".symver _compat." #version "." #name "," #name "@" #version); \
__typeof (name) _compat_##prefix##_##name asm ("_compat." #version "." #name);
#else
# define OLD_VERSION(name, version) /* Nothing for static linking. */
# define NEW_VERSION(name, version) /* Nothing for static linking. */
+# define COMPAT_VERSION_NEWPROTO(name, version, prefix) \
+ error "should use #ifdef SHARED"
# define COMPAT_VERSION(name, version, prefix) error "should use #ifdef SHARED"
#endif