9e20cdf6 |
# Copyright (C) 2020 Cisco Systems, Inc. and/or its affiliates. All rights reserved.
cmake_minimum_required( VERSION 3.12...3.13 )
# The clamonacc executable.
add_executable( clamonacc )
target_sources( clamonacc
PRIVATE
clamonacc.c
clamonacc.h
c-thread-pool/thpool.c
c-thread-pool/thpool.h
client/client.c
client/client.h
client/communication.c
client/communication.h
client/protocol.c
client/protocol.h
fanotif/fanotif.c
fanotif/fanotif.h
inotif/inotif.c
inotif/inotif.h
inotif/hash.c
inotif/hash.h
misc/priv_fts.h
misc/utils.c
misc/utils.h
scan/onas_queue.c
scan/onas_queue.h
scan/thread.c
scan/thread.h )
if(NOT HAVE_SYSTEM_LFS_FTS)
target_sources( clamonacc
PRIVATE
misc/fts.c )
endif()
target_include_directories( clamonacc
PRIVATE
${CMAKE_CURRENT_SOURCE_DIR} # So subdir source can #include "clamonacc.h"
${CMAKE_BINARY_DIR} # For clamav-config.h
${CMAKE_SOURCE_DIR}/clamd # Yes, this is a hack! We want to use clamd headers even though clamd isn't a library.
)
set_target_properties( clamonacc PROPERTIES COMPILE_FLAGS "${WARNCFLAGS}" )
target_link_libraries( clamonacc
PRIVATE
ClamAV::libclamav
ClamAV::shared )
install(TARGETS clamonacc DESTINATION ${CMAKE_INSTALL_SBINDIR})
if(SYSTEMD_FOUND)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/clamav-clamonacc.service.in
${CMAKE_CURRENT_BINARY_DIR}/clamav-clamonacc.service @ONLY)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/clamav-clamonacc.service
DESTINATION ${SYSTEMD_UNIT_DIR})
endif() |