cmake_minimum_required(VERSION 3.14) project(systemc_playground CXX) set(src ${CMAKE_CURRENT_SOURCE_DIR}/src) set(CMAKE_PREFIX_PATH $ENV{SYSTEMC_HOME}) find_package(SystemCLanguage CONFIG REQUIRED) # Set CXX std based on SystemC configuration. set(CMAKE_CXX_STANDARD ${SystemC_CXX_STANDARD} CACHE STRING "C++ standard to build all targets.") set(simulations event sc_export sc_export2 minimal_socket browse lt_bus ) foreach(sim IN ITEMS ${simulations}) add_executable(${sim} ${src}/${sim}.cc) target_include_directories(${sim} PRIVATE ${src}) target_compile_options(${sim} PRIVATE -Wall -Wextra) target_link_libraries(${sim} SystemC::systemc) endforeach() # Include tests. add_subdirectory(test)