| 1 | // | 
|---|
| 2 | // Platform_POSIX.h | 
|---|
| 3 | // | 
|---|
| 4 | // Library: Foundation | 
|---|
| 5 | // Package: Core | 
|---|
| 6 | // Module:  Platform | 
|---|
| 7 | // | 
|---|
| 8 | // Platform and architecture identification macros | 
|---|
| 9 | // and platform-specific definitions for various POSIX platforms | 
|---|
| 10 | // | 
|---|
| 11 | // Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH. | 
|---|
| 12 | // and Contributors. | 
|---|
| 13 | // | 
|---|
| 14 | // SPDX-License-Identifier:	BSL-1.0 | 
|---|
| 15 | // | 
|---|
| 16 |  | 
|---|
| 17 |  | 
|---|
| 18 | #ifndef Foundation_Platform_POSIX_INCLUDED | 
|---|
| 19 | #define Foundation_Platform_POSIX_INCLUDED | 
|---|
| 20 |  | 
|---|
| 21 |  | 
|---|
| 22 | // | 
|---|
| 23 | // PA-RISC based HP-UX platforms have some issues... | 
|---|
| 24 | // | 
|---|
| 25 | #if defined(hpux) || defined(_hpux) | 
|---|
| 26 | #if defined(__hppa) || defined(__hppa__) | 
|---|
| 27 | #define POCO_NO_SYS_SELECT_H 1 | 
|---|
| 28 | #if defined(__HP_aCC) | 
|---|
| 29 | #define POCO_NO_TEMPLATE_ICOMPARE 1 | 
|---|
| 30 | #endif | 
|---|
| 31 | #endif | 
|---|
| 32 | #endif | 
|---|
| 33 |  | 
|---|
| 34 |  | 
|---|
| 35 | // | 
|---|
| 36 | // Thread-safety of local static initialization | 
|---|
| 37 | // | 
|---|
| 38 | #if __cplusplus >= 201103L || __GNUC__ >= 4 || defined(__clang__) | 
|---|
| 39 | #ifndef POCO_LOCAL_STATIC_INIT_IS_THREADSAFE | 
|---|
| 40 | #define POCO_LOCAL_STATIC_INIT_IS_THREADSAFE 1 | 
|---|
| 41 | #endif | 
|---|
| 42 | #endif | 
|---|
| 43 |  | 
|---|
| 44 |  | 
|---|
| 45 | // | 
|---|
| 46 | // No syslog.h on QNX/BB10 | 
|---|
| 47 | // | 
|---|
| 48 | #if defined(__QNXNTO__) | 
|---|
| 49 | #define POCO_NO_SYSLOGCHANNEL | 
|---|
| 50 | #endif | 
|---|
| 51 |  | 
|---|
| 52 |  | 
|---|
| 53 | // | 
|---|
| 54 | // C++14 support | 
|---|
| 55 | // | 
|---|
| 56 |  | 
|---|
| 57 | // Enable C++14 support for AppleClang 503.x (Clang 3.4) | 
|---|
| 58 | #if defined(__clang__) && defined(__apple_build_version__) && (__apple_build_version__ >= 5030038) && !defined(POCO_ENABLE_CPP14) && !defined(POCO_DISABLE_CPP14) | 
|---|
| 59 | #define POCO_ENABLE_CPP14 | 
|---|
| 60 | #endif | 
|---|
| 61 |  | 
|---|
| 62 | // Enable C++14 support for Clang 3.4 | 
|---|
| 63 | #if defined(__clang__) && !defined(__apple_build_version__) && (__clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 4)) && !defined(POCO_ENABLE_CPP14) && !defined(POCO_DISABLE_CPP14) | 
|---|
| 64 | #define POCO_ENABLE_CPP14 | 
|---|
| 65 | #endif | 
|---|
| 66 |  | 
|---|
| 67 | // Enable C++14 support for GCC 4.9.2 | 
|---|
| 68 | #if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ > 9 || (__GNUC_MINOR__ == 9 && __GNUC_PATCHLEVEL__ >= 2)))) && !defined(POCO_ENABLE_CPP14) && !defined(POCO_DISABLE_CPP14) | 
|---|
| 69 | #define POCO_ENABLE_CPP14 | 
|---|
| 70 | #endif | 
|---|
| 71 |  | 
|---|
| 72 |  | 
|---|
| 73 | #endif // Foundation_Platform_POSIX_INCLUDED | 
|---|
| 74 |  | 
|---|