Blame src/internal/tpax_visibility_impl.h

538329
#ifndef TPAX_VISIBILITY_IMPL_H
538329
#define TPAX_VISIBILITY_IMPL_H
538329
538329
/**********************************************************************/
538329
/* PE targets: __dllexport suffices for the purpose of exporting only */
538329
/* the desired subset of global symbols; this makes the visibility    */
538329
/* attribute not only redundant, but also tricky if not properly      */
538329
/* supported by the toolchain.                                        */
538329
/*                                                                    */
3ca0cf
/* When targeting Midipix hosts, where elf-like visibility is fully   */
3ca0cf
/* supported and may be detected via the __PE_VISIBILITY__ macro,     */
3ca0cf
/* we utilize the attribute to render private symbols invisibile      */
3ca0cf
/* to dlsym(), as well as reduce the size of the .gotstrs section.    */
538329
/**********************************************************************/
538329
3ca0cf
#if defined(__PE_VISIBILITY__)
3ca0cf
#define tpax_hidden _ATTR_VISIBILITY_HIDDEN
3ca0cf
#elif defined(__PE__)
538329
#define tpax_hidden
3ca0cf
#elif defined(_ATTR_VISIBILITY_HIDDEN)
538329
#define tpax_hidden _ATTR_VISIBILITY_HIDDEN
538329
#else
538329
#define tpax_hidden
538329
#endif
538329
538329
#endif