00001
00002
00003
00004
00005
00006 #ifndef SAGA_EXPORT_DEFINITIONS_HPP
00007 #define SAGA_EXPORT_DEFINITIONS_HPP
00008
00009
00010 #include <saga/saga-defs.hpp>
00011
00012 #if !defined (SAGA_CREATE_PREPROCESSED_FILES)
00013
00014 # if defined(SAGA_WINDOWS)
00015 # define SAGA_SYMBOL_EXPORT __declspec (dllexport)
00016 # define SAGA_SYMBOL_EXPORT_REPEAT SAGA_SYMBOL_EXPORT
00017 # define SAGA_SYMBOL_IMPORT __declspec (dllimport)
00018 # define SAGA_SYMBOL_INTERNAL
00019 # elif defined(SAGA_GCC_HAVE_VISIBILITY)
00020 # define SAGA_SYMBOL_EXPORT __attribute__((visibility("default")))
00021 # define SAGA_SYMBOL_EXPORT_REPEAT
00022 # define SAGA_SYMBOL_IMPORT __attribute__((visibility("default")))
00023 # ifdef __sparc__
00024 # define SAGA_SYMBOL_INTERNAL
00025 # else
00026 # define SAGA_SYMBOL_INTERNAL __attribute__((visibility("hidden")))
00027 # endif
00028 # else
00029 # define SAGA_SYMBOL_EXPORT
00030 # define SAGA_SYMBOL_EXPORT_REPEAT
00031 # define SAGA_SYMBOL_IMPORT
00032 # define SAGA_SYMBOL_INTERNAL
00033 # endif
00034
00036
00037
00038 # ifdef SAGA_ENGINE_EXPORTS
00039 # define SAGA_EXPORT SAGA_SYMBOL_EXPORT
00040 # define SAGA_EXPORT_REPEAT SAGA_SYMBOL_EXPORT_REPEAT
00041 # define SAGA_EXCEPTION_EXPORT SAGA_SYMBOL_EXPORT
00042 # elif !defined(BUILD_SAGA_LITE)
00043 # define SAGA_EXPORT SAGA_SYMBOL_IMPORT
00044 # define SAGA_EXPORT_REPEAT
00045 # define SAGA_EXCEPTION_EXPORT SAGA_SYMBOL_IMPORT
00046 # else
00047 # define SAGA_EXPORT
00048 # define SAGA_EXPORT_REPEAT
00049 # define SAGA_EXCEPTION_EXPORT
00050 # endif
00051
00052 # ifdef SAGA_PACKAGE_EXPORTS
00053 # define SAGA_PACKAGE_EXPORT SAGA_SYMBOL_EXPORT
00054 # define SAGA_PACKAGE_LOCAL SAGA_SYMBOL_INTERNAL
00055 # elif !defined(BUILD_SAGA_LITE)
00056 # define SAGA_PACKAGE_EXPORT SAGA_SYMBOL_IMPORT
00057 # define SAGA_PACKAGE_LOCAL SAGA_SYMBOL_INTERNAL
00058 # else
00059 # define SAGA_PACKAGE_EXPORT
00060 # define SAGA_PACKAGE_LOCAL
00061 # endif
00062
00063 # ifdef SAGA_ADAPTOR_EXPORTS
00064 # define SAGA_ADAPTOR_EXPORT SAGA_SYMBOL_EXPORT
00065 # define SAGA_ADAPTOR_LOCAL SAGA_SYMBOL_INTERNAL
00066 # elif !defined(BUILD_SAGA_LITE)
00067 # define SAGA_ADAPTOR_EXPORT SAGA_SYMBOL_IMPORT
00068 # define SAGA_ADAPTOR_LOCAL SAGA_SYMBOL_INTERNAL
00069 # else
00070 # define SAGA_ADAPTOR_EXPORT
00071 # define SAGA_ADAPTOR_LOCAL
00072 # endif
00073
00074 # define SAGA_LOCAL
00075
00076 #endif // !SAGA_CREATE_PREPROCESSED_FILES
00077
00078 #endif
00079
00080