aboutsummaryrefslogtreecommitdiff
path: root/tls
diff options
context:
space:
mode:
authorViktor Szakats <commit@vsz.me>2023-12-14 03:36:09 +0000
committerViktor Szakats <commit@vsz.me>2023-12-14 03:36:09 +0000
commit848950877fb2d66d76cb1258fc28a2b1b453a42d (patch)
tree3008889d0dbb1ce97d753a1c0929a2e4cd0ceccc /tls
parent05902e63c9b80d25f4367fb0f8f441669510eb2e (diff)
downloadportable-848950877fb2d66d76cb1258fc28a2b1b453a42d.tar.gz
portable-848950877fb2d66d76cb1258fc28a2b1b453a42d.tar.bz2
portable-848950877fb2d66d76cb1258fc28a2b1b453a42d.zip
cmake: stop exporting compat functions
Diffstat (limited to 'tls')
-rw-r--r--tls/CMakeLists.txt30
1 files changed, 19 insertions, 11 deletions
diff --git a/tls/CMakeLists.txt b/tls/CMakeLists.txt
index c3c9424..33ae184 100644
--- a/tls/CMakeLists.txt
+++ b/tls/CMakeLists.txt
@@ -14,28 +14,32 @@ set(
14 tls_verify.c 14 tls_verify.c
15) 15)
16 16
17set(TLS_COMPAT_SRC "")
18
17if(WIN32) 19if(WIN32)
18 set( 20 set(
19 TLS_SRC 21 TLS_SRC
20 ${TLS_SRC} 22 ${TLS_SRC}
21 compat/ftruncate.c
22 compat/pread.c
23 compat/pwrite.c
24 ) 23 )
25 24
26 set(LIBTLS_EXTRA_EXPORT ${LIBTLS_EXTRA_EXPORT} ftruncate) 25 set(TLS_COMPAT_SRC ${TLS_COMPAT_SRC} compat/ftruncate.c)
26 set(TLS_COMPAT_SRC ${TLS_COMPAT_SRC} compat/pread.c)
27 set(TLS_COMPAT_SRC ${TLS_COMPAT_SRC} compat/pwrite.c)
27endif() 28endif()
28 29
29add_definitions(-DTLS_DEFAULT_CA_FILE=\"${OPENSSLDIR}/cert.pem\") 30add_definitions(-DTLS_DEFAULT_CA_FILE=\"${OPENSSLDIR}/cert.pem\")
30 31
31file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/tls.sym DESTINATION 32file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/tls.sym DESTINATION
32 ${CMAKE_CURRENT_BINARY_DIR}) 33 ${CMAKE_CURRENT_BINARY_DIR})
33if(LIBTLS_EXTRA_EXPORT) 34
34 list(SORT LIBTLS_EXTRA_EXPORT) 35add_library(tls_compat_obj OBJECT ${TLS_COMPAT_SRC})
35 foreach(SYM IN LISTS LIBTLS_EXTRA_EXPORT) 36target_include_directories(tls_compat_obj
36 file(APPEND ${CMAKE_CURRENT_BINARY_DIR}/tls.sym "${SYM}\n") 37 PRIVATE
37 endforeach() 38 .
38endif() 39 ../include/compat
40 PUBLIC
41 ../include
42 ${CMAKE_BINARY_DIR}/include)
39 43
40add_library(tls_obj OBJECT ${TLS_SRC}) 44add_library(tls_obj OBJECT ${TLS_SRC})
41target_include_directories(tls_obj 45target_include_directories(tls_obj
@@ -46,7 +50,11 @@ target_include_directories(tls_obj
46 ../include 50 ../include
47 ${CMAKE_BINARY_DIR}/include) 51 ${CMAKE_BINARY_DIR}/include)
48 52
49add_library(tls $<TARGET_OBJECTS:tls_obj> empty.c) 53if(BUILD_SHARED_LIBS)
54 add_library(tls $<TARGET_OBJECTS:tls_obj> $<TARGET_OBJECTS:tls_compat_obj> $<TARGET_OBJECTS:compat_obj> empty.c)
55else()
56 add_library(tls $<TARGET_OBJECTS:tls_obj> $<TARGET_OBJECTS:tls_compat_obj> empty.c)
57endif()
50 58
51export_symbol(tls ${CMAKE_CURRENT_BINARY_DIR}/tls.sym) 59export_symbol(tls ${CMAKE_CURRENT_BINARY_DIR}/tls.sym)
52target_link_libraries(tls ${OPENSSL_LIBS}) 60target_link_libraries(tls ${OPENSSL_LIBS})