add_library(exploit_loader SHARED exploit_loader.cc) target_include_directories(exploit_loader PRIVATE ${WDISSECTOR_INCLUDES}) file(GLOB MODULE_SOURCES "*.cc") foreach(EXPLOIT_SRC ${MODULE_SOURCES}) get_filename_component(EXPLOIT_NAME ${EXPLOIT_SRC} NAME_WE) if(${EXPLOIT_NAME} STREQUAL "exploit_loader") continue() endif() string(REPLACE " " "_" EXPLOIT_NAME ${EXPLOIT_NAME}) message(STATUS "Adding exploit module: ${EXPLOIT_NAME}") add_library(${EXPLOIT_NAME} SHARED ${EXPLOIT_SRC}) target_link_libraries(${EXPLOIT_NAME} wdissector utils) target_include_directories(${EXPLOIT_NAME} PRIVATE ${WDISSECTOR_INCLUDES}) set_target_properties(${EXPLOIT_NAME} PROPERTIES OUTPUT_NAME _${EXPLOIT_NAME}) set_target_properties(${EXPLOIT_NAME} PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/modules) endforeach()