2018-05-03 14:40:24 +00:00
|
|
|
set(libs
|
2020-10-13 15:30:41 +00:00
|
|
|
${mbedtls_target}
|
2018-05-03 14:40:24 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
if(USE_PKCS11_HELPER_LIBRARY)
|
|
|
|
set(libs ${libs} pkcs11-helper)
|
|
|
|
endif(USE_PKCS11_HELPER_LIBRARY)
|
|
|
|
|
|
|
|
if(ENABLE_ZLIB_SUPPORT)
|
|
|
|
set(libs ${libs} ${ZLIB_LIBRARIES})
|
|
|
|
endif(ENABLE_ZLIB_SUPPORT)
|
|
|
|
|
2019-06-04 12:47:58 +00:00
|
|
|
find_library(FUZZINGENGINE_LIB FuzzingEngine)
|
2020-06-05 09:15:31 +00:00
|
|
|
if(FUZZINGENGINE_LIB)
|
2019-06-04 12:47:58 +00:00
|
|
|
project(fuzz CXX)
|
2020-06-05 09:15:31 +00:00
|
|
|
endif()
|
2019-06-04 12:47:58 +00:00
|
|
|
|
2020-06-05 09:15:31 +00:00
|
|
|
set(executables_no_common_c
|
|
|
|
fuzz_privkey
|
|
|
|
fuzz_pubkey
|
|
|
|
fuzz_x509crl
|
|
|
|
fuzz_x509crt
|
|
|
|
fuzz_x509csr
|
|
|
|
)
|
2019-06-04 12:47:58 +00:00
|
|
|
|
2020-06-05 09:15:31 +00:00
|
|
|
set(executables_with_common_c
|
|
|
|
fuzz_client
|
|
|
|
fuzz_dtlsclient
|
|
|
|
fuzz_dtlsserver
|
|
|
|
fuzz_server
|
|
|
|
)
|
2019-06-04 12:47:58 +00:00
|
|
|
|
2020-06-05 09:15:31 +00:00
|
|
|
foreach(exe IN LISTS executables_no_common_c executables_with_common_c)
|
2019-06-04 12:47:58 +00:00
|
|
|
|
2020-06-05 14:00:22 +00:00
|
|
|
add_executable(${exe} ${exe}.c $<TARGET_OBJECTS:mbedtls_test>)
|
2019-06-04 12:47:58 +00:00
|
|
|
|
2020-06-05 09:15:31 +00:00
|
|
|
if (NOT FUZZINGENGINE_LIB)
|
|
|
|
target_link_libraries(${exe} ${libs})
|
|
|
|
target_sources(${exe} PRIVATE onefile.c)
|
|
|
|
else()
|
|
|
|
target_link_libraries(${exe} ${libs} FuzzingEngine)
|
|
|
|
SET_TARGET_PROPERTIES(${exe} PROPERTIES LINKER_LANGUAGE CXX)
|
|
|
|
endif()
|
2019-06-04 12:47:58 +00:00
|
|
|
|
2020-06-05 09:15:31 +00:00
|
|
|
# This emulates "if ( ... IN_LIST ... )" which becomes available in CMake 3.3
|
|
|
|
list(FIND executables_with_common_c ${exe} exe_index)
|
|
|
|
if (${exe_index} GREATER -1)
|
|
|
|
target_sources(${exe} PRIVATE common.c)
|
|
|
|
endif()
|
2019-06-04 12:47:58 +00:00
|
|
|
|
2020-06-05 09:15:31 +00:00
|
|
|
endforeach()
|