From 0fdb846f3d66842d8dfb53333ffd9f2f905ea219 Mon Sep 17 00:00:00 2001 From: Derek Christ Date: Thu, 18 Jul 2024 11:17:49 +0200 Subject: [PATCH] Fix external SystemC and update Readme --- CMakeLists.txt | 8 ++++++-- README.md | 7 ++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3887b382..d73aa715 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -156,10 +156,14 @@ set(DISABLE_COPYRIGHT_MESSAGE True) # Allow populating of a user-set SystemC package if (NOT TARGET SystemC::systemc) FetchContent_MakeAvailable(systemc) + + # Set include directories to SYSTEM to suppress warnings + set_target_properties(systemc PROPERTIES SYSTEM TRUE) +else() + # Set include directories to SYSTEM to suppress warnings + set_target_properties(SystemC::systemc PROPERTIES SYSTEM TRUE) endif() -# Set include directories to SYSTEM to suppress warnings -set_target_properties(systemc PROPERTIES SYSTEM TRUE) ### DRAMPower ### if (DRAMSYS_WITH_DRAMPOWER) diff --git a/README.md b/README.md index f4065c3f..75e1af83 100644 --- a/README.md +++ b/README.md @@ -69,6 +69,9 @@ To use DRAMSys, first clone the repository. DRAMSys requires a **C++17** compiler. The build process is based on **CMake** (minimum version **3.24**). Furthermore, the simulator is based on **SystemC**. SystemC is included with FetchContent and will be build automatically with the project. If you want to use a preinstalled SystemC version, export the environment variable `SYSTEMC_HOME` (SystemC installation directory) and enable the `DRAMSYS_USE_EXTERNAL_SYSTEMC` CMake option. Also make sure that the SystemC library was built with the same C++ version. +If you choose to enable the compilation of the Trace Analyzer, a system installation of development packages for Qt5, Qwt and Python is required. +For example, on Ubuntu, these dependencies can be satisfied by installing the `qtbase5-dev`, `libqwt-qt5-dev` and `python3-dev` packages. + ### Building DRAMSys To build the standalone simulator for running memory trace files or traffic generators, first configure the project using CMake, then build the project: @@ -86,7 +89,9 @@ $ cmake -B build -D DRAMSYS_WITH_DRAMPOWER=Y If you plan to integrate DRAMSys into your own SystemC TLM-2.0 project you can build only the DRAMSys library by disabling the CMake option `DRAMSYS_BUILD_CLI`. -In order to include any proprietary extensions such as the Trace Analyzer, enable the CMake option `DRAMSYS_ENABLE_EXTENSIONS`. +To include the Trace Analyzer in the build process, enable the CMake option `DRAMSYS_BUILD_TRACE_ANALYZER`. + +In order to include any proprietary extensions such as the extended features of Trace Analyzer, enable the CMake option `DRAMSYS_ENABLE_EXTENSIONS`. To build DRAMSys on Windows 10 we recommend to use the **Windows Subsystem for Linux (WSL)**.