Go to the documentation of this file.
21 #ifndef ION_PLATFORM_CONFIG_H_
22 #define ION_PLATFORM_CONFIG_H_
27 #define ION_PLATFORM_WINDOWS
31 #define ION_PLATFORM_CYGWIN
35 #define ION_PLATFORM_ANDROID
40 #if (defined(ION_PLATFORM_WINDOWS) || defined(ION_PLATFORM_CYGWIN)) && defined(_WINDLL)
41 #define ION_API_EXPORT __declspec(dllexport)
43 #define ION_API_EXPORT __attribute__ ((visibility("default")))
45 #define ION_API_EXPORT
49 #if __STDC_VERSION__ >= 201112L
50 #define THREAD_LOCAL_STORAGE _Thread_local
52 #define THREAD_LOCAL_STORAGE __thread
53 #elif defined(_MSC_VER)
54 #define THREAD_LOCAL_STORAGE __declspec(thread)
56 #error "Compiler does not support thread local storage"
60 #if __STDC_VERSION__ >= 201112L
61 #define ALIGN_AS(size) _Alignas(size)
63 #define ALIGN_AS(size) __attribute__((__aligned__(size)))
64 #elif defined(_MSC_VER)
65 #define ALIGN_AS(size) __declspec(align(size))
67 #error "Compiler does not support type alignment specification"