PLplot  5.10.0
csadll.h
Go to the documentation of this file.
00001 #ifndef __CSA_DLL_H
00002 #define __CSA_DLL_H
00003 
00004 #ifdef USINGDLL
00005   #if defined ( WIN32 )
00006 // Visual C/C++, Borland, MinGW and Watcom
00007     #if defined ( __VISUALC__ ) || defined ( _MSC_VER ) || defined ( __BORLANDC__ ) || defined ( __GNUC__ ) || defined ( __WATCOMC__ )
00008       #define CSADLLEXPORT    __declspec( dllexport )
00009       #define CSADLLIMPORT    __declspec( dllimport )
00010     #else
00011       #define CSADLLEXPORT
00012       #define CSADLLIMPORT
00013     #endif
00014   #elif defined ( __CYGWIN__ )
00015     #define CSADLLEXPORT    __declspec( dllexport )
00016     #define CSADLLIMPORT    __declspec( dllimport )
00017   #elif defined ( __GNUC__ ) && __GNUC__ > 3
00018 // Follow ideas in http://gcc.gnu.org/wiki/Visibility for GCC version 4.x
00019 // The following forces exported symbols specifically designated with
00020 // CSADLLEXPORT to be visible.
00021     #define CSADLLEXPORT    __attribute__ ( ( visibility( "default" ) ) )
00022     #define CSADLLIMPORT
00023   #endif
00024 #endif
00025 
00026 // For an unknown compiler or static built we clear the macros
00027 #ifndef CSADLLEXPORT
00028 #    define CSADLLEXPORT
00029 #    define CSADLLIMPORT
00030 #endif
00031 
00032 // The IMPEXP macros will always be set to DLLIMPORT (even for
00033 // the static library, but DLLIMPORT is empty in this case). If
00034 // cmake sets the corresponding macro xxxx_EXPORTS if the
00035 // corresponding library is built DLLIMPEXP is set to DLLEXPORT
00036 #if defined ( csirocsa_EXPORTS )
00037   #define CSADLLIMPEXP    CSADLLEXPORT
00038   #define CSADLLIMPEXP_DATA( type )    CSADLLEXPORT type
00039 #else
00040   #define CSADLLIMPEXP    CSADLLIMPORT
00041   #define CSADLLIMPEXP_DATA( type )    CSADLLIMPORT type
00042 #endif
00043 
00044 #endif // __CSA_DLL_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines