Remove old testsuite
[dyninst.git] / newtestsuite / src / test_lib_dll.h
1 #ifndef TEST_LIB_DLL_H
2 #define TEST_LIB_DLL_H
3
4 #if defined(_MSC_VER)
5
6 // we get numerous spurious warnings about having some template classes
7 // needing to have a dll-interface if instances of these classes are
8 // to be used by classes whose public interfaces are exported from a DLL.
9 // Specifing the template classes with a DLL export interface doesn't 
10 // satisfy the compiler.  Until the compiler handles instantiated
11 // templates exported from DLLs better, we disable the warning when building
12 // or using the dyninstAPI DLL.
13 #pragma warning(disable:4251)
14 #pragma warning(disable:4275)
15 #pragma warning(disable:4786)
16
17 #ifdef COMPLIB_DLL_BUILD
18 #define COMPLIB_DLL_EXPORT __declspec(dllexport)
19 #else
20 #define COMPLIB_DLL_EXPORT __declspec(dllimport)
21 #endif
22
23 #ifdef TESTLIB_DLL_BUILD
24 // we are building the Testsuite DLL
25 #define TESTLIB_DLL_EXPORT __declspec(dllexport)
26 #define TEST_DLL_EXPORT __declspec(dllexport)
27 #else
28 #define TESTLIB_DLL_EXPORT __declspec(dllimport)
29 #define TEST_DLL_EXPORT __declspec(dllimport)
30
31
32 #endif /* TESTLIB_DLL_BUILD */
33 // Individual mutators should never be importing/imported
34 #if !defined(DLLEXPORT)
35 #define DLLEXPORT __declspec(dllexport)
36 #endif
37
38 #else
39
40 // we are not building for a Windows target 
41 #define TESTLIB_DLL_EXPORT
42 #define TEST_DLL_EXPORT
43 #define COMPLIB_DLL_EXPORT
44 #define DLLEXPORT
45 #endif /* _MSC_VER */
46
47 #endif /* TEST_LIB_DLL_H */