95 lines
4.9 KiB
C++
95 lines
4.9 KiB
C++
/*
|
|
* This file has been automatically generated by the jrl-cmakemodules.
|
|
* Please see https://github.com/jrl-umi3218/jrl-cmakemodules/blob/master/config.hh.cmake for details.
|
|
*/
|
|
|
|
#ifndef PINOCCHIO_CONFIG_HH
|
|
# define PINOCCHIO_CONFIG_HH
|
|
|
|
// Package version (header).
|
|
# define PINOCCHIO_VERSION_UNKNOWN_TAG 0 // Used to mention that the current version is unknown.
|
|
# define PINOCCHIO_VERSION "3.6.0"
|
|
# define PINOCCHIO_MAJOR_VERSION 3
|
|
# define PINOCCHIO_MINOR_VERSION 6
|
|
# define PINOCCHIO_PATCH_VERSION 0
|
|
|
|
#define PINOCCHIO_VERSION_AT_LEAST(major, minor, patch) (PINOCCHIO_MAJOR_VERSION>major || (PINOCCHIO_MAJOR_VERSION>=major && \
|
|
(PINOCCHIO_MINOR_VERSION>minor || (PINOCCHIO_MINOR_VERSION>=minor && \
|
|
PINOCCHIO_PATCH_VERSION>=patch))))
|
|
|
|
#define PINOCCHIO_VERSION_AT_MOST(major, minor, patch) (PINOCCHIO_MAJOR_VERSION<major || (PINOCCHIO_MAJOR_VERSION<=major && \
|
|
(PINOCCHIO_MINOR_VERSION<minor || (PINOCCHIO_MINOR_VERSION<=minor && \
|
|
PINOCCHIO_PATCH_VERSION<=patch))))
|
|
|
|
// Handle portable symbol export.
|
|
// Defining manually which symbol should be exported is required
|
|
// under Windows whether MinGW or MSVC is used.
|
|
//
|
|
// The headers then have to be able to work in two different modes:
|
|
// - dllexport when one is building the library,
|
|
// - dllimport for clients using the library.
|
|
//
|
|
// On Linux, set the visibility accordingly. If C++ symbol visibility
|
|
// is handled by the compiler, see: http://gcc.gnu.org/wiki/Visibility
|
|
//
|
|
// Explicit template instantiation on Windows need to add
|
|
// dllexport on the definition and dllimport on the declaration.
|
|
// The XXX_EXPLICIT_INSTANTIATION_DECLARATION_DLLAPI macro
|
|
// should be set on the declaration while
|
|
// the XXX_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI macro
|
|
// should be set on the definition.
|
|
# if defined _WIN32 || defined __CYGWIN__
|
|
// On Microsoft Windows, use dllimport and dllexport to tag symbols.
|
|
# define PINOCCHIO_DLLIMPORT __declspec(dllimport)
|
|
# define PINOCCHIO_DLLEXPORT __declspec(dllexport)
|
|
# define PINOCCHIO_DLLLOCAL
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DECLARATION_DLLIMPORT __declspec(dllimport)
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DECLARATION_DLLEXPORT
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLIMPORT __declspec(dllimport)
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLEXPORT __declspec(dllexport)
|
|
# else
|
|
// On Linux, for GCC >= 4, tag symbols using GCC extension.
|
|
# if __GNUC__ >= 4
|
|
# define PINOCCHIO_DLLIMPORT __attribute__ ((visibility("default")))
|
|
# define PINOCCHIO_DLLEXPORT __attribute__ ((visibility("default")))
|
|
# define PINOCCHIO_DLLLOCAL __attribute__ ((visibility("hidden")))
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DECLARATION_DLLIMPORT __attribute__ ((visibility("default")))
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DECLARATION_DLLEXPORT __attribute__ ((visibility("default")))
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLIMPORT
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLEXPORT
|
|
# else
|
|
// Otherwise (GCC < 4 or another compiler is used), export everything.
|
|
# define PINOCCHIO_DLLIMPORT
|
|
# define PINOCCHIO_DLLEXPORT
|
|
# define PINOCCHIO_DLLLOCAL
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DECLARATION_DLLIMPORT
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DECLARATION_DLLEXPORT
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLIMPORT
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLEXPORT
|
|
# endif // __GNUC__ >= 4
|
|
# endif // defined _WIN32 || defined __CYGWIN__
|
|
|
|
# ifdef PINOCCHIO_STATIC
|
|
// If one is using the library statically, get rid of
|
|
// extra information and use standard explicit template
|
|
// instantiation keyword.
|
|
# define PINOCCHIO_DLLAPI
|
|
# define PINOCCHIO_LOCAL
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DECLARATION extern template
|
|
# else
|
|
// Depending on whether one is building or using the
|
|
// library define DLLAPI to import or export and
|
|
// define the right explicit template instantiation keyword.
|
|
# ifdef pinocchio_EXPORTS
|
|
# define PINOCCHIO_DLLAPI PINOCCHIO_DLLEXPORT
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DECLARATION_DLLAPI PINOCCHIO_EXPLICIT_INSTANTIATION_DECLARATION_DLLEXPORT
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLEXPORT
|
|
# else
|
|
# define PINOCCHIO_DLLAPI PINOCCHIO_DLLIMPORT
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DECLARATION_DLLAPI PINOCCHIO_EXPLICIT_INSTANTIATION_DECLARATION_DLLIMPORT
|
|
# define PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLIMPORT
|
|
# endif // PINOCCHIO_EXPORTS
|
|
# define PINOCCHIO_LOCAL PINOCCHIO_DLLLOCAL
|
|
# endif // PINOCCHIO_STATIC
|
|
#endif //! PINOCCHIO_CONFIG_HH
|