cmake_minimum_required(VERSION 3.10) project(ftracetool C) set(CMAKE_C_STANDARD 23) set(CMAKE_C_STANDARD_REQUIRED ON) find_package(PkgConfig) pkg_search_module(LIBELF REQUIRED libelf) pkg_search_module(CHIBI_SCHEME REQUIRED chibi-scheme) if(NOT CHIBI_SCHEME_FOUND) message(FATAL_ERROR "chibi-scheme not found!") endif() if(NOT LIBELF_FOUND) message(FATAL_ERROR "libelf not found!") endif() file(GLOB SOURCES "src/*.c") message(STATUS "Libelf include dirs: ${LIBELF_INCLUDE_DIRS}") message(STATUS "Libelf libraries: ${LIBELF_LIBRARIES}") message(STATUS "Chibi-scheme include dirs: ${CHIBI_SCHEME_INCLUDE_DIRS}") message(STATUS "Chibi-scheme libraries: ${CHIBI_SCHEME_LIBRARIES}") add_executable(ftracetool ${SOURCES}) target_include_directories(ftracetool PRIVATE ${LIBELF_INCLUDE_DIRS} ${CHIBI_SCHEME_INCLUDE_DIRS}) target_link_libraries(ftracetool PRIVATE ${LIBELF_LIBRARIES} ${CHIBI_SCHEME_LIBRARIES})