libupnpp  0.16.0
A C++ wrapper for the Portable UPnP reference library
upnppexports.hxx
1 #ifndef _UPNPPEXPORTS_HXX_INCLUDED_
2 #define _UPNPPEXPORTS_HXX_INCLUDED_
3 
4 
5 #if defined _WIN32 || defined __CYGWIN__
6  #define UPNPP_HELPER_DLL_IMPORT __declspec(dllimport)
7  #define UPNPP_HELPER_DLL_EXPORT __declspec(dllexport)
8  #define UPNPP_HELPER_DLL_LOCAL
9 #else
10  #if __GNUC__ >= 4
11  #define UPNPP_HELPER_DLL_IMPORT __attribute__ ((visibility ("default")))
12  #define UPNPP_HELPER_DLL_EXPORT __attribute__ ((visibility ("default")))
13  #define UPNPP_HELPER_DLL_LOCAL __attribute__ ((visibility ("hidden")))
14  #else
15  #define UPNPP_HELPER_DLL_IMPORT
16  #define UPNPP_HELPER_DLL_EXPORT
17  #define UPNPP_HELPER_DLL_LOCAL
18  #endif
19 #endif
20 
21 #ifdef UPNPP_DLL // defined if UPNPP is compiled as a DLL
22  #ifdef UPNPP_DLL_EXPORTS // defined if we are building the UPNPP DLL
23  #define UPNPP_API UPNPP_HELPER_DLL_EXPORT
24  #else
25  #define UPNPP_API UPNPP_HELPER_DLL_IMPORT
26  #endif // UPNPP_DLL_EXPORTS
27  #define UPNPP_LOCAL UPNPP_HELPER_DLL_LOCAL
28 #else // UPNPP_DLL is not defined: this means UPNPP is a static lib.
29  #define UPNPP_API
30  #define UPNPP_LOCAL
31 #endif // UPNPP_DLL
32 
33 #endif /* _UPNPPEXPORTS_HXX_INCLUDED_ */