mirror of
https://github.com/SELinuxProject/selinux
synced 2025-01-26 23:32:53 +00:00
24 lines
648 B
C
24 lines
648 B
C
#ifndef _SELINUX_DSO_H
|
|
#define _SELINUX_DSO_H 1
|
|
|
|
#ifdef SHARED
|
|
# define hidden __attribute__ ((visibility ("hidden")))
|
|
# define hidden_proto(fct) __hidden_proto (fct, fct##_internal)
|
|
# define __hidden_proto(fct, internal) \
|
|
extern __typeof (fct) internal; \
|
|
extern __typeof (fct) fct __asm (#internal) hidden;
|
|
# if defined(__alpha__) || defined(__mips__)
|
|
# define hidden_def(fct) \
|
|
asm (".globl " #fct "\n" #fct " = " #fct "_internal");
|
|
# else
|
|
# define hidden_def(fct) \
|
|
asm (".globl " #fct "\n.set " #fct ", " #fct "_internal");
|
|
#endif
|
|
#else
|
|
# define hidden
|
|
# define hidden_proto(fct)
|
|
# define hidden_def(fct)
|
|
#endif
|
|
|
|
#endif
|