diff options
author | Christian Menard <christian.menard@tu-dresden.de> | 2017-05-23 00:48:52 +0200 |
---|---|---|
committer | Christian Menard <christian.menard@tu-dresden.de> | 2017-05-30 10:47:32 +0000 |
commit | 01921763a47d1ed2238ee5d4435edbf752783a95 (patch) | |
tree | 3c1a8f43e2baeeaec04208f297b9e782e9393eae /util/tlm/examples/master_port/SConstruct | |
parent | 6e8b0f659602602765fcfdb4d32a8aa2548d669e (diff) | |
download | gem5-01921763a47d1ed2238ee5d4435edbf752783a95.tar.xz |
misc: Reorder sources in util/tlm and rewrite build scripts
* Use one SConstruct to build everything instead of one SConstruct for
each example.
* Introduce SConscripts for sub-directories.
* Build in 'build' instead of the source tree.
* Build and link to SystemC from the ext/systemc directory. This
ensures that SystemC does not need to be installed on the host and
avoids possible issues caused by an incompatible SystemC build.
* Update the README and add some minor fixes
Change-Id: I641ed94f542626864fb7af499ad1be8fd4ad929f
Reviewed-on: https://gem5-review.googlesource.com/3480
Reviewed-by: Matthias Jung <jungma@eit.uni-kl.de>
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Jason Lowe-Power <jason@lowepower.com>
Diffstat (limited to 'util/tlm/examples/master_port/SConstruct')
-rw-r--r-- | util/tlm/examples/master_port/SConstruct | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/util/tlm/examples/master_port/SConstruct b/util/tlm/examples/master_port/SConstruct deleted file mode 100644 index a896a34e4..000000000 --- a/util/tlm/examples/master_port/SConstruct +++ /dev/null @@ -1,78 +0,0 @@ -#!python - -# Copyright (c) 2016, Dresden University of Technology (TU Dresden) -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are -# met: -# -# 1. Redistributions of source code must retain the above copyright notice, -# this list of conditions and the following disclaimer. -# -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# 3. Neither the name of the copyright holder nor the names of its -# contributors may be used to endorse or promote products derived from -# this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED -# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER -# OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# -# Authors: Christian Menard - -import os - -gem5_arch = 'ARM' -gem5_variant = 'opt' -#gem5_variant = 'debug' - -gem5_root = '#../../../..' - -target = 'gem5.' + gem5_variant + '.sc' - -env = Environment() - -# Import PKG_CONFIG_PATH from the external environment -if os.environ.has_key('PKG_CONFIG_PATH'): - env['ENV']['PKG_CONFIG_PATH'] = os.environ['PKG_CONFIG_PATH'] - -# search for SystemC -env.ParseConfig('pkg-config --cflags --libs systemc') - -# add include dirs -env.Append(CPPPATH=[gem5_root + '/build/' + gem5_arch, - gem5_root + '/util/systemc', - gem5_root + '/util/tlm', - '../common']) - -env.Append(LIBS=['gem5_' + gem5_variant]) -env.Append(LIBPATH=[gem5_root + '/build/' + gem5_arch]) - -env.Append(CXXFLAGS=['-std=c++11', - '-DSC_INCLUDE_DYNAMIC_PROCESSES', - '-DTRACING_ON']) - -if gem5_variant == 'debug': - env.Append(CXXFLAGS=['-g', '-DDEBUG']) - -src_systemc = [gem5_root + '/util/systemc/sc_gem5_control.cc', - gem5_root + '/util/systemc/sc_logger.cc', - gem5_root + '/util/systemc/sc_module.cc', - gem5_root + '/util/systemc/stats.cc'] - -src_tlm = Glob(gem5_root + '/util/tlm/*.cc') -src_main = Glob('*.cc') + Glob('../common/*.cc') - -main = env.Program(target, src_systemc + src_tlm + src_main) |