diff options
Diffstat (limited to 'ssl/CMakeLists.txt')
-rw-r--r-- | ssl/CMakeLists.txt | 42 |
1 files changed, 36 insertions, 6 deletions
diff --git a/ssl/CMakeLists.txt b/ssl/CMakeLists.txt index e2eeab5..cd7e335 100644 --- a/ssl/CMakeLists.txt +++ b/ssl/CMakeLists.txt | |||
@@ -72,6 +72,13 @@ target_include_directories(ssl_obj | |||
72 | ../include | 72 | ../include |
73 | ${CMAKE_BINARY_DIR}/include) | 73 | ${CMAKE_BINARY_DIR}/include) |
74 | 74 | ||
75 | if(MSVC) | ||
76 | # "C4702" - unreachable code | ||
77 | set_source_files_properties(d1_pkt.c s3_cbc.c PROPERTIES | ||
78 | COMPILE_OPTIONS /wd4702 | ||
79 | ) | ||
80 | endif() | ||
81 | |||
75 | add_library(bs_obj OBJECT ${BS_SRC}) | 82 | add_library(bs_obj OBJECT ${BS_SRC}) |
76 | target_include_directories(bs_obj | 83 | target_include_directories(bs_obj |
77 | PRIVATE | 84 | PRIVATE |
@@ -86,16 +93,16 @@ endif() | |||
86 | 93 | ||
87 | export_symbol(ssl ${CMAKE_CURRENT_SOURCE_DIR}/ssl.sym) | 94 | export_symbol(ssl ${CMAKE_CURRENT_SOURCE_DIR}/ssl.sym) |
88 | target_link_libraries(ssl crypto ${PLATFORM_LIBS}) | 95 | target_link_libraries(ssl crypto ${PLATFORM_LIBS}) |
89 | if (WIN32) | ||
90 | set(SSL_POSTFIX -${SSL_MAJOR_VERSION} PARENT_SCOPE) | ||
91 | endif() | ||
92 | set_target_properties(ssl PROPERTIES | 96 | set_target_properties(ssl PROPERTIES |
93 | OUTPUT_NAME ssl${SSL_POSTFIX} | 97 | OUTPUT_NAME ssl |
94 | ARCHIVE_OUTPUT_NAME ssl${SSL_POSTFIX} | 98 | ARCHIVE_OUTPUT_NAME ssl |
95 | EXPORT_NAME SSL | 99 | EXPORT_NAME SSL |
96 | VERSION ${SSL_VERSION} | 100 | VERSION ${SSL_VERSION} |
97 | SOVERSION ${SSL_MAJOR_VERSION} | 101 | SOVERSION ${SSL_MAJOR_VERSION} |
98 | ) | 102 | ) |
103 | if(NOT CMAKE_VERSION VERSION_LESS 3.27.0) | ||
104 | set_target_properties(ssl PROPERTIES DLL_NAME_WITH_SOVERSION TRUE) | ||
105 | endif() | ||
99 | 106 | ||
100 | target_include_directories( | 107 | target_include_directories( |
101 | ssl | 108 | ssl |
@@ -104,6 +111,30 @@ target_include_directories( | |||
104 | $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> | 111 | $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> |
105 | ) | 112 | ) |
106 | 113 | ||
114 | if(HOST_AARCH64) | ||
115 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/aarch64/) | ||
116 | elseif(HOST_ARM) | ||
117 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/arm/) | ||
118 | elseif(HOST_I386) | ||
119 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/i386/) | ||
120 | elseif(HOST_LOONGARCH64) | ||
121 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/loongarch64) | ||
122 | elseif(HOST_MIPS64) | ||
123 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/mips64) | ||
124 | elseif(HOST_MIPS) | ||
125 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/mips) | ||
126 | elseif(HOST_POWERPC) | ||
127 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/powerpc) | ||
128 | elseif(HOST_POWERPC64) | ||
129 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/powerpc64) | ||
130 | elseif(HOST_RISCV64) | ||
131 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/riscv64) | ||
132 | elseif(HOST_SPARC64) | ||
133 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/sparc64) | ||
134 | elseif(HOST_X86_64) | ||
135 | target_include_directories(ssl_obj PRIVATE ../crypto/arch/amd64) | ||
136 | endif() | ||
137 | |||
107 | install( | 138 | install( |
108 | TARGETS ssl | 139 | TARGETS ssl |
109 | EXPORT SSL-target | 140 | EXPORT SSL-target |
@@ -135,4 +166,3 @@ if(BUILD_SHARED_LIBS) | |||
135 | add_library(ssl-static STATIC $<TARGET_OBJECTS:ssl_obj>) | 166 | add_library(ssl-static STATIC $<TARGET_OBJECTS:ssl_obj>) |
136 | target_link_libraries(ssl-static crypto-static ${PLATFORM_LIBS}) | 167 | target_link_libraries(ssl-static crypto-static ${PLATFORM_LIBS}) |
137 | endif() | 168 | endif() |
138 | |||