File Scanner 1.0.0
A high-performance C++ malicious file scanner.
Loading...
Searching...
No Matches
visibility.h
Go to the documentation of this file.
1#ifndef SCANNER_VISIBILITY_H_
2#define SCANNER_VISIBILITY_H_
3
4// Generic helper definitions for shared library support
5#if defined _WIN32 || defined __CYGWIN__
6#define SCANNER_HELPER_DLL_IMPORT __declspec(dllimport)
7#define SCANNER_HELPER_DLL_EXPORT __declspec(dllexport)
8#define SCANNER_HELPER_DLL_LOCAL
9#else
10#if __GNUC__ >= 4
11#define SCANNER_HELPER_DLL_IMPORT __attribute__((visibility("default")))
12#define SCANNER_HELPER_DLL_EXPORT __attribute__((visibility("default")))
13#define SCANNER_HELPER_DLL_LOCAL __attribute__((visibility("hidden")))
14#else
15#define SCANNER_HELPER_DLL_IMPORT
16#define SCANNER_HELPER_DLL_EXPORT
17#define SCANNER_HELPER_DLL_LOCAL
18#endif
19#endif
20
21// Now we use the generic helper definitions above to define SCANNER_API
22// SCANNER_LIB_EXPORT is defined by CMake when we are building the shared
23// library
24#ifdef SCANNER_LIB_EXPORT
25#define SCANNER_API SCANNER_HELPER_DLL_EXPORT
26#else
27#define SCANNER_API SCANNER_HELPER_DLL_IMPORT
28#endif // SCANNER_LIB_EXPORT
29
30#define SCANNER_LOCAL SCANNER_HELPER_DLL_LOCAL
31
32#endif // SCANNER_VISIBILITY_H_