platform.h
Go to the documentation of this file.
1/*
2 * $COPYRIGHT-BEGIN$
3 * libasterix
4 * Copyright [2013-2026] SinoATC <http://www.sinoatc.com>.
5 * All Rights Reserved.
6 *
7 * NOTICE: All information contained herein is, and remains
8 * the property of SinoATC and its suppliers, if any.
9 * The intellectual and technical concepts contained herein
10 * are proprietary to SinoATC and its suppliers and may be
11 * covered by U.S. and Foreign Patents, patents in process,
12 * and are protected by trade secret or copyright law.
13 * Dissemination of this information or reproduction of this material
14 * is strictly forbidden unless prior written permission is obtained
15 * from SinoATC.
16 * $COPYRIGHT-END$
17 */
18
24
25#ifndef LIBASTERIX_PLATFORM_H
26#define LIBASTERIX_PLATFORM_H
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32//Microsoft Visual C++
33#if defined(_MSC_VER)
34 #define AST_CC_MSVC _MSC_VER
35
36 #define AST_DECL_EXPORT __declspec(dllexport)
37 #define AST_DECL_IMPORT __declspec(dllimport)
38
39//GCC
40#elif defined(__GNUC__)
41 #define AST_CC_GCC __GNUC__
42
43 #define AST_DECL_EXPORT
44 #define AST_DECL_IMPORT
45
46//C++ Builder
47#elif defined(__BORLANDC__)
48 #define AST_CC_BCC __BORLANDC__
49
50 #define AST_DECL_EXPORT __declspec(dllexport)
51 #define AST_DECL_IMPORT __declspec(dllimport)
52
53//Other compiler
54#else
55 #define AST_DECL_EXPORT
56 #define AST_DECL_IMPORT
57#endif
58
59
60#ifdef AST_LIBRARY
61 #define AST_API AST_DECL_EXPORT
62#else
63 #define AST_API AST_DECL_IMPORT
64#endif
65
66#ifdef __cplusplus
67 }
68#endif // extern "C"
69
70#endif //LIBASTERIX_PLATFORM_H
71
72// vim:set ft=c.doxygen sw=2 sts=2 fenc=utf8: