macros.hpp
Go to the documentation of this file.
00001 
00008 /*****************************************************************************
00009 ** Ifdefs
00010 *****************************************************************************/
00011 
00012 #ifndef ECL_CONFIG_UTILITY_MACROS_HPP_
00013 #define ECL_CONFIG_UTILITY_MACROS_HPP_
00014 
00015 /*****************************************************************************
00016 ** Include
00017 *****************************************************************************/
00018 
00019 #include <ecl/config/ecl.hpp>
00020 
00021 /*****************************************************************************
00022 ** Macros
00023 *****************************************************************************/
00039 #if (defined __GNUC__)
00040   #define ECL_DONT_INLINE __attribute__((noinline))
00041 #elif (defined _MSC_VER)
00042   #define ECL_DONT_INLINE __declspec(noinline)
00043 #else
00044   #define ECL_DONT_INLINE
00045 #endif
00046 
00047 /*****************************************************************************
00048 ** Depracated
00049 *****************************************************************************/
00050 
00061 #if (defined __GNUC__)
00062   #define ECL_DEPRECATED __attribute__((deprecated))
00063 #elif (defined _MSC_VER)
00064   #define ECL_DEPRECATED __declspec(deprecated)
00065 #else
00066   #define ECL_DEPRECATED
00067 #endif
00068 
00133 #if defined(ECL_IS_WIN32) || defined(ECL_IS_CYGWIN)
00134   #define ECL_HELPER_IMPORT __declspec(dllimport)
00135   #define ECL_HELPER_EXPORT __declspec(dllexport)
00136   #define ECL_HELPER_LOCAL
00137 #else
00138   #if defined(ECL_IS_POSIX) && __GNUC__ >= 4
00139     #define ECL_HELPER_IMPORT __attribute__ ((visibility("default")))
00140     #define ECL_HELPER_EXPORT __attribute__ ((visibility("default")))
00141     #define ECL_HELPER_LOCAL  __attribute__ ((visibility("hidden")))
00142   #else
00143     #define ECL_HELPER_IMPORT
00144     #define ECL_HELPER_EXPORT
00145     #define ECL_HELPER_LOCAL
00146   #endif
00147 #endif
00148 
00149 // Until we depracate this entirely, need this to avoid being interpreted as a variable
00150 #define ECL_PUBLIC
00151 #define ECL_LOCAL
00152 
00153 
00154 #endif /* ECL_UTILITY_CONFIG_MACROS_HPP_ */


ecl_config
Author(s): Daniel Stonier
autogenerated on Sun Oct 5 2014 23:35:24