Use object library for CMake

This commit is contained in:
kinichiro 2020-11-23 13:19:49 +09:00
parent 6f38fb483c
commit 9971b0820c
3 changed files with 35 additions and 3 deletions

View File

@ -968,7 +968,23 @@ if(EXTRA_EXPORT)
endforeach() endforeach()
endif() endif()
add_library(crypto ${CRYPTO_SRC}) add_library(crypto_obj OBJECT ${CRYPTO_SRC})
target_include_directories(crypto_obj
PRIVATE
.
asn1
bn
dsa
ec
ecdh
ecdsa
evp
modes
../include/compat
PUBLIC
../include)
add_library(crypto $<TARGET_OBJECTS:crypto_obj>)
target_include_directories(crypto target_include_directories(crypto
PRIVATE PRIVATE
. .

View File

@ -52,7 +52,15 @@ set(
tls13_server.c tls13_server.c
) )
add_library(ssl ${SSL_SRC}) add_library(ssl_obj OBJECT ${SSL_SRC})
target_include_directories(ssl_obj
PRIVATE
.
../include/compat
PUBLIC
../include)
add_library(ssl $<TARGET_OBJECTS:ssl_obj>)
target_include_directories(ssl target_include_directories(ssl
PRIVATE PRIVATE
. .

View File

@ -29,7 +29,15 @@ else()
add_definitions(-DTLS_DEFAULT_CA_FILE=\"${CMAKE_INSTALL_PREFIX}/etc/ssl/cert.pem\") add_definitions(-DTLS_DEFAULT_CA_FILE=\"${CMAKE_INSTALL_PREFIX}/etc/ssl/cert.pem\")
endif() endif()
add_library(tls ${TLS_SRC}) add_library(tls_obj OBJECT ${TLS_SRC})
target_include_directories(tls_obj
PRIVATE
.
../include/compat
PUBLIC
../include)
add_library(tls $<TARGET_OBJECTS:tls_obj>)
target_include_directories(tls target_include_directories(tls
PRIVATE PRIVATE
. .