Gamedev Framework (gf)
0.16.0
A C++14 framework for 2D games
include
gf
Portability.h
1
/*
2
* Gamedev Framework (gf)
3
* Copyright (C) 2016-2019 Julien Bernard
4
*
5
* This software is provided 'as-is', without any express or implied
6
* warranty. In no event will the authors be held liable for any damages
7
* arising from the use of this software.
8
*
9
* Permission is granted to anyone to use this software for any purpose,
10
* including commercial applications, and to alter it and redistribute it
11
* freely, subject to the following restrictions:
12
*
13
* 1. The origin of this software must not be misrepresented; you must not
14
* claim that you wrote the original software. If you use this software
15
* in a product, an acknowledgment in the product documentation would be
16
* appreciated but is not required.
17
* 2. Altered source versions must be plainly marked as such, and must not be
18
* misrepresented as being the original software.
19
* 3. This notice may not be removed or altered from any source distribution.
20
*/
21
#ifndef GF_PORTABILITY_H
22
#define GF_PORTABILITY_H
23
24
25
26
#if defined(_WIN32) || defined(__CYGWIN__)
27
#ifdef GF_SHARED
28
#ifdef __GNUC__
29
#define GF_API_EXPORT __attribute__ ((dllexport))
30
#define GF_API_IMPORT __attribute__ ((dllimport))
31
#else
32
#define GF_API_EXPORT __declspec(dllexport)
33
#define GF_API_IMPORT __declspec(dllimport)
34
#endif
35
#else
36
#define GF_API_EXPORT
37
#define GF_API_IMPORT
38
#endif
39
#else
40
#if __GNUC__ >= 4
41
#define GF_API_EXPORT __attribute__ ((visibility("default")))
42
#define GF_API_IMPORT __attribute__ ((visibility("default")))
43
#else
44
#define GF_API_EXPORT
45
#define GF_API_IMPORT
46
#endif
47
#endif
48
49
#ifdef GF_EXPORT_SYMBOLS
50
#define GF_API GF_API_EXPORT
51
#else
52
#define GF_API GF_API_IMPORT
53
#endif
54
55
56
#ifdef __GNUC__
57
#define GF_FORMAT(X, Y) __attribute__ ((format (printf, X, Y)))
58
#else
59
#define GF_FORMAT(X, Y)
60
#endif
61
62
#endif // GF_PORTABILITY_H
Generated by
1.8.13