cmake_minimum_required (VERSION 3.10) project (dram_tracer) set(CMAKE_CXX_STANDARD 17) option(BINARY_OUTPUT "Whether the output trace is in binary or text form." OFF) option(DEBUG_OUTPUT "Debug output on each data reference." OFF) find_package(DynamoRIO REQUIRED 9.0) find_package(fmt REQUIRED) configure_file("build_options.h.in" "include/build_options.h") add_library(dram_tracer STATIC dram_tracer.cpp) target_include_directories(dram_tracer PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/include") target_link_libraries(dram_tracer drmemtrace_analyzer fmt::fmt) use_DynamoRIO_drmemtrace(dram_tracer) add_executable(dram_tracer_launcher dram_tracer_launcher.cpp) target_link_libraries(dram_tracer_launcher dram_tracer drmemtrace_histogram z) use_DynamoRIO_extension(dram_tracer_launcher droption) # Needed for dr_frontend.h configure_DynamoRIO_main_headers()