blob: 33dbdbbe596035942f4ac38c8390909eda6a9b54 [file] [log] [blame]
set(TMP1 aspack.c autoit.c binhex.c blob.c cab.c chmunpack.c cvd.c dconf.c dsig.c elf.c entconv.c filetypes.c fsg.c hashtab.c htmlnorm.c is_tar.c jscript.c line.c lockdb.c matcher-ac.c matcher-bm.c matcher.c mbox.c md5.c message.c mew.c msexpand.c mspack.c ole2_extract.c others.c packlibs.c pdf.c pe.c petite.c phishcheck.c phish_domaincheck_db.c phish_whitelist.c pst.c readdb.c rebuildpe.c regex_list.c rtf.c scanners.c sis.c snprintf.c special.c spin.c str.c suecrypt.c table.c text.c tnef.c unarj.c unsp.c untar.c unzip.c upack.c upx.c uuencode.c vba_extract.c wwunpack.c yc.c)
llvm_prepend(TMP1 libclamav_ ${TMP1})
set(TMP2 clamscan.c manager.c others.c treewalk.c)
llvm_prepend(TMP2 clamscan_ ${TMP2})
set(TMP3 cdiff.c cfgparser.c getopt.c misc.c network.c options.c output.c sha256.c)
llvm_prepend(TMP3 shared_ ${TMP3})
set(TMP4 regerror.c regfree.c regcomp.c regexec.c strlcpy.c)
llvm_prepend(TMP4 libclamav_regex_ ${TMP4})
set(TMP5 nulsft.c bzlib.c infblock.c LZMADecode.c )
llvm_prepend(TMP5 libclamav_nsis_ ${TMP5})
set(Source ${TMP1} ${TMP2} ${TMP3} ${TMP4} ${TMP5})
set(INPUT ${CMAKE_CURRENT_SOURCE_DIR}/inputs/clam.cab ${CMAKE_CURRENT_SOURCE_DIR}/inputs/clamdoc.tar.gz ${CMAKE_CURRENT_SOURCE_DIR}/inputs/clam.exe ${CMAKE_CURRENT_SOURCE_DIR}/inputs/clam.exe.bz2 ${CMAKE_CURRENT_SOURCE_DIR}/inputs/clam-v2.rar ${CMAKE_CURRENT_SOURCE_DIR}/inputs/clam-v3.rar ${CMAKE_CURRENT_SOURCE_DIR}/inputs/clam.zip ${CMAKE_CURRENT_SOURCE_DIR}/inputs/README ${CMAKE_CURRENT_SOURCE_DIR}/inputs/rtf-test/Doc11.rtf ${CMAKE_CURRENT_SOURCE_DIR}/inputs/rtf-test/Doc1.rtf ${CMAKE_CURRENT_SOURCE_DIR}/inputs/rtf-test/Doc22.rtf ${CMAKE_CURRENT_SOURCE_DIR}/inputs/rtf-test/Doc2.rtf ${CMAKE_CURRENT_SOURCE_DIR}/inputs/rtf-test/doc3.rtf ${CMAKE_CURRENT_SOURCE_DIR}/inputs/rtf-test/docCLAMexe.rtf ${CMAKE_CURRENT_SOURCE_DIR}/inputs/rtf-test/rtf1.rtf ${CMAKE_CURRENT_SOURCE_DIR}/inputs/rtf-test/rtf-novirus.rtf)
set(PROG clamscan)
list(APPEND CPPFLAGS -DHAVE_CONFIG_H -I. -DDONT_LOCK_DBDIRS)
set(LDFLAGS -lz)
set(RUN_OPTIONS --debug --exclude-dir .svn --verbose -d${CMAKE_CURRENT_SOURCE_DIR}/dbdir -r ${INPUT})
if("${TARGET_OS}" STREQUAL "Darwin")
list(APPEND CPPFLAGS -DC_DARWIN)
endif()
if("${TARGET_OS}" STREQUAL "AIX")
list(APPEND CPPFLAGS -DC_AIX)
endif()
if("${TARGET_OS}" STREQUAL "IRIX")
list(APPEND CPPFLAGS -DC_IRIX)
endif()
if("${TARGET_OS}" STREQUAL "Cygwin")
list(APPEND CPPFLAGS -DC_CYGWIN)
endif()
if("${TARGET_OS}" STREQUAL "FreeBSD")
list(APPEND CPPFLAGS -DC_BSD)
endif()
if("${TARGET_OS}" STREQUAL "OpenBSD")
list(APPEND CPPFLAGS -DC_BSD)
endif()
if("${TARGET_OS}" STREQUAL "NetBSD")
list(APPEND CPPFLAGS -DC_BSD)
endif()
if("${TARGET_OS}" STREQUAL "HP-UX")
list(APPEND CPPFLAGS -DC_HPUX)
endif()
if("${TARGET_OS}" STREQUAL "Interix")
list(APPEND CPPFLAGS -DC_INTERIX -DC_WINDOWS)
endif()
if("${TARGET_OS}" STREQUAL "Win32")
list(APPEND CPPFLAGS -DC_WINDOWS)
endif()
if("${TARGET_OS}" STREQUAL "mingw")
list(APPEND CPPFLAGS -DC_WINDOWS)
endif()
if("${TARGET_OS}" STREQUAL "Linux")
list(APPEND CPPFLAGS -DC_LINUX)
endif()
if(NOT "${ARCH}" STREQUAL "ARM")
if("${ENDIAN}" STREQUAL "little")
list(APPEND CPPFLAGS -DFPU_WORDS_BIGENDIAN=0)
endif()
if("${ENDIAN}" STREQUAL "big")
list(APPEND CPPFLAGS -DFPU_WORDS_BIGENDIAN=1)
endif()
endif()
if("${ENDIAN}" STREQUAL "little")
list(APPEND CPPFLAGS -DWORDS_BIGENDIAN=0)
endif()
if("${ENDIAN}" STREQUAL "big")
list(APPEND CPPFLAGS -DWORDS_BIGENDIAN=1)
endif()
set(DIFFPROG ${PROGDIR}/DiffOutput.sh "diff ")
if("${TARGET_OS}" STREQUAL "Darwin")
list(APPEND EXTRA_LLIFLAGS -load=libz.dylib)
else()
if("${TARGET_OS}" STREQUAL "Linux")
list(APPEND EXTRA_LLIFLAGS -load=libz.so.1)
else()
list(APPEND EXTRA_LLIFLAGS -load=libz)
endif()
endif()
llvm_multisource()