Skip to content

Instantly share code, notes, and snippets.

@micahsnyder
Created October 2, 2020 19:50
Show Gist options
  • Save micahsnyder/adc7633964dc45ba0a683f0d5b51e1c2 to your computer and use it in GitHub Desktop.
Save micahsnyder/adc7633964dc45ba0a683f0d5b51e1c2 to your computer and use it in GitHub Desktop.
# Also install shared library (DLL) dependencies
install(CODE [[
file(GET_RUNTIME_DEPENDENCIES
LIBRARIES
$<TARGET_FILE:ClamAV::libclamav>
$<TARGET_FILE:ClamAV::libclamunrar_iface>
EXECUTABLES
# $<TARGET_FILE:clambc>
# $<TARGET_FILE:clamd>
# $<TARGET_FILE:clamdscan>
# $<TARGET_FILE:clamdtop>
$<TARGET_FILE:clamscan>
# $<TARGET_FILE:clamsubmit>
# $<TARGET_FILE:clamconf>
# $<TARGET_FILE:freshclam>
# $<TARGET_FILE:sigtool>
RESOLVED_DEPENDENCIES_VAR _r_deps
UNRESOLVED_DEPENDENCIES_VAR _u_deps
DIRECTORIES
$<TARGET_FILE_DIR:ClamAV::libclamav>
$<TARGET_FILE_DIR:ClamAV::libmspack>
$<TARGET_FILE_DIR:ClamAV::libclamunrar_iface>
$<TARGET_FILE_DIR:ClamAV::libclamunrar>
$<TARGET_FILE_DIR:OpenSSL::SSL>
$<TARGET_FILE_DIR:OpenSSL::Crypto>
$<TARGET_FILE_DIR:ZLIB::ZLIB>
$<TARGET_FILE_DIR:BZip2::BZip2>
$<TARGET_FILE_DIR:PCRE2::pcre2>
$<TARGET_FILE_DIR:LibXml2::LibXml2>
# $<TARGET_FILE_DIR:CURL::libcurl>
$<TARGET_FILE_DIR:JSONC::jsonc>
)
foreach(_file ${_r_deps})
string(TOLOWER ${_file} _file_lower)
if(NOT ${_file_lower} MATCHES "c:[\\/]windows[\\/]system32.*")
file(INSTALL
DESTINATION "${CMAKE_INSTALL_PREFIX}"
TYPE SHARED_LIBRARY
FOLLOW_SYMLINK_CHAIN
FILES "${_file}"
)
endif()
endforeach()
#message("UNRESOLVED_DEPENDENCIES_VAR: ${_u_deps}")
]])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment