Go to the documentation of this file. 17 #ifndef OPTIMIZATION__VISIBILITY_CONTROL_HPP_ 18 #define OPTIMIZATION__VISIBILITY_CONTROL_HPP_ 23 #if defined(OPTIMIZATION_BUILDING_DLL) || defined(OPTIMIZATION_EXPORTS) 24 #define OPTIMIZATION_PUBLIC __declspec(dllexport) 25 #define OPTIMIZATION_LOCAL 26 #else // defined(OPTIMIZATION_BUILDING_DLL) || defined(OPTIMIZATION_EXPORTS) 27 #define OPTIMIZATION_PUBLIC __declspec(dllimport) 28 #define OPTIMIZATION_LOCAL 29 #endif // defined(OPTIMIZATION_BUILDING_DLL) || defined(OPTIMIZATION_EXPORTS) 30 #elif defined(__linux__) 31 #define OPTIMIZATION_PUBLIC __attribute__((visibility("default"))) 32 #define OPTIMIZATION_LOCAL __attribute__((visibility("hidden"))) 33 #elif defined(__APPLE__) 34 #define OPTIMIZATION_PUBLIC __attribute__((visibility("default"))) 35 #define OPTIMIZATION_LOCAL __attribute__((visibility("hidden"))) 36 #else // defined(_LINUX) 37 #error "Unsupported Build Configuration" 38 #endif // defined(_WINDOWS) 40 #endif // OPTIMIZATION__VISIBILITY_CONTROL_HPP_