Export.h (3863B)
1 /** @file 2 @brief Automatically-generated export header - do not edit! 3 4 @date 2016 5 6 @author 7 Sensics, Inc. 8 <http://sensics.com/osvr> 9 */ 10 11 // Copyright 2016 Sensics, Inc. 12 // 13 // Licensed under the Apache License, Version 2.0 (the "License"); 14 // you may not use this file except in compliance with the License. 15 // You may obtain a copy of the License at 16 // 17 // http://www.apache.org/licenses/LICENSE-2.0 18 // 19 // Unless required by applicable law or agreed to in writing, software 20 // distributed under the License is distributed on an "AS IS" BASIS, 21 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 22 // See the License for the specific language governing permissions and 23 // limitations under the License. 24 25 #ifndef OSVR_UTIL_EXPORT_H 26 #define OSVR_UTIL_EXPORT_H 27 28 #ifdef OSVR_UTIL_STATIC_DEFINE 29 # define OSVR_UTIL_EXPORT 30 # define OSVR_UTIL_NO_EXPORT 31 #endif 32 33 /* Per-compiler advance preventative definition */ 34 #if defined(__BORLANDC__) || defined(__CODEGEARC__) || defined(__HP_aCC) || \ 35 defined(__PGI) || defined(__WATCOMC__) 36 /* Compilers that don't support deprecated, according to CMake. */ 37 # ifndef OSVR_UTIL_DEPRECATED 38 # define OSVR_UTIL_DEPRECATED 39 # endif 40 #endif 41 42 /* Check for attribute support */ 43 #if defined(__INTEL_COMPILER) 44 /* Checking before GNUC because Intel implements GNU extensions, 45 * so it chooses to define __GNUC__ as well. */ 46 # if __INTEL_COMPILER >= 1200 47 /* Intel compiler 12.0 or newer can handle these attributes per CMake */ 48 # define OSVR_UTIL_EXPORT_HEADER_SUPPORTS_ATTRIBUTES 49 # endif 50 51 #elif defined(__GNUC__) 52 # if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2)) 53 /* GCC 4.2+ */ 54 # define OSVR_UTIL_EXPORT_HEADER_SUPPORTS_ATTRIBUTES 55 # endif 56 #endif 57 58 /* Per-platform defines */ 59 #if defined(_MSC_VER) 60 /* MSVC on Windows */ 61 62 # ifndef OSVR_UTIL_EXPORT 63 # ifdef osvrUtil_EXPORTS 64 /* We are building this library */ 65 # define OSVR_UTIL_EXPORT __declspec(dllexport) 66 # else 67 /* We are using this library */ 68 # define OSVR_UTIL_EXPORT __declspec(dllimport) 69 # endif 70 # endif 71 72 # ifndef OSVR_UTIL_DEPRECATED 73 # define OSVR_UTIL_DEPRECATED __declspec(deprecated) 74 # endif 75 76 #elif defined(_WIN32) && defined(__GNUC__) 77 /* GCC-compatible on Windows */ 78 79 # ifndef OSVR_UTIL_EXPORT 80 # ifdef osvrUtil_EXPORTS 81 /* We are building this library */ 82 # define OSVR_UTIL_EXPORT __attribute__((dllexport)) 83 # else 84 /* We are using this library */ 85 # define OSVR_UTIL_EXPORT __attribute__((dllimport)) 86 # endif 87 # endif 88 89 # ifndef OSVR_UTIL_DEPRECATED 90 # define OSVR_UTIL_DEPRECATED __attribute__((__deprecated__)) 91 # endif 92 93 #elif defined(OSVR_UTIL_EXPORT_HEADER_SUPPORTS_ATTRIBUTES) || \ 94 (defined(__APPLE__) && defined(__MACH__)) 95 /* GCC4.2+ compatible (assuming something *nix-like) and Mac OS X */ 96 /* (The first macro is defined at the top of the file, if applicable) */ 97 /* see https://gcc.gnu.org/wiki/Visibility */ 98 99 # ifndef OSVR_UTIL_EXPORT 100 /* We are building/using this library */ 101 # define OSVR_UTIL_EXPORT __attribute__((visibility("default"))) 102 # endif 103 104 # ifndef OSVR_UTIL_NO_EXPORT 105 # define OSVR_UTIL_NO_EXPORT __attribute__((visibility("hidden"))) 106 # endif 107 108 # ifndef OSVR_UTIL_DEPRECATED 109 # define OSVR_UTIL_DEPRECATED __attribute__((__deprecated__)) 110 # endif 111 112 #endif 113 /* End of platform ifdefs */ 114 115 /* fallback def */ 116 #ifndef OSVR_UTIL_EXPORT 117 # define OSVR_UTIL_EXPORT 118 #endif 119 120 /* fallback def */ 121 #ifndef OSVR_UTIL_NO_EXPORT 122 # define OSVR_UTIL_NO_EXPORT 123 #endif 124 125 /* fallback def */ 126 #ifndef OSVR_UTIL_DEPRECATED_EXPORT 127 # define OSVR_UTIL_DEPRECATED_EXPORT OSVR_UTIL_EXPORT OSVR_UTIL_DEPRECATED 128 #endif 129 130 /* fallback def */ 131 #ifndef OSVR_UTIL_DEPRECATED_NO_EXPORT 132 # define OSVR_UTIL_DEPRECATED_NO_EXPORT \ 133 OSVR_UTIL_NO_EXPORT OSVR_UTIL_DEPRECATED 134 #endif 135 136 /* Clean up after ourselves */ 137 #undef OSVR_UTIL_EXPORT_HEADER_SUPPORTS_ATTRIBUTES 138 139 #endif