Go to the
documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00034 #ifndef _FBXSDK_CORE_ARCH_ARCH_H_
00035 #define _FBXSDK_CORE_ARCH_ARCH_H_
00036
00037
00038
00039 #if defined(_WIN32) || defined(_WIN64) //Windows
00040
00041 #define FBXSDK_ENV_WIN 1
00042
00043 #if defined(_M_X64)
00044 #define FBXSDK_ARCH_64 1
00045 #elif defined(_M_IX86)
00046 #define FBXSDK_ARCH_32 1
00047 #else
00048 #error Unsupported architecture!
00049 #endif
00050
00051 #if defined(_MSC_VER)
00052 #define FBXSDK_COMPILER_MSC 1
00053 #elif defined(__GNUC__)
00054 #define FBXSDK_COMPILER_GNU 1
00055 #elif defined(__ICL)
00056 #define FBXSDK_COMPILER_INTEL 1
00057 #else
00058 #error Unsupported compiler!
00059 #endif
00060
00061 #elif defined(__APPLE__) || defined(__MACH__) //MacOS/X
00062
00063 #define FBXSDK_ENV_MAC 1
00064
00065 #if defined(__i386__)
00066 #define FBXSDK_ARCH_32 1
00067 #elif defined(__x86_64__) || defined(__x86_64)
00068 #define FBXSDK_ARCH_64 1
00069 #else
00070 #error Unsupported architecture!
00071 #endif
00072
00073 #define FBXSDK_COMPILER_GNU 1
00074
00075 #elif defined(__linux__) || defined(__CYGWIN__) //Linux
00076
00077 #define FBXSDK_ENV_LINUX 1
00078
00079 #if defined(__i386__)
00080 #define FBXSDK_ARCH_32 1
00081 #elif defined(__x86_64__) || defined(__x86_64)
00082 #define FBXSDK_ARCH_64 1
00083 #else
00084 #error Unsupported architecture!
00085 #endif
00086
00087 #define FBXSDK_COMPILER_GNU 1
00088
00089 #else
00090 #error Unsupported platform!
00091 #endif
00092
00093 #if defined(FBXSDK_SHARED) && defined(FBXSDK_ENV_WIN)
00094 #define FBXSDK_DLLIMPORT __declspec(dllimport)
00095 #define FBXSDK_DLLEXPORT __declspec(dllexport)
00096 #else
00097 #define FBXSDK_DLLIMPORT
00098 #define FBXSDK_DLLEXPORT
00099 #endif
00100
00101 #ifndef FBXSDK_DLL
00102 #define FBXSDK_DLL FBXSDK_DLLIMPORT
00103 #endif
00104
00105 #endif