diff options
author | midipix <writeonce@midipix.org> | 2025-05-31 13:51:57 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2025-05-31 15:30:41 +0000 |
commit | 48569f8e02659b465c6b60c519782ed8cf42da8a (patch) | |
tree | c8262d9fa83180669e8d9668b204a4a6466dd9ce /src | |
parent | 2e7361c6e230389782a66f6defff578f40d62d53 (diff) | |
download | perk-48569f8e02659b465c6b60c519782ed8cf42da8a.tar.bz2 perk-48569f8e02659b465c6b60c519782ed8cf42da8a.tar.xz |
code base: utilize the visibility attribute also on supporting PE targets.
Diffstat (limited to 'src')
-rw-r--r-- | src/internal/perk_visibility_impl.h | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/internal/perk_visibility_impl.h b/src/internal/perk_visibility_impl.h index df45efc..0057b8b 100644 --- a/src/internal/perk_visibility_impl.h +++ b/src/internal/perk_visibility_impl.h @@ -7,20 +7,20 @@ /* attribute not only redundant, but also tricky if not properly */ /* supported by the toolchain. */ /* */ -/* When targeting Midipix, __PE__, __dllexport and __dllimport are */ -/* always defined by the toolchain. Otherwise, the absnece of these */ -/* macros has been detected by sofort's ccenv.sh during ./configure, */ -/* and they have accordingly been added to CFLAGS_OS. */ +/* When targeting Midipix hosts, where elf-like visibility is fully */ +/* supported and may be detected via the __PE_VISIBILITY__ macro, */ +/* we utilize the attribute to render private symbols invisibile */ +/* to dlsym(), as well as reduce the size of the .gotstrs section. */ /**********************************************************************/ -#ifdef __PE__ +#if defined(__PE_VISIBILITY__) +#define perk_hidden _ATTR_VISIBILITY_HIDDEN +#elif defined(__PE__) #define perk_hidden -#else -#ifdef _ATTR_VISIBILITY_HIDDEN +#elif defined(_ATTR_VISIBILITY_HIDDEN) #define perk_hidden _ATTR_VISIBILITY_HIDDEN #else #define perk_hidden #endif -#endif #endif |