diff options
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/k5-platform.h | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/src/include/k5-platform.h b/src/include/k5-platform.h index e4c339218..f4021da71 100644 --- a/src/include/k5-platform.h +++ b/src/include/k5-platform.h @@ -347,7 +347,19 @@ typedef struct { int error; unsigned char did_run; } k5_init_t; -#if defined(USE_LINKER_FINI_OPTION) || defined(_WIN32) +#if !defined(SHARED) + +/* + * In this case, we just don't care about finalization. + * + * The code will still define the function, but we won't do anything + * with it. Annoying: This may generate unused-function warnings. + */ + +# define MAKE_FINI_FUNCTION(NAME) \ + static void NAME(void) + +#elif defined(USE_LINKER_FINI_OPTION) || defined(_WIN32) /* If we're told the linker option will be used, it doesn't really matter what compiler we're using. Do it the same way regardless. */ @@ -391,16 +403,6 @@ typedef struct { int error; unsigned char did_run; } k5_init_t; # define MAKE_FINI_FUNCTION(NAME) \ static void NAME(void) __attribute__((destructor)) -#elif !defined(SHARED) - -/* In this case, we just don't care about finalization. - - The code will still define the function, but we won't do anything - with it. Annoying: This may generate unused-function warnings. */ - -# define MAKE_FINI_FUNCTION(NAME) \ - static void NAME(void) - #else # error "Don't know how to do unload-time finalization for this configuration." |
