config.hpp
2.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
// (C) Copyright Samuli-Petrus Korhonen 2017.
// Distributed under the Boost Software License, Version 1.0. (See
// accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
//
// The author gratefully acknowleges the support of NMR Solutions, Inc., in
// producing this work.
// Revision History:
// 15 Feb 17 Initial version
#ifndef CONFIG_NUMPY20170215_H_
# define CONFIG_NUMPY20170215_H_
# include <boost/config.hpp>
/*****************************************************************************
*
* Set up dll import/export options:
*
****************************************************************************/
// backwards compatibility:
#ifdef BOOST_NUMPY_STATIC_LIB
# define BOOST_NUMPY_STATIC_LINK
# elif !defined(BOOST_NUMPY_DYNAMIC_LIB)
# define BOOST_NUMPY_DYNAMIC_LIB
#endif
#if defined(BOOST_NUMPY_DYNAMIC_LIB)
# if defined(BOOST_SYMBOL_EXPORT)
# if defined(BOOST_NUMPY_SOURCE)
# define BOOST_NUMPY_DECL BOOST_SYMBOL_EXPORT
# define BOOST_NUMPY_DECL_FORWARD BOOST_SYMBOL_FORWARD_EXPORT
# define BOOST_NUMPY_DECL_EXCEPTION BOOST_EXCEPTION_EXPORT
# define BOOST_NUMPY_BUILD_DLL
# else
# define BOOST_NUMPY_DECL BOOST_SYMBOL_IMPORT
# define BOOST_NUMPY_DECL_FORWARD BOOST_SYMBOL_FORWARD_IMPORT
# define BOOST_NUMPY_DECL_EXCEPTION BOOST_EXCEPTION_IMPORT
# endif
# endif
#endif
#ifndef BOOST_NUMPY_DECL
# define BOOST_NUMPY_DECL
#endif
#ifndef BOOST_NUMPY_DECL_FORWARD
# define BOOST_NUMPY_DECL_FORWARD
#endif
#ifndef BOOST_NUMPY_DECL_EXCEPTION
# define BOOST_NUMPY_DECL_EXCEPTION
#endif
// enable automatic library variant selection ------------------------------//
#if !defined(BOOST_NUMPY_SOURCE) && !defined(BOOST_ALL_NO_LIB) && !defined(BOOST_NUMPY_NO_LIB)
//
// Set the name of our library, this will get undef'ed by auto_link.hpp
// once it's done with it:
//
#define _BOOST_PYTHON_CONCAT(N, M, m) N ## M ## m
#define BOOST_PYTHON_CONCAT(N, M, m) _BOOST_PYTHON_CONCAT(N, M, m)
#define BOOST_LIB_NAME BOOST_PYTHON_CONCAT(boost_numpy, PY_MAJOR_VERSION, PY_MINOR_VERSION)
//
// If we're importing code from a dll, then tell auto_link.hpp about it:
//
#ifdef BOOST_NUMPY_DYNAMIC_LIB
# define BOOST_DYN_LINK
#endif
//
// And include the header that does the work:
//
#include <boost/config/auto_link.hpp>
#endif // auto-linking disabled
#undef BOOST_PYTHON_CONCAT
#undef _BOOST_PYTHON_CONCAT
#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION
#endif // CONFIG_NUMPY20170215_H_