X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=e_os2.h;h=60f9b5c9c7c46f56263d944fbdce63c59aa262d8;hp=18b68527afb4600c78e93a407af4115e7fb50929;hb=f1ce306f301dc4214a9def53b079dfbcf8dcb299;hpb=dc01b6b1f20e9fa8a975f5f28e55fdaa75fe37e6 diff --git a/e_os2.h b/e_os2.h index 18b68527af..60f9b5c9c7 100644 --- a/e_os2.h +++ b/e_os2.h @@ -76,6 +76,12 @@ extern "C" { # define OPENSSL_SYS_MACINTOSH_CLASSIC #endif +/* ----------------------- NetWare ----------------------------------------- */ +#if defined(NETWARE) || defined(OPENSSL_SYSNAME_NETWARE) +# undef OPENSSL_SYS_UNIX +# define OPENSSL_SYS_NETWARE +#endif + /* ---------------------- Microsoft operating systems ---------------------- */ /* The 16 bit environments are pretty straightforward */ @@ -90,22 +96,31 @@ extern "C" { /* For 32 bit environment, there seems to be the CygWin environment and then all the others that try to do the same thing Microsoft does... */ -#if defined(__CYGWIN32__) || defined(OPENSSL_SYSNAME_CYGWIN32) +#if defined(OPENSSL_SYSNAME_UWIN) # undef OPENSSL_SYS_UNIX -# define OPENSSL_SYS_WIN32_CYGWIN +# define OPENSSL_SYS_WIN32_UWIN #else -# if defined(_WIN32) || defined(OPENSSL_SYSNAME_WIN32) -# undef OPENSSL_SYS_UNIX -# define OPENSSL_SYS_WIN32 -# endif -# if defined(OPENSSL_SYSNAME_WINNT) +# if defined(__CYGWIN32__) || defined(OPENSSL_SYSNAME_CYGWIN32) # undef OPENSSL_SYS_UNIX -# define OPENSSL_SYS_WINNT +# define OPENSSL_SYS_WIN32_CYGWIN +# else +# if defined(_WIN32) || defined(OPENSSL_SYSNAME_WIN32) +# undef OPENSSL_SYS_UNIX +# define OPENSSL_SYS_WIN32 +# endif +# if defined(OPENSSL_SYSNAME_WINNT) +# undef OPENSSL_SYS_UNIX +# define OPENSSL_SYS_WINNT +# endif +# if defined(OPENSSL_SYSNAME_WINCE) +# undef OPENSSL_SYS_UNIX +# define OPENSSL_SYS_WINCE +# endif # endif #endif /* Anything that tries to look like Microsoft is "Windows" */ -#if defined(OPENSSL_SYS_WIN16) || defined(OPENSSL_SYS_WIN32) || defined(OPENSSL_SYS_WINNT) +#if defined(OPENSSL_SYS_WIN16) || defined(OPENSSL_SYS_WIN32) || defined(OPENSSL_SYS_WINNT) || defined(OPENSSL_SYS_WINCE) # undef OPENSSL_SYS_UNIX # define OPENSSL_SYS_WINDOWS # ifndef OPENSSL_SYS_MSDOS @@ -131,6 +146,9 @@ extern "C" { # define OPENSSL_SYS_VMS # if defined(__DECC) # define OPENSSL_SYS_VMS_DECC +# elif defined(__DECCXX) +# define OPENSSL_SYS_VMS_DECC +# define OPENSSL_SYS_VMS_DECCXX # else # define OPENSSL_SYS_VMS_NODECC # endif @@ -144,7 +162,7 @@ extern "C" { /* --------------------------------- Unix ---------------------------------- */ #ifdef OPENSSL_SYS_UNIX -# if defined(linux) || defined(OPENSSL_SYSNAME_LINUX) +# if defined(linux) || defined(__linux__) || defined(OPENSSL_SYSNAME_LINUX) # define OPENSSL_SYS_LINUX # endif # ifdef OPENSSL_SYSNAME_MPE @@ -162,6 +180,13 @@ extern "C" { # ifdef OPENSSL_SYSNAME_MACOSX # define OPENSSL_SYS_MACOSX # endif +# ifdef OPENSSL_SYSNAME_MACOSX_RHAPSODY +# define OPENSSL_SYS_MACOSX_RHAPSODY +# define OPENSSL_SYS_MACOSX +# endif +# ifdef OPENSSL_SYSNAME_SUNOS +# define OPENSSL_SYS_SUNOS +#endif # if defined(_CRAY) || defined(OPENSSL_SYSNAME_CRAY) # define OPENSSL_SYS_CRAY # endif @@ -170,12 +195,25 @@ extern "C" { # endif #endif +/* --------------------------------- VOS ----------------------------------- */ +#ifdef OPENSSL_SYSNAME_VOS +# define OPENSSL_SYS_VOS +#endif + +/* ------------------------------- VxWorks --------------------------------- */ +#ifdef OPENSSL_SYSNAME_VXWORKS +# define OPENSSL_SYS_VXWORKS +#endif + /** * That's it for OS-specific stuff *****************************************************************************/ /* Specials for I/O an exit */ +#ifdef OPENSSL_SYS_WIN16 +# define OPENSSL_NO_FP_API +#endif #ifdef OPENSSL_SYS_MSDOS # define OPENSSL_UNISTD_IO # define OPENSSL_DECLARE_EXIT extern void exit(int); @@ -229,9 +267,10 @@ extern "C" { #define foobar OPENSSL_GLOBAL_REF(foobar) */ #ifdef OPENSSL_EXPORT_VAR_AS_FUNCTION -# define OPENSSL_IMPLEMENT_GLOBAL(type,name) static type _hide_##name; \ - type *_shadow_##name(void) { return &_hide_##name; } \ - static type _hide_##name +# define OPENSSL_IMPLEMENT_GLOBAL(type,name) \ + extern type _hide_##name; \ + type *_shadow_##name(void) { return &_hide_##name; } \ + static type _hide_##name # define OPENSSL_DECLARE_GLOBAL(type,name) type *_shadow_##name(void) # define OPENSSL_GLOBAL_REF(name) (*(_shadow_##name())) #else