Home | History | Annotate | Download | only in src
      1 #ifndef _SELINUX_DSO_H
      2 #define _SELINUX_DSO_H	1
      3 
      4 #ifdef SHARED
      5 # define hidden __attribute__ ((visibility ("hidden")))
      6 # define hidden_proto(fct) __hidden_proto (fct, fct##_internal)
      7 # define __hidden_proto(fct, internal)	\
      8      extern __typeof (fct) internal;	\
      9      extern __typeof (fct) fct __asm (#internal) hidden;
     10 # if defined(__alpha__) || defined(__mips__)
     11 #  define hidden_def(fct) \
     12      asm (".globl " #fct "\n" #fct " = " #fct "_internal");
     13 # else
     14 #  define hidden_def(fct) \
     15      asm (".globl " #fct "\n.set " #fct ", " #fct "_internal");
     16 #endif
     17 #else
     18 # define hidden
     19 # define hidden_proto(fct)
     20 # define hidden_def(fct)
     21 #endif
     22 
     23 #endif
     24