blob: 6c743b9355081b2c37dd93d589bc02bda232950e [file] [log] [blame]
This directory holds several examples which show how to build and run systemc
code and models within gem5. To build a particular example, set the EXTRAS
variable when running scons so that it gets picked up as part of gem5's build.
For example:
scons build/ARM/gem5.opt \
EXTRAS=util/systemc/systemc_within_gem5/systemc_sc_main
Then when running gem5, you can use the config.py in the corresponding
directory.
build/ARM/gem5.opt util/systemc/systemc_within_gem5/systemc_sc_main/config.py \
--word Hello --word World
To rebuild gem5 excluding the example code, be sure to clear the EXTRAS
variable:
scons build/ARM/gem5.opt EXTRAS=
When building your own models, you don't have to use the EXTRAS mechanism and
can instead put your source files alongside regular gem5 sources.
Existing examples:
systemc_sc_main - Run code based on an sc_main function.
systemc_simple_object - Build systemc objects into a gem5 object hierarchy.
Note that these directories all have a systemc_ prefix so that when EXTRAS
pastes them into the build directory, they won't conflict with any existing
top level directory.