1*da0073e9SAndroid Build Coastguard Worker #pragma once 2*da0073e9SAndroid Build Coastguard Worker 3*da0073e9SAndroid Build Coastguard Worker #ifndef C10_USING_CUSTOM_GENERATED_MACROS 4*da0073e9SAndroid Build Coastguard Worker #include <c10/xpu/impl/xpu_cmake_macros.h> 5*da0073e9SAndroid Build Coastguard Worker #endif 6*da0073e9SAndroid Build Coastguard Worker 7*da0073e9SAndroid Build Coastguard Worker // See c10/macros/Export.h for a detailed explanation of what the function 8*da0073e9SAndroid Build Coastguard Worker // of these macros are. We need one set of macros for every separate library 9*da0073e9SAndroid Build Coastguard Worker // we build. 10*da0073e9SAndroid Build Coastguard Worker 11*da0073e9SAndroid Build Coastguard Worker #ifdef _WIN32 12*da0073e9SAndroid Build Coastguard Worker #if defined(C10_XPU_BUILD_SHARED_LIBS) 13*da0073e9SAndroid Build Coastguard Worker #define C10_XPU_EXPORT __declspec(dllexport) 14*da0073e9SAndroid Build Coastguard Worker #define C10_XPU_IMPORT __declspec(dllimport) 15*da0073e9SAndroid Build Coastguard Worker #else 16*da0073e9SAndroid Build Coastguard Worker #define C10_XPU_EXPORT 17*da0073e9SAndroid Build Coastguard Worker #define C10_XPU_IMPORT 18*da0073e9SAndroid Build Coastguard Worker #endif 19*da0073e9SAndroid Build Coastguard Worker #else // _WIN32 20*da0073e9SAndroid Build Coastguard Worker #if defined(__GNUC__) 21*da0073e9SAndroid Build Coastguard Worker #define C10_XPU_EXPORT __attribute__((__visibility__("default"))) 22*da0073e9SAndroid Build Coastguard Worker #else // defined(__GNUC__) 23*da0073e9SAndroid Build Coastguard Worker #define C10_XPU_EXPORT 24*da0073e9SAndroid Build Coastguard Worker #endif // defined(__GNUC__) 25*da0073e9SAndroid Build Coastguard Worker #define C10_XPU_IMPORT C10_XPU_EXPORT 26*da0073e9SAndroid Build Coastguard Worker #endif // _WIN32 27*da0073e9SAndroid Build Coastguard Worker 28*da0073e9SAndroid Build Coastguard Worker // This one is being used by libc10_xpu.so 29*da0073e9SAndroid Build Coastguard Worker #ifdef C10_XPU_BUILD_MAIN_LIB 30*da0073e9SAndroid Build Coastguard Worker #define C10_XPU_API C10_XPU_EXPORT 31*da0073e9SAndroid Build Coastguard Worker #else 32*da0073e9SAndroid Build Coastguard Worker #define C10_XPU_API C10_XPU_IMPORT 33*da0073e9SAndroid Build Coastguard Worker #endif 34