Check if gem5 exists.
This commit is contained in:
@@ -54,4 +54,6 @@ add_subdirectory(traceAnalyzer)
|
||||
add_subdirectory(simulator)
|
||||
|
||||
# Add DRAMSysgem5
|
||||
add_subdirectory(gem5)
|
||||
if(DEFINED ENV{GEM5})
|
||||
add_subdirectory(gem5)
|
||||
endif()
|
||||
|
||||
@@ -32,34 +32,20 @@
|
||||
|
||||
cmake_minimum_required(VERSION 3.10)
|
||||
|
||||
# Project Name
|
||||
project(DRAMSysGem5)
|
||||
set(GEM5_ARCH ARM) # ARM, X86, ALPHA
|
||||
set(GEM5_VARIANT opt) # opt, fast
|
||||
|
||||
# Configuration:
|
||||
set(CMAKE_CXX_STANDARD 11 CACHE STRING "C++ Version")
|
||||
set(DCMAKE_SH="CMAKE_SH-NOTFOUND")
|
||||
|
||||
include_directories(
|
||||
$ENV{GEM5}/build/ARM/
|
||||
$ENV{GEM5}/util/tlm/examples/slave_port
|
||||
$ENV{GEM5}/util/tlm/examples/common
|
||||
$ENV{GEM5}/util/tlm/src/
|
||||
$ENV{GEM5}/util/systemc
|
||||
)
|
||||
find_library(GEM5_LIBRARY gem5_${GEM5_VARIANT} PATH $ENV{GEM5}/build/${GEM5_ARCH}/)
|
||||
|
||||
link_directories(
|
||||
$ENV{GEM5}/build/ARM/
|
||||
)
|
||||
|
||||
add_executable(DRAMSysGem5
|
||||
add_executable(DRAMSys_gem5
|
||||
main.cpp
|
||||
$ENV{GEM5}/util/systemc/sc_gem5_control.cc
|
||||
$ENV{GEM5}/util/systemc/sc_logger.cc
|
||||
$ENV{GEM5}/util/systemc/sc_module.cc
|
||||
$ENV{GEM5}/util/systemc/stats.cc
|
||||
$ENV{GEM5}/util/tlm/examples/common/cli_parser.cc
|
||||
$ENV{GEM5}/util/tlm/examples/common/report_handler.cc
|
||||
$ENV{GEM5}/util/tlm/src/master_transactor.cc
|
||||
$ENV{GEM5}/util/tlm/src/sc_master_port.cc
|
||||
$ENV{GEM5}/util/tlm/src/sc_slave_port.cc
|
||||
$ENV{GEM5}/util/tlm/src/slave_transactor.cc
|
||||
@@ -67,7 +53,18 @@ add_executable(DRAMSysGem5
|
||||
$ENV{GEM5}/util/tlm/src/sc_mm.cc
|
||||
$ENV{GEM5}/util/tlm/src/sim_control.cc
|
||||
)
|
||||
target_include_directories(DRAMSysGem5
|
||||
PUBLIC ../library/src/simulation/
|
||||
|
||||
target_include_directories(DRAMSys_gem5
|
||||
PRIVATE $ENV{GEM5}/build/ARM/
|
||||
PRIVATE $ENV{GEM5}/util/tlm/examples/slave_port/
|
||||
PRIVATE $ENV{GEM5}/util/tlm/examples/common/
|
||||
PRIVATE $ENV{GEM5}/util/tlm/src/
|
||||
PRIVATE $ENV{GEM5}/util/systemc/
|
||||
PRIVATE ../library/src/simulation/
|
||||
)
|
||||
target_link_libraries(DRAMSysGem5 systemc DRAMSysLibrary gem5_opt)
|
||||
|
||||
target_link_libraries(DRAMSys_gem5
|
||||
systemc
|
||||
DRAMSysLibrary
|
||||
${GEM5_LIBRARY}
|
||||
)
|
||||
Reference in New Issue
Block a user