find_package(PkgConfig) pkg_check_modules(Guile guile-2.2) if (NOT Guile_FOUND) message(STATUS "Disabling Guile modules") return() endif() set(GUILE_EXTENSION_DIR ${CMAKE_CURRENT_BINARY_DIR}) configure_file(immer.scm.in immer.scm) add_library(guile-immer SHARED EXCLUDE_FROM_ALL src/immer.cpp) target_include_directories(guile-immer PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${CALLABLE_TRAITS_INCLUDE_DIR} ${Guile_INCLUDE_DIRS}) target_link_libraries(guile-immer PUBLIC immer ${Guile_LIBRARIES}) add_custom_target(guile DEPENDS guile-immer)