diff --git a/include/boost/python/module_init.hpp b/include/boost/python/module_init.hpp index e552dcce..e06aa794 100644 --- a/include/boost/python/module_init.hpp +++ b/include/boost/python/module_init.hpp @@ -6,6 +6,8 @@ # define MODULE_INIT_DWA20020722_HPP # include +# include +# include # ifndef BOOST_PYTHON_MODULE_INIT @@ -18,41 +20,41 @@ BOOST_PYTHON_DECL PyObject* init_module(char const* name, void(*)()); # if PY_VERSION_HEX >= 0x03000000 # define _BOOST_PYTHON_MODULE_INIT(name) \ -PyObject* PyInit_##name() \ + PyObject* BOOST_PP_CAT (PyInit_,name)() \ { \ return boost::python::detail::init_module( \ - #name,&init_module_##name); \ + BOOST_PP_STRINGIZE(name),&BOOST_PP_CAT(init_module_,name)); \ } \ -void init_module_##name() + void BOOST_PP_CAT(init_module_,name)() # else # define _BOOST_PYTHON_MODULE_INIT(name) \ -void init##name() \ + void BOOST_PP_CAT(init,name)() \ { \ boost::python::detail::init_module( \ - #name,&init_module_##name); \ + BOOST_PP_STRINGIZE(name),&BOOST_PP_CAT(init_module_,name)); \ } \ -void init_module_##name() + void BOOST_PP_CAT(init_module_,name)() # endif # if (defined(_WIN32) || defined(__CYGWIN__)) && !defined(BOOST_PYTHON_STATIC_MODULE) # define BOOST_PYTHON_MODULE_INIT(name) \ -void init_module_##name(); \ + void BOOST_PP_CAT(init_module_,name)(); \ extern "C" __declspec(dllexport) _BOOST_PYTHON_MODULE_INIT(name) # elif BOOST_PYTHON_USE_GCC_SYMBOL_VISIBILITY # define BOOST_PYTHON_MODULE_INIT(name) \ -void init_module_##name(); \ + void BOOST_PP_CAT(init_module_,name)(); \ extern "C" __attribute__ ((visibility("default"))) _BOOST_PYTHON_MODULE_INIT(name) # else # define BOOST_PYTHON_MODULE_INIT(name) \ -void init_module_##name(); \ + void BOOST_PP_CAT(init_module_,name)(); \ extern "C" _BOOST_PYTHON_MODULE_INIT(name) # endif