2014-07-10 22:06:10 -05:00
|
|
|
set(
|
|
|
|
TLS_SRC
|
|
|
|
tls.c
|
2016-06-28 03:29:54 +02:00
|
|
|
tls_bio_cb.c
|
2014-07-10 22:06:10 -05:00
|
|
|
tls_client.c
|
|
|
|
tls_config.c
|
2015-09-13 03:48:46 -05:00
|
|
|
tls_conninfo.c
|
2018-02-11 21:28:09 +09:00
|
|
|
tls_keypair.c
|
2014-07-10 22:06:10 -05:00
|
|
|
tls_server.c
|
2022-01-26 21:24:18 +09:00
|
|
|
tls_signer.c
|
2016-11-04 22:43:34 +09:00
|
|
|
tls_ocsp.c
|
2015-09-13 03:48:46 -05:00
|
|
|
tls_peer.c
|
2014-07-10 22:06:10 -05:00
|
|
|
tls_util.c
|
|
|
|
tls_verify.c
|
|
|
|
)
|
|
|
|
|
2018-03-16 14:59:53 -07:00
|
|
|
if(WIN32)
|
|
|
|
set(
|
|
|
|
TLS_SRC
|
|
|
|
${TLS_SRC}
|
|
|
|
compat/ftruncate.c
|
|
|
|
compat/pread.c
|
|
|
|
compat/pwrite.c
|
|
|
|
)
|
2018-02-25 01:59:39 +09:00
|
|
|
endif()
|
2014-07-10 22:06:10 -05:00
|
|
|
|
2016-04-11 12:59:23 +09:00
|
|
|
if(NOT "${OPENSSLDIR}" STREQUAL "")
|
2019-11-16 20:17:37 +09:00
|
|
|
add_definitions(-DTLS_DEFAULT_CA_FILE=\"${OPENSSLDIR}/cert.pem\")
|
2016-04-11 12:59:23 +09:00
|
|
|
else()
|
2019-11-16 20:17:37 +09:00
|
|
|
add_definitions(-DTLS_DEFAULT_CA_FILE=\"${CMAKE_INSTALL_PREFIX}/etc/ssl/cert.pem\")
|
2016-04-11 12:59:23 +09:00
|
|
|
endif()
|
|
|
|
|
2021-05-02 15:50:37 +09:00
|
|
|
file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/tls.sym DESTINATION
|
|
|
|
${CMAKE_CURRENT_BINARY_DIR})
|
|
|
|
if(LIBTLS_EXTRA_EXPORT)
|
|
|
|
list(SORT LIBTLS_EXTRA_EXPORT)
|
|
|
|
foreach(SYM IN LISTS LIBTLS_EXTRA_EXPORT)
|
|
|
|
file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/tls.sym "${SYM}\n")
|
|
|
|
endforeach()
|
|
|
|
endif()
|
|
|
|
|
2020-11-23 13:19:49 +09:00
|
|
|
add_library(tls_obj OBJECT ${TLS_SRC})
|
|
|
|
target_include_directories(tls_obj
|
|
|
|
PRIVATE
|
|
|
|
.
|
|
|
|
../include/compat
|
|
|
|
PUBLIC
|
2023-07-04 10:37:24 +03:00
|
|
|
../include
|
|
|
|
${CMAKE_BINARY_DIR}/include)
|
2020-11-23 13:19:49 +09:00
|
|
|
|
2021-05-02 15:50:37 +09:00
|
|
|
add_library(tls $<TARGET_OBJECTS:tls_obj> $<TARGET_OBJECTS:ssl_obj>
|
2022-12-13 05:44:07 -06:00
|
|
|
$<TARGET_OBJECTS:crypto_obj> empty.c)
|
2018-05-29 05:44:34 -05:00
|
|
|
|
2021-05-02 15:50:37 +09:00
|
|
|
export_symbol(tls ${CMAKE_CURRENT_BINARY_DIR}/tls.sym)
|
|
|
|
target_link_libraries(tls ${PLATFORM_LIBS})
|
2020-03-02 11:44:04 +01:00
|
|
|
if (WIN32)
|
2023-07-07 15:02:16 +03:00
|
|
|
set(TLS_POSTFIX -${TLS_MAJOR_VERSION} PARENT_SCOPE)
|
2015-09-07 01:05:33 -05:00
|
|
|
endif()
|
2020-03-02 11:44:04 +01:00
|
|
|
set_target_properties(tls PROPERTIES
|
|
|
|
OUTPUT_NAME tls${TLS_POSTFIX}
|
|
|
|
ARCHIVE_OUTPUT_NAME tls${TLS_POSTFIX})
|
|
|
|
set_target_properties(tls PROPERTIES VERSION ${TLS_VERSION}
|
|
|
|
SOVERSION ${TLS_MAJOR_VERSION})
|
2015-09-07 01:05:33 -05:00
|
|
|
|
2018-03-16 13:59:26 -07:00
|
|
|
if(ENABLE_LIBRESSL_INSTALL)
|
|
|
|
install(
|
2018-03-19 19:42:55 -07:00
|
|
|
TARGETS tls
|
2018-03-16 13:59:26 -07:00
|
|
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
|
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
|
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
|
|
|
)
|
|
|
|
endif(ENABLE_LIBRESSL_INSTALL)
|
2021-11-27 20:57:14 +09:00
|
|
|
|
|
|
|
# build static library for regression test
|
|
|
|
if(BUILD_SHARED_LIBS)
|
|
|
|
add_library(tls-static STATIC $<TARGET_OBJECTS:tls_obj>
|
|
|
|
$<TARGET_OBJECTS:ssl_obj> $<TARGET_OBJECTS:crypto_obj>)
|
|
|
|
target_link_libraries(tls-static ${PLATFORM_LIBS})
|
|
|
|
endif()
|
|
|
|
|