diff options
-rw-r--r-- | CMakeLists.txt | 3 | ||||
-rwxr-xr-x | update.sh | 23 |
2 files changed, 11 insertions, 15 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index a0b0599..9537407 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt | |||
@@ -290,9 +290,6 @@ if(ENABLE_ASM) | |||
290 | elseif(APPLE AND "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") | 290 | elseif(APPLE AND "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") |
291 | set(HOST_ASM_MACOSX_X86_64 true) | 291 | set(HOST_ASM_MACOSX_X86_64 true) |
292 | elseif(MSVC AND "${CMAKE_GENERATOR}" MATCHES "Win64") | 292 | elseif(MSVC AND "${CMAKE_GENERATOR}" MATCHES "Win64") |
293 | # XXX Disabled for now, CMake's MASM support seems to either never | ||
294 | # build supply ASM or build it with the C compiler in a mode where it | ||
295 | # does not parse correctly. It might be easier to get NASM support working. | ||
296 | set(HOST_ASM_MASM_X86_64 true) | 293 | set(HOST_ASM_MASM_X86_64 true) |
297 | ENABLE_LANGUAGE(ASM_MASM) | 294 | ENABLE_LANGUAGE(ASM_MASM) |
298 | elseif(CMAKE_SYSTEM_NAME MATCHES "MINGW" AND "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") | 295 | elseif(CMAKE_SYSTEM_NAME MATCHES "MINGW" AND "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") |
@@ -158,6 +158,15 @@ $CP crypto/compat/ui_openssl_win.c crypto/ui | |||
158 | # add the libcrypto symbol export list | 158 | # add the libcrypto symbol export list |
159 | $GREP -v OPENSSL_ia32cap_P $libcrypto_src/Symbols.list | $GREP '^[A-Za-z0-9_]' > crypto/crypto.sym | 159 | $GREP -v OPENSSL_ia32cap_P $libcrypto_src/Symbols.list | $GREP '^[A-Za-z0-9_]' > crypto/crypto.sym |
160 | 160 | ||
161 | fixup_masm() { | ||
162 | cpp -I./crypto $1 \ | ||
163 | | sed -e 's/^#/;/' \ | ||
164 | | sed -e 's/|/OR/g' \ | ||
165 | | sed -e 's/~/NOT/g' \ | ||
166 | | sed -e 's/1 << \([0-9]*\)/1 SHL \1/g' \ | ||
167 | > $2 | ||
168 | } | ||
169 | |||
161 | # generate assembly crypto algorithms | 170 | # generate assembly crypto algorithms |
162 | asm_src=$libcrypto_src | 171 | asm_src=$libcrypto_src |
163 | gen_asm_stdout() { | 172 | gen_asm_stdout() { |
@@ -168,12 +177,7 @@ gen_asm_stdout() { | |||
168 | #endif | 177 | #endif |
169 | EOF | 178 | EOF |
170 | if [ $1 = "masm" ]; then | 179 | if [ $1 = "masm" ]; then |
171 | cpp -I./crypto $3.tmp \ | 180 | fixup_masm $3.tmp $3 |
172 | | sed -e 's/^#/;/' \ | ||
173 | | sed -e 's/|/OR/g' \ | ||
174 | | sed -e 's/~/NOT/g' \ | ||
175 | | sed -e 's/1 << \([0-9]*\)/1 SHL \1/g' \ | ||
176 | > $3 | ||
177 | else | 181 | else |
178 | $MV $3.tmp $3 | 182 | $MV $3.tmp $3 |
179 | fi | 183 | fi |
@@ -186,12 +190,7 @@ gen_asm() { | |||
186 | #endif | 190 | #endif |
187 | EOF | 191 | EOF |
188 | if [ $1 = "masm" ]; then | 192 | if [ $1 = "masm" ]; then |
189 | cpp -I./crypto $3.tmp \ | 193 | fixup_masm $3.tmp $3 |
190 | | sed -e 's/^#/;/' \ | ||
191 | | sed -e 's/|/OR/g' \ | ||
192 | | sed -e 's/~/NOT/g' \ | ||
193 | | sed -e 's/1 << \([0-9]*\)/1 SHL \1/g' \ | ||
194 | > $3 | ||
195 | else | 194 | else |
196 | $MV $3.tmp $3 | 195 | $MV $3.tmp $3 |
197 | fi | 196 | fi |