base: Add a M5_PUBLIC and M5_LOCAL attribute macro
authorAndreas Sandberg <andreas.sandberg@arm.com>
Wed, 2 May 2018 14:34:24 +0000 (15:34 +0100)
committerAndreas Sandberg <andreas.sandberg@arm.com>
Fri, 29 Jun 2018 08:50:42 +0000 (08:50 +0000)
commit0ee4a543648a4c183a27b7d953317a99f6f30928
treeba21e4f095481abab649a72408a92bf07837509d
parent055a6ec3da7df5fee98d8f5ba08aaf81d5e7862c
base: Add a M5_PUBLIC and M5_LOCAL attribute macro

There are cases where we need to limit the symbol visibility to avoid
compilation errors. This is a problem for Python code that relies on
PyBind11 since recent versions enforce hidden symbols. As a
consequence, classes that have member variables from PyBind11 need to
be declared with the hidden attribute (or gem5 needs to be compiled
with -fvisibility=hidden).

Change-Id: I30e582fde494ff61ab7a596a595efc26a2952a5f
Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/11513
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
src/base/compiler.hh