diff options
author | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2014-05-03 08:08:35 +0200 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2014-05-03 08:08:35 +0200 |
commit | 33d85c7356db8e4a9b60a38875a9f667702ca808 (patch) | |
tree | 2178fc9ce780e249bfa29cf7e16da976832c6e1c | |
parent | 9208f6c932359b0ae2092f495f1738a211e145e0 (diff) | |
download | gnutls-33d85c7356db8e4a9b60a38875a9f667702ca808.tar.gz |
Added support for constructors and destructors in solaris CC.
-rw-r--r-- | lib/gnutls_global.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/lib/gnutls_global.c b/lib/gnutls_global.c index fe9cf35d56..a016bbe785 100644 --- a/lib/gnutls_global.c +++ b/lib/gnutls_global.c @@ -39,12 +39,14 @@ /* Minimum library versions we accept. */ #define GNUTLS_MIN_LIBTASN1_VERSION "0.3.4" -#if defined(__GNUC__) || defined(ENABLE_FIPS140) -# define _CONSTRUCTOR __attribute__((constructor)) -# define _DESTRUCTOR __attribute__((destructor)) -#else +#ifdef SOLARIS +# pragma fini(lib_deinit) +# pragma init(lib_init) # define _CONSTRUCTOR # define _DESTRUCTOR +#else +# define _CONSTRUCTOR __attribute__((constructor)) +# define _DESTRUCTOR __attribute__((destructor)) #endif /* created by asn1c */ @@ -398,7 +400,7 @@ const char *gnutls_check_version(const char *req_version) return NULL; } -_CONSTRUCTOR static void lib_init(void) +static void _CONSTRUCTOR lib_init(void) { int ret; @@ -409,7 +411,7 @@ int ret; } } -_DESTRUCTOR static void lib_deinit(void) +static void _DESTRUCTOR lib_deinit(void) { _gnutls_global_deinit(1); } |