Add the GenerateExportMacro with unit tests.

Reviewed-by: Marcus D. Hanwell <marcus.hanwell@kitware.com>
This commit is contained in:
Stephen Kelly
2011-07-13 02:13:33 +02:00
parent 955d5133ab
commit 30880707c0
17 changed files with 1016 additions and 0 deletions

View File

@@ -0,0 +1,59 @@
#ifndef LIBSHARED_H
#define LIBSHARED_H
#include "libshared_export.h"
class LIBSHARED_EXPORT Libshared {
public:
int libshared() const;
#ifdef COMPILER_IS_MSVC
// Double exporting not possible with MSVC
int libshared_exported() const;
#else
int LIBSHARED_EXPORT libshared_exported() const;
#endif
int LIBSHARED_DEPRECATED libshared_deprecated() const;
int libshared_not_exported() const;
int LIBSHARED_NO_EXPORT libshared_excluded() const;
};
class LibsharedNotExported {
public:
int libshared() const;
int LIBSHARED_EXPORT libshared_exported() const;
int LIBSHARED_DEPRECATED_EXPORT libshared_deprecated() const;
int libshared_not_exported() const;
int LIBSHARED_NO_EXPORT libshared_excluded() const;
};
class LIBSHARED_NO_EXPORT LibsharedExcluded {
public:
int libshared() const;
int LIBSHARED_EXPORT libshared_exported() const;
int LIBSHARED_DEPRECATED_EXPORT libshared_deprecated() const;
int libshared_not_exported() const;
int LIBSHARED_NO_EXPORT libshared_excluded() const;
};
LIBSHARED_EXPORT int libshared_exported();
LIBSHARED_DEPRECATED_EXPORT int libshared_deprecated();
int libshared_not_exported();
int LIBSHARED_NO_EXPORT libshared_excluded();
#endif