ext: Update pybind11 to version 2.6.2.

This should help reduce warning spew when building with newer compilers.
The pybind11::module type has been renamed pybind11::module_ to avoid
conflicts with c++20 modules, according to the pybind11 changelog, so
this CL also updates gem5 source to use the new type. There is
supposedly an alias pybind11::module which is for compatibility, but we
still get linker errors without changing to pybind11::module_.

Change-Id: I0acb36215b33e3a713866baec43f5af630c356ee
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/40255
Maintainer: Bobby R. Bruce <bbruce@ucdavis.edu>
Reviewed-by: Bobby R. Bruce <bbruce@ucdavis.edu>
Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
Gabe Black
2021-01-31 06:07:28 -08:00
parent f0924fc39b
commit c4aaf373aa
227 changed files with 13789 additions and 4474 deletions

View File

@@ -73,7 +73,7 @@ SimObject *
PybindSimObjectResolver::resolveSimObject(const std::string &name)
{
// TODO
py::module m = py::module::import("m5.SimObject");
py::module_ m = py::module_::import("m5.SimObject");
auto f = m.attr("resolveSimObject");
return f(name).cast<SimObject *>();
@@ -95,9 +95,9 @@ const bool flag_NDEBUG = false;
const bool flag_TRACING_ON = TRACING_ON;
static void
init_drain(py::module &m_native)
init_drain(py::module_ &m_native)
{
py::module m = m_native.def_submodule("drain");
py::module_ m = m_native.def_submodule("drain");
py::enum_<DrainState>(m, "DrainState")
.value("Running", DrainState::Running)
@@ -127,9 +127,9 @@ init_drain(py::module &m_native)
}
static void
init_serialize(py::module &m_native)
init_serialize(py::module_ &m_native)
{
py::module m = m_native.def_submodule("serialize");
py::module_ m = m_native.def_submodule("serialize");
py::class_<Serializable, std::unique_ptr<Serializable, py::nodelete>>(
m, "Serializable")
@@ -140,9 +140,9 @@ init_serialize(py::module &m_native)
}
static void
init_range(py::module &m_native)
init_range(py::module_ &m_native)
{
py::module m = m_native.def_submodule("range");
py::module_ m = m_native.def_submodule("range");
py::class_<AddrRange>(m, "AddrRange")
.def(py::init<>())
@@ -175,9 +175,9 @@ init_range(py::module &m_native)
}
static void
init_net(py::module &m_native)
init_net(py::module_ &m_native)
{
py::module m = m_native.def_submodule("net");
py::module_ m = m_native.def_submodule("net");
py::class_<Net::EthAddr>(m, "EthAddr")
.def(py::init<>())
@@ -201,17 +201,17 @@ init_net(py::module &m_native)
}
static void
init_loader(py::module &m_native)
init_loader(py::module_ &m_native)
{
py::module m = m_native.def_submodule("loader");
py::module_ m = m_native.def_submodule("loader");
m.def("setInterpDir", &Loader::setInterpDir);
}
void
pybind_init_core(py::module &m_native)
pybind_init_core(py::module_ &m_native)
{
py::module m_core = m_native.def_submodule("core");
py::module_ m_core = m_native.def_submodule("core");
py::class_<Cycles>(m_core, "Cycles")
.def(py::init<>())

View File

@@ -76,9 +76,9 @@ ignore(const char *expr)
}
void
pybind_init_debug(py::module &m_native)
pybind_init_debug(py::module_ &m_native)
{
py::module m_debug = m_native.def_submodule("debug");
py::module_ m_debug = m_native.def_submodule("debug");
m_debug
.def("getAllFlagsVersion", []() { return Debug::allFlagsVersion; })
@@ -116,7 +116,7 @@ pybind_init_debug(py::module &m_native)
;
py::module m_trace = m_native.def_submodule("trace");
py::module_ m_trace = m_native.def_submodule("trace");
m_trace
.def("output", &output)
.def("ignore", &ignore)

View File

@@ -99,9 +99,9 @@ class PyEvent : public Event
};
void
pybind_init_event(py::module &m_native)
pybind_init_event(py::module_ &m_native)
{
py::module m = m_native.def_submodule("event");
py::module_ m = m_native.def_submodule("event");
m.def("simulate", &simulate,
py::arg("ticks") = MaxTick);

View File

@@ -35,9 +35,9 @@ namespace
{
void
objectfile_pybind(py::module &m_internal)
objectfile_pybind(py::module_ &m_internal)
{
py::module m = m_internal.def_submodule("object_file");
py::module_ m = m_internal.def_submodule("object_file");
py::class_<Loader::ObjectFile>(m, "ObjectFile")
.def("get_arch", [](const Loader::ObjectFile &obj) {

View File

@@ -40,10 +40,10 @@
#include "pybind11/pybind11.h"
void pybind_init_core(pybind11::module &m_native);
void pybind_init_debug(pybind11::module &m_native);
void pybind_init_core(pybind11::module_ &m_native);
void pybind_init_debug(pybind11::module_ &m_native);
void pybind_init_event(pybind11::module &m_native);
void pybind_init_stats(pybind11::module &m_native);
void pybind_init_event(pybind11::module_ &m_native);
void pybind_init_stats(pybind11::module_ &m_native);
#endif

View File

@@ -78,23 +78,23 @@ namespace Stats {
void
pythonDump()
{
py::module m = py::module::import("m5.stats");
py::module_ m = py::module_::import("m5.stats");
m.attr("dump")();
}
void
pythonReset()
{
py::module m = py::module::import("m5.stats");
py::module_ m = py::module_::import("m5.stats");
m.attr("reset")();
}
}
void
pybind_init_stats(py::module &m_native)
pybind_init_stats(py::module_ &m_native)
{
py::module m = m_native.def_submodule("stats");
py::module_ m = m_native.def_submodule("stats");
m
.def("initSimStats", &Stats::initSimStats)