aboutsummaryrefslogtreecommitdiff
path: root/src/librc.h
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2007-04-13 14:18:38 +0000
committerMike Frysinger <vapier@gentoo.org>2007-04-13 14:18:38 +0000
commit1c82d532474798a1b07f85c5a925a2ad27ac2c27 (patch)
treeff3b99eaeef8784f81793c8a39a54222a24a0493 /src/librc.h
parenta822d2d11872c10925e7f2bfa65b27e30a9700a5 (diff)
add hidden visibility support to libeinfo as well
Diffstat (limited to 'src/librc.h')
-rw-r--r--src/librc.h20
1 files changed, 3 insertions, 17 deletions
diff --git a/src/librc.h b/src/librc.h
index 66d67776..5791fed4 100644
--- a/src/librc.h
+++ b/src/librc.h
@@ -41,23 +41,9 @@
#include "rc-misc.h"
#include "strlist.h"
-/* internal alias trickery! we dont want internal relocs! */
-#if defined(__ELF__) && defined(__GNUC__)
-# define __hidden_asmname(name) __hidden_asmname1 (__USER_LABEL_PREFIX__, name)
-# define __hidden_asmname1(prefix, name) __hidden_asmname2(prefix, name)
-# define __hidden_asmname2(prefix, name) #prefix name
-# define __hidden_proto(name, internal) \
- extern __typeof (name) name __asm__ (__hidden_asmname (#internal)) \
- __attribute__ ((visibility ("hidden")));
-# define __hidden_ver(local, internal, name) \
- extern __typeof (name) __EI_##name __asm__(__hidden_asmname (#internal)); \
- extern __typeof (name) __EI_##name __attribute__((alias (__hidden_asmname1 (,#local))))
-# define librc_hidden_proto(name) __hidden_proto(name, __RC_##name)
-# define librc_hidden_def(name) __hidden_ver(__RC_##name, name, name);
-#else
-# define librc_hidden_proto(name)
-# define librc_hidden_def(name)
-#endif
+#include "hidden-visibility.h"
+#define librc_hidden_proto(x) hidden_proto(x)
+#define librc_hidden_def(x) hidden_def(x)
librc_hidden_proto(rc_allow_plug)
librc_hidden_proto(rc_config_env)