summaryrefslogtreecommitdiffstats
path: root/src/H5api_adpt.h
diff options
context:
space:
mode:
authorAllen Byrne <byrn@hdfgroup.org>2010-05-11 21:00:21 (GMT)
committerAllen Byrne <byrn@hdfgroup.org>2010-05-11 21:00:21 (GMT)
commite6364578ed58fa718492cecfda49d9ac97dba590 (patch)
treeb604ae3c1b78a2b0045dbf484dff2f3fcff2d878 /src/H5api_adpt.h
parenta46dea601714983815b1c9923b7ce75483f2415f (diff)
downloadhdf5-e6364578ed58fa718492cecfda49d9ac97dba590.zip
hdf5-e6364578ed58fa718492cecfda49d9ac97dba590.tar.gz
hdf5-e6364578ed58fa718492cecfda49d9ac97dba590.tar.bz2
[svn-r18762] File needed to correctly set new H5TOOLS_* export/import attribute
Diffstat (limited to 'src/H5api_adpt.h')
-rw-r--r--src/H5api_adpt.h281
1 files changed, 281 insertions, 0 deletions
diff --git a/src/H5api_adpt.h b/src/H5api_adpt.h
index 740eab5..182ae25 100644
--- a/src/H5api_adpt.h
+++ b/src/H5api_adpt.h
@@ -21,6 +21,272 @@
#ifndef H5API_ADPT_H
#define H5API_ADPT_H
+/* This will only be defined if HDF5 was built with CMake */
+#ifdef H5_BUILT_AS_DYNAMIC_LIB
+
+#if defined (hdf5_EXPORTS)
+ #define _HDF5DLL_
+#else
+ #define _HDF5USEDLL_
+#endif
+
+#if defined (hdf5_test_EXPORTS)
+ #define _HDF5TESTDLL_
+#else
+ #define _HDF5TESTUSEDLL_
+#endif
+
+#if defined (hdf5_tools_EXPORTS)
+ #define _HDF5TOOLSDLL_
+#else
+ #define _HDF5TOOLSUSEDLL_
+#endif
+
+#if defined (hdf5_cpp_EXPORTS)
+ #define HDF5_CPPDLL_EXPORTS
+#else
+ #define HDF5CPP_USEDLL
+#endif
+
+#if defined (hdf5_hl_EXPORTS)
+ #define _HDF5_HLDLL_EXPORTS_
+#else
+ #define _HDF5USEHLDLL_
+#endif
+
+#if defined (hdf5_hl_cpp_EXPORTS)
+ #define HDF5_HL_CPPDLL_EXPORTS
+#else
+ #define HDF5USE_HLCPPDLL
+#endif
+
+#if defined (hdf5_f90CStub_EXPORTS)
+ #define HDF5FORT_CSTUB_DLL_EXPORTS
+#else
+ #define HDF5FORT_CSTUB_USELL
+#endif
+
+#if defined (hdf5_test_f90CStub_EXPORTS)
+ #define HDF5FORTTEST_CSTUB_DLL_EXPORTS
+#endif
+
+#if defined (hdf5_hl_f90CStub_EXPORTS)
+ #define HDF5_HL_F90CSTUBDLL_EXPORTS
+#endif
+
+#if defined(hdf5_EXPORTS)
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_DLL __declspec(dllexport)
+ #define H5_DLLVAR extern __declspec(dllexport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_DLL __attribute__ ((visibility("default")))
+ #define H5_DLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#else
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_DLL __declspec(dllimport)
+ #define H5_DLLVAR __declspec(dllimport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_DLL __attribute__ ((visibility("default")))
+ #define H5_DLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#endif
+
+#ifndef H5_DLL
+ #define H5_DLL
+ #define H5_DLLVAR extern
+#endif /* _HDF5DLL_ */
+
+#if defined(hdf5_test_EXPORTS)
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5TEST_DLL __declspec(dllexport)
+ #define H5TEST_DLLVAR extern __declspec(dllexport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5TEST_DLL __attribute__ ((visibility("default")))
+ #define H5TEST_DLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#else
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5TEST_DLL __declspec(dllimport)
+ #define H5TEST_DLLVAR __declspec(dllimport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5TEST_DLL __attribute__ ((visibility("default")))
+ #define H5TEST_DLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#endif
+
+#ifndef H5TEST_DLL
+ #define H5TEST_DLL
+ #define H5TEST_DLLVAR extern
+#endif /* H5TEST_DLL */
+
+#if defined(hdf5_tools_EXPORTS)
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5TOOLS_DLL __declspec(dllexport)
+ #define H5TOOLS_DLLVAR extern __declspec(dllexport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5TOOLS_DLL __attribute__ ((visibility("default")))
+ #define H5TOOLS_DLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#else
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5TOOLS_DLL __declspec(dllimport)
+ #define H5TOOLS_DLLVAR __declspec(dllimport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5TOOLS_DLL __attribute__ ((visibility("default")))
+ #define H5TOOLS_DLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#endif
+
+#ifndef H5TOOLS_DLL
+ #define H5TOOLS_DLL
+ #define H5TOOLS_DLLVAR extern
+#endif /* H5TOOLS_DLL */
+
+#if defined(hdf5_cpp_EXPORTS)
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_DLLCPP __declspec(dllexport)
+ #define H5_DLLCPPVAR extern __declspec(dllexport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_DLLCPP __attribute__ ((visibility("default")))
+ #define H5_DLLCPPVAR extern __attribute__ ((visibility("default")))
+ #endif
+#else
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_DLLCPP __declspec(dllimport)
+ #define H5_DLLCPPVAR __declspec(dllimport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_DLLCPP __attribute__ ((visibility("default")))
+ #define H5_DLLCPPVAR extern __attribute__ ((visibility("default")))
+ #endif
+#endif
+
+#ifndef H5_DLLCPP
+ #define H5_DLLCPP
+ #define H5_DLLCPPVAR extern
+#endif /* H5_DLLCPP */
+
+#if defined(hdf5_hl_EXPORTS)
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_HLDLL __declspec(dllexport)
+ #define H5_HLDLLVAR extern __declspec(dllexport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_HLDLL __attribute__ ((visibility("default")))
+ #define H5_HLDLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#else
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_HLDLL __declspec(dllimport)
+ #define H5_HLDLLVAR __declspec(dllimport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_HLDLL __attribute__ ((visibility("default")))
+ #define H5_HLDLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#endif
+
+#ifndef H5_HLDLL
+ #define H5_HLDLL
+ #define H5_HLDLLVAR extern
+#endif /* H5_HLDLL */
+
+#if defined(hdf5_hl_cpp_EXPORTS)
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_HLCPPDLL __declspec(dllexport)
+ #define H5_HLCPPDLLVAR extern __declspec(dllexport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_HLCPPDLL __attribute__ ((visibility("default")))
+ #define H5_HLCPPDLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#else
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_HLCPPDLL __declspec(dllimport)
+ #define H5_HLCPPDLLVAR __declspec(dllimport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_HLCPPDLL __attribute__ ((visibility("default")))
+ #define H5_HLCPPDLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#endif
+
+#ifndef H5_HLCPPDLL
+ #define H5_HLCPPDLL
+ #define H5_HLCPPDLLVAR extern
+#endif /* H5_HLCPPDLL */
+
+#if defined(hdf5_f90CStub_EXPORTS)
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_FCDLL __declspec(dllexport)
+ #define H5_FCDLLVAR extern __declspec(dllexport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_FCDLL __attribute__ ((visibility("default")))
+ #define H5_FCDLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#else
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_FCDLL __declspec(dllimport)
+ #define H5_FCDLLVAR __declspec(dllimport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_FCDLL __attribute__ ((visibility("default")))
+ #define H5_FCDLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#endif
+
+#ifndef H5_FCDLL
+ #define H5_FCDLL
+ #define H5_FCDLLVAR extern
+#endif /* H5_FCDLL */
+
+#if defined(hdf5_f90Ctest_EXPORTS)
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_FCTESTDLL __declspec(dllexport)
+ #define H5_FCTESTDLLVAR extern __declspec(dllexport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_FCTESTDLL __attribute__ ((visibility("default")))
+ #define H5_FCTESTDLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#else
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define H5_FCTESTDLL __declspec(dllimport)
+ #define H5_FCTESTDLLVAR __declspec(dllimport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define H5_FCTESTDLL __attribute__ ((visibility("default")))
+ #define H5_FCTESTDLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#endif
+
+#ifndef H5_FCTESTDLL
+ #define H5_FCTESTDLL
+ #define H5_FCTESTDLLVAR extern
+#endif /* H5_FCTESTDLL */
+
+#if defined(hdf5_hl_f90CStub_EXPORTS)
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define HDF5_HL_F90CSTUBDLL __declspec(dllexport)
+ #define HDF5_HL_F90CSTUBDLLVAR extern __declspec(dllexport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define HDF5_HL_F90CSTUBDLL __attribute__ ((visibility("default")))
+ #define HDF5_HL_F90CSTUBDLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#else
+ #if defined (_MSC_VER) /* MSVC Compiler Case */
+ #define HDF5_HL_F90CSTUBDLL __declspec(dllimport)
+ #define HDF5_HL_F90CSTUBDLLVAR __declspec(dllimport)
+ #elif (__GNUC__ >= 4) /* GCC 4.x has support for visibility options */
+ #define HDF5_HL_F90CSTUBDLL __attribute__ ((visibility("default")))
+ #define HDF5_HL_F90CSTUBDLLVAR extern __attribute__ ((visibility("default")))
+ #endif
+#endif
+
+#ifndef HDF5_HL_F90CSTUBDLL
+ #define HDF5_HL_F90CSTUBDLL
+ #define HDF5_HL_F90CSTUBDLLVAR extern
+#endif /* HDF5_HL_F90CSTUBDLL */
+
+#else
+/* This is the original HDFGroup defined preprocessor code which should still work
+ * with the VS projects that are maintained by "The HDF Group"
+ * This will be removed after the next release.
+ */
+
#if defined(_WIN32)
#if defined(_HDF5DLL_)
@@ -47,6 +313,18 @@
#define H5TEST_DLLVAR extern
#endif /* _HDF5TESTDLL_ */
+#if defined(_HDF5TOOLSDLL_)
+#pragma warning(disable: 4273) /* Disable the dll linkage warnings */
+#define H5TOOLS_DLL __declspec(dllexport)
+#define H5TOOLS_DLLVAR extern __declspec(dllexport)
+#elif defined(_HDF5TOOLSUSEDLL_)
+#define H5TOOLS_DLL __declspec(dllimport)
+#define H5TOOLS_DLLVAR __declspec(dllimport)
+#else
+#define H5TOOLS_DLL
+#define H5TOOLS_DLLVAR extern
+#endif /* _HDF5TOOLSDLL_ */
+
#if defined(_HDF5_HLDLL_EXPORTS_)
#pragma warning(disable: 4273) /* Disable the dll linkage warnings */
#define H5_HLDLL __declspec(dllexport)
@@ -117,6 +395,8 @@
#define H5_DLLCPP
#define H5TEST_DLL
#define H5TEST_DLLVAR extern
+#define H5TOOLS_DLL
+#define H5TOOLS_DLLVAR extern
#define H5_FCDLL
#define H5_FCDLLVAR extern
#define H5_FCTESTDLL
@@ -125,3 +405,4 @@
#endif /* H5API_ADPT_H */
+#endif /* */