1cc_library_static { 2 name: "libring-core", 3 host_supported: true, 4 srcs: [ 5 "crypto/cpu_intel.c", 6 "crypto/fipsmodule/aes/aes_nohw.c", 7 "crypto/crypto.c", 8 "crypto/poly1305/poly1305.c", 9 "crypto/poly1305/poly1305_vec.c", 10 "crypto/curve25519/curve25519.c", 11 "crypto/fipsmodule/ec/ecp_nistz.c", 12 "crypto/fipsmodule/ec/gfp_p256.c", 13 "crypto/fipsmodule/ec/gfp_p384.c", 14 "crypto/fipsmodule/ec/p256.c", 15 "crypto/fipsmodule/ec/p256-nistz.c", 16 "crypto/limbs/limbs.c", 17 "crypto/mem.c", 18 "crypto/fipsmodule/bn/montgomery.c", 19 "crypto/fipsmodule/bn/montgomery_inv.c", 20 ], 21 22 arch: { 23 arm: { 24 srcs: [ 25 "crypto/poly1305/poly1305_arm.c", 26 "crypto/poly1305/poly1305_arm_asm.S", 27 "pregenerated/armv4-mont-linux32.S", 28 "crypto/curve25519/asm/x25519-asm-arm.S", 29 "pregenerated/sha256-armv4-linux32.S", 30 "pregenerated/sha512-armv4-linux32.S", 31 "pregenerated/aesv8-armx-linux32.S", 32 "pregenerated/bsaes-armv7-linux32.S", 33 "pregenerated/ghashv8-armx-linux32.S", 34 "pregenerated/vpaes-armv7-linux32.S", 35 "pregenerated/ghash-armv4-linux32.S", 36 "pregenerated/chacha-armv4-linux32.S", 37 ], 38 }, 39 arm64: { 40 srcs: [ 41 "pregenerated/aesv8-armx-linux64.S", 42 "pregenerated/armv8-mont-linux64.S", 43 "pregenerated/chacha20_poly1305_armv8-linux64.S", 44 "pregenerated/chacha-armv8-linux64.S", 45 "pregenerated/ghash-neon-armv8-linux64.S", 46 "pregenerated/ghashv8-armx-linux64.S", 47 "pregenerated/p256-armv8-asm-linux64.S", 48 "pregenerated/sha256-armv8-linux64.S", 49 "pregenerated/sha512-armv8-linux64.S", 50 "pregenerated/vpaes-armv8-linux64.S", 51 ], 52 }, 53 x86: { 54 srcs: [ 55 "pregenerated/aesni-x86-elf.S", 56 "pregenerated/chacha-x86-elf.S", 57 "pregenerated/ghash-x86-elf.S", 58 "pregenerated/vpaes-x86-elf.S", 59 "pregenerated/x86-mont-elf.S", 60 ], 61 }, 62 x86_64: { 63 srcs: [ 64 "crypto/curve25519/curve25519_64_adx.c", 65 "pregenerated/aesni-gcm-x86_64-elf.S", 66 "pregenerated/aesni-x86_64-elf.S", 67 "pregenerated/chacha-x86_64-elf.S", 68 "pregenerated/chacha20_poly1305_x86_64-elf.S", 69 "pregenerated/ghash-x86_64-elf.S", 70 "pregenerated/p256-x86_64-asm-elf.S", 71 "pregenerated/sha256-x86_64-elf.S", 72 "pregenerated/sha512-x86_64-elf.S", 73 "pregenerated/vpaes-x86_64-elf.S", 74 "pregenerated/x86_64-mont5-elf.S", 75 "pregenerated/x86_64-mont-elf.S", 76 "third_party/fiat/asm/fiat_curve25519_adx_mul.S", 77 "third_party/fiat/asm/fiat_curve25519_adx_square.S", 78 ], 79 }, 80 riscv64: { 81 cflags: ["-DOPENSSL_NO_ASM"], 82 }, 83 }, 84 85 cflags: [ 86 "-O3", 87 "-Wno-error", 88 "-fPIC", 89 "-fdata-sections", 90 "-ffunction-sections", 91 "-fno-omit-frame-pointer", 92 "-fno-strict-aliasing", 93 "-fstack-protector", 94 "-fvisibility=hidden", 95 "-DNDEBUG", 96 ], 97 local_include_dirs: ["include"], 98 apex_available: [ 99 "//apex_available:platform", 100 "com.android.resolv", 101 ], 102 vendor_available: true, 103 product_available: true, 104 min_sdk_version: "29", 105} 106 107cc_library_static { 108 name: "libring-test", 109 host_supported: true, 110 srcs: [ 111 "crypto/constant_time_test.c", 112 ], 113 local_include_dirs: ["include"], 114 apex_available: [ 115 "//apex_available:platform", 116 "com.android.resolv", 117 ], 118 vendor_available: true, 119 product_available: true, 120 min_sdk_version: "29", 121} 122