ClamAV is an open source (GPLv2) anti-virus toolkit.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
clamav/clamdscan/CMakeLists.txt

70 lines
2.3 KiB

# Copyright (C) 2020-2025 Cisco Systems, Inc. and/or its affiliates. All rights reserved.
if(WIN32)
add_definitions(-DWIN32_LEAN_AND_MEAN)
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
add_definitions(-D_CRT_SECURE_NO_DEPRECATE)
add_definitions(-D_CRT_NONSTDC_NO_DEPRECATE)
# Windows compatibility headers
include_directories(${CMAKE_SOURCE_DIR}/win32/compat)
endif()
# The clamdscan executable.
add_executable( clamdscan )
target_sources( clamdscan
PRIVATE
clamdscan.c
client.c
client.h
proto.c
proto.h )
if(WIN32)
target_sources( clamdscan
PRIVATE
${CMAKE_SOURCE_DIR}/win32/res/clamdscan.rc
${CMAKE_SOURCE_DIR}/win32/res/clam.manifest )
endif()
target_include_directories( clamdscan
PRIVATE ${CMAKE_BINARY_DIR} # For clamav-config.h
)
set_target_properties( clamdscan PROPERTIES COMPILE_FLAGS "${WARNCFLAGS}" )
if (APPLE AND CLAMAV_SIGN_FILE)
set_target_properties( clamdscan PROPERTIES
XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY ${CODE_SIGN_IDENTITY}
XCODE_ATTRIBUTE_DEVELOPMENT_TEAM ${DEVELOPMENT_TEAM_ID}
)
endif()
target_link_libraries( clamdscan
PRIVATE
ClamAV::libclamav
ClamAV::common )
if(WIN32)
install(TARGETS clamdscan DESTINATION . COMPONENT programs)
install(FILES $<TARGET_PDB_FILE:clamdscan> DESTINATION . OPTIONAL COMPONENT programs)
else()
install(TARGETS clamdscan DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT programs)
endif()
if(SYSTEMD_FOUND)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/clamav-clamdscan@.service.in
${CMAKE_CURRENT_BINARY_DIR}/clamav-clamdscan@.service @ONLY)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/clamav-clamdscan@.timer.in
${CMAKE_CURRENT_BINARY_DIR}/clamav-clamdscan@.timer @ONLY)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/clamav-clamdscan@.service
DESTINATION ${SYSTEMD_UNIT_DIR} COMPONENT programs)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/clamav-clamdscan@.service
DESTINATION ${SYSTEMD_USER_UNIT_DIR} COMPONENT programs)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/clamav-clamdscan@.timer
DESTINATION ${SYSTEMD_UNIT_DIR} COMPONENT programs)
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/clamav-clamdscan@.timer
DESTINATION ${SYSTEMD_USER_UNIT_DIR} COMPONENT programs)
endif()