TGUI  0.8-dev
Config.hpp
1 //
3 // TGUI - Texus' Graphical User Interface
4 // Copyright (C) 2012-2017 Bruno Van de Velde (vdv_b@tgui.eu)
5 //
6 // This software is provided 'as-is', without any express or implied warranty.
7 // In no event will the authors be held liable for any damages 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 freely,
11 // subject to the following restrictions:
12 //
13 // 1. The origin of this software must not be misrepresented;
14 // you must not claim that you wrote the original software.
15 // If you use this software in a product, an acknowledgment
16 // in the product documentation would be appreciated but is not required.
17 //
18 // 2. Altered source versions must be plainly marked as such,
19 // and must not be misrepresented as being the original software.
20 //
21 // 3. This notice may not be removed or altered from any source distribution.
22 //
24 
25 #ifndef TGUI_CONFIG_HPP
26 #define TGUI_CONFIG_HPP
27 
28 #include <SFML/Config.hpp>
29 
30 #ifndef SFML_STATIC
31 
32  #ifdef SFML_SYSTEM_WINDOWS
33 
34  // Windows compilers need specific (and different) keywords for export and import
35  #ifdef tgui_EXPORTS
36  #define TGUI_API __declspec(dllexport)
37  #else
38  #define TGUI_API __declspec(dllimport)
39  #endif
40 
41  #else // Linux, FreeBSD, Mac OS X
42 
43  // GCC 4 has special keywords for showing/hidding symbols
44  #if __GNUC__ >= 4
45  #define TGUI_API __attribute__ ((__visibility__ ("default")))
46  #else
47  #define TGUI_API
48  #endif
49 
50  #endif
51 
52 #else
53 
54  // Static build doesn't need import/export macros
55  #define TGUI_API
56  #define TGUI_API
57 
58 #endif
59 
60 
61 // Version of the library
62 #define TGUI_VERSION_MAJOR 0
63 #define TGUI_VERSION_MINOR 8
64 #define TGUI_VERSION_PATCH 0
65 
66 
67 #endif // TGUI_CONFIG_HPP