From: Gabe Black Date: Tue, 12 Jun 2018 01:53:25 +0000 (-0700) Subject: systemc: Include boost/bind.hpp in the systemc header. X-Git-Tag: v19.0.0.0~1946 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c172a64db11daa14e11b614374688934112dffd2;p=gem5.git systemc: Include boost/bind.hpp in the systemc header. The systemc spec says that sc_bind, sc_ref and sc_cref macros should expand to boost::bind, boost::ref, and boost::cref respectively, but that it's "use is not mandantory". Unfortunately, the regression tests use those macros without actually including the boost headers for themselves, and so they won't compile without dragging in these boost headers as a dependency. This should be mostly ok to include here since gem5 itself shouldn't include systemc, just the sub headers that systemc brings in. systemc code which includes systemc *will* have a dependency on boost, but that at least contains the new dependency somewhat. Change-Id: I1877a1b7dae2952f30a9d577d778739abbe7ac3b Reviewed-on: https://gem5-review.googlesource.com/11178 Reviewed-by: Gabe Black Maintainer: Gabe Black --- diff --git a/src/systemc/ext/systemc b/src/systemc/ext/systemc index 1224a7e1b..e2485509e 100644 --- a/src/systemc/ext/systemc +++ b/src/systemc/ext/systemc @@ -30,6 +30,12 @@ #ifndef __SYSTEMC_EXT_SYSTEMC__ #define __SYSTEMC_EXT_SYSTEMC__ +// This include isn't supposed to be necessary, but some regression tests +// assume that the sc_bind macro will work without explicitly including the +// boost headers. This is in contradiction to the spec which says boost isn't +// a required dependency. +#include + #include "channel/_channel.hh" #include "core/_core.hh" #include "dt/_dt.hh"