diff options
| -rw-r--r-- | CMakeLists.txt | 4 | ||||
| -rw-r--r-- | crypto/CMakeLists.txt | 93 |
2 files changed, 96 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index bcba254..1895161 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt | |||
| @@ -273,6 +273,10 @@ if(ENABLE_ASM) | |||
| 273 | endif() | 273 | endif() |
| 274 | elseif(APPLE AND "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") | 274 | elseif(APPLE AND "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") |
| 275 | set(HOST_ASM_MACOSX_X86_64 true) | 275 | set(HOST_ASM_MACOSX_X86_64 true) |
| 276 | elseif(MSVC AND "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") | ||
| 277 | set(HOST_ASM_MASM_X86_64 true) | ||
| 278 | elseif(CMAKE_SYSTEM_NAME MATCHES "MINGW" AND "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") | ||
| 279 | set(HOST_ASM_MINGW64_X86_64 true) | ||
| 276 | endif() | 280 | endif() |
| 277 | endif() | 281 | endif() |
| 278 | 282 | ||
diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt index de932c9..60a7494 100644 --- a/crypto/CMakeLists.txt +++ b/crypto/CMakeLists.txt | |||
| @@ -108,7 +108,98 @@ if(HOST_ASM_MACOSX_X86_64) | |||
| 108 | set_property(SOURCE ${ASM_X86_64_MACOSX_SRC} PROPERTY XCODE_EXPLICIT_FILE_TYPE "sourcecode.asm") | 108 | set_property(SOURCE ${ASM_X86_64_MACOSX_SRC} PROPERTY XCODE_EXPLICIT_FILE_TYPE "sourcecode.asm") |
| 109 | endif() | 109 | endif() |
| 110 | 110 | ||
| 111 | if((NOT HOST_ASM_ELF_X86_64) AND (NOT HOST_ASM_MACOSX_X86_64)) | 111 | if(HOST_ASM_MASM_X86_64) |
| 112 | set( | ||
| 113 | ASM_X86_64_MASM_SRC | ||
| 114 | aes/aes-masm-x86_64.S | ||
| 115 | aes/bsaes-masm-x86_64.S | ||
| 116 | aes/vpaes-masm-x86_64.S | ||
| 117 | aes/aesni-masm-x86_64.S | ||
| 118 | aes/aesni-sha1-masm-x86_64.S | ||
| 119 | #bn/modexp512-masm-x86_64.S | ||
| 120 | #bn/mont-masm-x86_64.S | ||
| 121 | #bn/mont5-masm-x86_64.S | ||
| 122 | #bn/gf2m-masm-x86_64.S | ||
| 123 | camellia/cmll-masm-x86_64.S | ||
| 124 | md5/md5-masm-x86_64.S | ||
| 125 | modes/ghash-masm-x86_64.S | ||
| 126 | rc4/rc4-masm-x86_64.S | ||
| 127 | rc4/rc4-md5-masm-x86_64.S | ||
| 128 | sha/sha1-masm-x86_64.S | ||
| 129 | sha/sha256-masm-x86_64.S | ||
| 130 | sha/sha512-masm-x86_64.S | ||
| 131 | whrlpool/wp-masm-x86_64.S | ||
| 132 | cpuid-masm-x86_64.S | ||
| 133 | ) | ||
| 134 | add_definitions(-DAES_ASM) | ||
| 135 | add_definitions(-DBSAES_ASM) | ||
| 136 | add_definitions(-DVPAES_ASM) | ||
| 137 | add_definitions(-DOPENSSL_IA32_SSE2) | ||
| 138 | #add_definitions(-DOPENSSL_BN_ASM_MONT) | ||
| 139 | #add_definitions(-DOPENSSL_BN_ASM_MONT5) | ||
| 140 | #add_definitions(-DOPENSSL_BN_ASM_GF2m) | ||
| 141 | add_definitions(-DMD5_ASM) | ||
| 142 | add_definitions(-DGHASH_ASM) | ||
| 143 | add_definitions(-DRSA_ASM) | ||
| 144 | add_definitions(-DSHA1_ASM) | ||
| 145 | add_definitions(-DSHA256_ASM) | ||
| 146 | add_definitions(-DSHA512_ASM) | ||
| 147 | add_definitions(-DWHIRLPOOL_ASM) | ||
| 148 | add_definitions(-DOPENSSL_CPUID_OBJ) | ||
| 149 | set(CRYPTO_SRC ${CRYPTO_SRC} ${ASM_X86_64_MASM_SRC}) | ||
| 150 | set_property(SOURCE ${ASM_X86_64_MASM_SRC} PROPERTY LANGUAGE C) | ||
| 151 | set_property(SOURCE ${ASM_X86_64_MASM_SRC} PROPERTY XCODE_EXPLICIT_FILE_TYPE "sourcecode.asm") | ||
| 152 | endif() | ||
| 153 | |||
| 154 | if(HOST_ASM_MINGW64_X86_64) | ||
| 155 | set( | ||
| 156 | ASM_X86_64_MINGW64_SRC | ||
| 157 | aes/aes-mingw64-x86_64.S | ||
| 158 | aes/bsaes-mingw64-x86_64.S | ||
| 159 | aes/vpaes-mingw64-x86_64.S | ||
| 160 | aes/aesni-mingw64-x86_64.S | ||
| 161 | aes/aesni-sha1-mingw64-x86_64.S | ||
| 162 | #bn/modexp512-mingw64-x86_64.S | ||
| 163 | #bn/mont-mingw64-x86_64.S | ||
| 164 | #bn/mont5-mingw64-x86_64.S | ||
| 165 | #bn/gf2m-mingw64-x86_64.S | ||
| 166 | camellia/cmll-mingw64-x86_64.S | ||
| 167 | md5/md5-mingw64-x86_64.S | ||
| 168 | modes/ghash-mingw64-x86_64.S | ||
| 169 | rc4/rc4-mingw64-x86_64.S | ||
| 170 | rc4/rc4-md5-mingw64-x86_64.S | ||
| 171 | sha/sha1-mingw64-x86_64.S | ||
| 172 | sha/sha256-mingw64-x86_64.S | ||
| 173 | sha/sha512-mingw64-x86_64.S | ||
| 174 | whrlpool/wp-mingw64-x86_64.S | ||
| 175 | cpuid-mingw64-x86_64.S | ||
| 176 | ) | ||
| 177 | add_definitions(-DAES_ASM) | ||
| 178 | add_definitions(-DBSAES_ASM) | ||
| 179 | add_definitions(-DVPAES_ASM) | ||
| 180 | add_definitions(-DOPENSSL_IA32_SSE2) | ||
| 181 | #add_definitions(-DOPENSSL_BN_ASM_MONT) | ||
| 182 | #add_definitions(-DOPENSSL_BN_ASM_MONT5) | ||
| 183 | #add_definitions(-DOPENSSL_BN_ASM_GF2m) | ||
| 184 | add_definitions(-DMD5_ASM) | ||
| 185 | add_definitions(-DGHASH_ASM) | ||
| 186 | add_definitions(-DRSA_ASM) | ||
| 187 | add_definitions(-DSHA1_ASM) | ||
| 188 | add_definitions(-DSHA256_ASM) | ||
| 189 | add_definitions(-DSHA512_ASM) | ||
| 190 | add_definitions(-DWHIRLPOOL_ASM) | ||
| 191 | add_definitions(-DOPENSSL_CPUID_OBJ) | ||
| 192 | set(CRYPTO_SRC ${CRYPTO_SRC} ${ASM_X86_64_MINGW64_SRC}) | ||
| 193 | set_property(SOURCE ${ASM_X86_64_MINGW64_SRC} PROPERTY LANGUAGE C) | ||
| 194 | set_property(SOURCE ${ASM_X86_64_MINGW64_SRC} PROPERTY XCODE_EXPLICIT_FILE_TYPE "sourcecode.asm") | ||
| 195 | endif() | ||
| 196 | |||
| 197 | if((NOT HOST_ASM_ELF_X86_64) AND | ||
| 198 | (NOT HOST_ASM_MACOSX_X86_64) AND | ||
| 199 | (NOT HOST_ASM_MASM_X86_64) AND | ||
| 200 | (NOT HOST_ASM_MINGW64_X86_64) AND | ||
| 201 | (NOT HOST_ASM_ELF_ARMV4) | ||
| 202 | ) | ||
| 112 | set( | 203 | set( |
| 113 | CRYPTO_SRC | 204 | CRYPTO_SRC |
| 114 | ${CRYPTO_SRC} | 205 | ${CRYPTO_SRC} |
