|
| 1 | +add_library(j-openssl-sha OBJECT) |
| 2 | +target_sources(j-openssl-sha PRIVATE |
| 3 | + md32_common.h |
| 4 | + md4.h |
| 5 | + md4_locl.h |
| 6 | + md5.h |
| 7 | + md5_locl.h |
| 8 | + openssl.h |
| 9 | + sha.h |
| 10 | + sha3.h |
| 11 | + sha_locl.h |
| 12 | + keccak1600.c |
| 13 | + md4_dgst.c |
| 14 | + md4_one.c |
| 15 | + md5_dgst.c |
| 16 | + md5_one.c |
| 17 | + openssl-util.c |
| 18 | + sha1_one.c |
| 19 | + sha256.c |
| 20 | + sha3.c |
| 21 | + sha512.c |
| 22 | +) |
| 23 | + |
| 24 | +if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^(aarch64|arm)") |
| 25 | + target_sources(j-openssl-sha PRIVATE |
| 26 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/keccak1600-armv8-elf.S> |
| 27 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/sha1-armv8-elf.S> |
| 28 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/sha256-armv8-elf.S> |
| 29 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/sha512-armv8-elf.S> |
| 30 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/keccak1600-armv4-elf.S> |
| 31 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/sha1-armv4-elf.S> |
| 32 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/sha256-armv4-elf.S> |
| 33 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/sha512-armv4-elf.S> |
| 34 | + ) |
| 35 | +elseif(${CMAKE_SYSTEM_NAME} MATCHES "Windows") |
| 36 | + target_sources(j PRIVATE |
| 37 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:../openssl-asm/keccak1600-x86_64-nasm.o> |
| 38 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:../openssl-asm/sha1-x86_64-nasm.o> |
| 39 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:../openssl-asm/sha256-x86_64-nasm.o> |
| 40 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:../openssl-asm/sha512-x86_64-nasm.o> |
| 41 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:../openssl-asm/keccak1600-mmx-nasm.o> |
| 42 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:../openssl-asm/sha1-586-nasm.o> |
| 43 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:../openssl-asm/sha256-586-nasm.o> |
| 44 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:../openssl-asm/sha512-586-nasm.o> |
| 45 | + ) |
| 46 | +elseif(${CMAKE_SYSTEM_NAME} MATCHES "Linux") |
| 47 | + target_sources(j-openssl-sha PRIVATE |
| 48 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/keccak1600-x86_64-elf.S> |
| 49 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/sha1-x86_64-elf.S> |
| 50 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/sha256-x86_64-elf.S> |
| 51 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/sha512-x86_64-elf.S> |
| 52 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/keccak1600-mmx-elf.S> |
| 53 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/sha1-586-elf.S> |
| 54 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/sha256-586-elf.S> |
| 55 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/sha512-586-elf.S> |
| 56 | + ) |
| 57 | +elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") |
| 58 | + target_sources(j-openssl-sha PRIVATE |
| 59 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/keccak1600-x86_64-macho.S> |
| 60 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/sha1-x86_64-macho.S> |
| 61 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/sha256-x86_64-macho.S> |
| 62 | + $<$<EQUAL:8,${CMAKE_SIZEOF_VOID_P}>:asm/sha512-x86_64-macho.S> |
| 63 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/keccak1600-mmx-macho.S> |
| 64 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/sha1-586-macho.S> |
| 65 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/sha256-586-macho.S> |
| 66 | + $<$<EQUAL:4,${CMAKE_SIZEOF_VOID_P}>:asm/sha512-586-macho.S> |
| 67 | + ) |
| 68 | +endif() |
0 commit comments