coal  3.0.1
Coal, The Collision Detection Library. Previously known as HPP-FCL, fork of FCL -- The Flexible Collision Library
config.hh
Go to the documentation of this file.
1 /*
2  * This file has been automatically generated by the jrl-cmakemodules.
3  * Please see https://github.com/jrl-umi3218/jrl-cmakemodules/blob/master/config.hh.cmake for details.
4 */
5 
6 #ifndef COAL_CONFIG_HH
7 # define COAL_CONFIG_HH
8 
9 // Package version (header).
10 # define COAL_VERSION_UNKNOWN_TAG 0 // Used to mention that the current version is unknown.
11 # define COAL_VERSION "3.0.1"
12 # define COAL_MAJOR_VERSION 3
13 # define COAL_MINOR_VERSION 0
14 # define COAL_PATCH_VERSION 1
15 
16 #define COAL_VERSION_AT_LEAST(major, minor, patch) (COAL_MAJOR_VERSION>major || (COAL_MAJOR_VERSION>=major && \
17  (COAL_MINOR_VERSION>minor || (COAL_MINOR_VERSION>=minor && \
18  COAL_PATCH_VERSION>=patch))))
19 
20 #define COAL_VERSION_AT_MOST(major, minor, patch) (COAL_MAJOR_VERSION<major || (COAL_MAJOR_VERSION<=major && \
21  (COAL_MINOR_VERSION<minor || (COAL_MINOR_VERSION<=minor && \
22  COAL_PATCH_VERSION<=patch))))
23 
24 // Handle portable symbol export.
25 // Defining manually which symbol should be exported is required
26 // under Windows whether MinGW or MSVC is used.
27 //
28 // The headers then have to be able to work in two different modes:
29 // - dllexport when one is building the library,
30 // - dllimport for clients using the library.
31 //
32 // On Linux, set the visibility accordingly. If C++ symbol visibility
33 // is handled by the compiler, see: http://gcc.gnu.org/wiki/Visibility
34 //
35 // Explicit template instantiation on Windows need to add
36 // dllexport on the definition and dllimport on the declaration.
37 // The XXX_EXPLICIT_INSTANTIATION_DECLARATION_DLLAPI macro
38 // should be set on the declaration while
39 // the XXX_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI macro
40 // should be set on the definition.
41 # if defined _WIN32 || defined __CYGWIN__
42 // On Microsoft Windows, use dllimport and dllexport to tag symbols.
43 # define COAL_DLLIMPORT __declspec(dllimport)
44 # define COAL_DLLEXPORT __declspec(dllexport)
45 # define COAL_DLLLOCAL
46 # define COAL_EXPLICIT_INSTANTIATION_DECLARATION_DLLIMPORT __declspec(dllimport)
47 # define COAL_EXPLICIT_INSTANTIATION_DECLARATION_DLLEXPORT
48 # define COAL_EXPLICIT_INSTANTIATION_DEFINITION_DLLIMPORT __declspec(dllimport)
49 # define COAL_EXPLICIT_INSTANTIATION_DEFINITION_DLLEXPORT __declspec(dllexport)
50 # else
51 // On Linux, for GCC >= 4, tag symbols using GCC extension.
52 # if __GNUC__ >= 4
53 # define COAL_DLLIMPORT __attribute__ ((visibility("default")))
54 # define COAL_DLLEXPORT __attribute__ ((visibility("default")))
55 # define COAL_DLLLOCAL __attribute__ ((visibility("hidden")))
56 # define COAL_EXPLICIT_INSTANTIATION_DECLARATION_DLLIMPORT __attribute__ ((visibility("default")))
57 # define COAL_EXPLICIT_INSTANTIATION_DECLARATION_DLLEXPORT __attribute__ ((visibility("default")))
58 # define COAL_EXPLICIT_INSTANTIATION_DEFINITION_DLLIMPORT
59 # define COAL_EXPLICIT_INSTANTIATION_DEFINITION_DLLEXPORT
60 # else
61 // Otherwise (GCC < 4 or another compiler is used), export everything.
62 # define COAL_DLLIMPORT
63 # define COAL_DLLEXPORT
64 # define COAL_DLLLOCAL
65 # define COAL_EXPLICIT_INSTANTIATION_DECLARATION_DLLIMPORT
66 # define COAL_EXPLICIT_INSTANTIATION_DECLARATION_DLLEXPORT
67 # define COAL_EXPLICIT_INSTANTIATION_DEFINITION_DLLIMPORT
68 # define COAL_EXPLICIT_INSTANTIATION_DEFINITION_DLLEXPORT
69 # endif // __GNUC__ >= 4
70 # endif // defined _WIN32 || defined __CYGWIN__
71 
72 # ifdef COAL_STATIC
73 // If one is using the library statically, get rid of
74 // extra information and use standard explicit template
75 // instantiation keyword.
76 # define COAL_DLLAPI
77 # define COAL_LOCAL
78 # define COAL_EXPLICIT_INSTANTIATION_DECLARATION extern template
79 # else
80 // Depending on whether one is building or using the
81 // library define DLLAPI to import or export and
82 // define the right explicit template instantiation keyword.
83 # ifdef coal_EXPORTS
84 # define COAL_DLLAPI COAL_DLLEXPORT
85 # define COAL_EXPLICIT_INSTANTIATION_DECLARATION_DLLAPI COAL_EXPLICIT_INSTANTIATION_DECLARATION_DLLEXPORT
86 # define COAL_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI COAL_EXPLICIT_INSTANTIATION_DEFINITION_DLLEXPORT
87 # else
88 # define COAL_DLLAPI COAL_DLLIMPORT
89 # define COAL_EXPLICIT_INSTANTIATION_DECLARATION_DLLAPI COAL_EXPLICIT_INSTANTIATION_DECLARATION_DLLIMPORT
90 # define COAL_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI COAL_EXPLICIT_INSTANTIATION_DEFINITION_DLLIMPORT
91 # endif // COAL_EXPORTS
92 # define COAL_LOCAL COAL_DLLLOCAL
93 # endif // COAL_STATIC
94 #endif