• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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/rsa/padding.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/chacha-armv8-linux64.S",
44                "pregenerated/ghash-neon-armv8-linux64.S",
45                "pregenerated/ghashv8-armx-linux64.S",
46                "pregenerated/sha256-armv8-linux64.S",
47                "pregenerated/sha512-armv8-linux64.S",
48                "pregenerated/vpaes-armv8-linux64.S",
49            ],
50        },
51        x86: {
52            srcs: [
53                "pregenerated/aesni-x86-elf.S",
54                "pregenerated/chacha-x86-elf.S",
55                "pregenerated/ghash-x86-elf.S",
56                "pregenerated/vpaes-x86-elf.S",
57                "pregenerated/x86-mont-elf.S",
58            ],
59        },
60        x86_64: {
61            srcs: [
62                "crypto/fipsmodule/ec/p256-x86_64.c",
63                "pregenerated/aesni-gcm-x86_64-elf.S",
64                "pregenerated/aesni-x86_64-elf.S",
65                "pregenerated/chacha-x86_64-elf.S",
66                "pregenerated/chacha20_poly1305_x86_64-elf.S",
67                "pregenerated/ghash-x86_64-elf.S",
68                "pregenerated/p256-x86_64-asm-elf.S",
69                "pregenerated/sha256-x86_64-elf.S",
70                "pregenerated/sha512-x86_64-elf.S",
71                "pregenerated/vpaes-x86_64-elf.S",
72                "pregenerated/x86_64-mont5-elf.S",
73                "pregenerated/x86_64-mont-elf.S",
74            ],
75        },
76        riscv64: {
77            cflags: ["-DOPENSSL_NO_ASM"],
78        },
79    },
80
81    cflags: [
82        "-O3",
83        "-Wno-error",
84        "-fPIC",
85        "-fdata-sections",
86        "-ffunction-sections",
87        "-fno-omit-frame-pointer",
88        "-fno-strict-aliasing",
89        "-fstack-protector",
90        "-fvisibility=hidden",
91        "-DNDEBUG",
92    ],
93    local_include_dirs: ["include"],
94    apex_available: [
95        "//apex_available:platform",
96        "com.android.resolv",
97    ],
98    vendor_available: true,
99    product_available: true,
100    min_sdk_version: "29",
101}
102
103cc_library_static {
104    name: "libring-test",
105    host_supported: true,
106    srcs: [
107        "crypto/constant_time_test.c",
108    ],
109    local_include_dirs: ["include"],
110    apex_available: [
111        "//apex_available:platform",
112        "com.android.resolv",
113    ],
114    vendor_available: true,
115    product_available: true,
116    min_sdk_version: "29",
117}
118