xref: /aosp_15_r20/external/ruy/Android.bp (revision bb86c7ed5fb1b98a7eac808e443a46cc8b90dfc0)
1*bb86c7edSAndroid Build Coastguard Worker// Copyright (C) 2021 The Android Open Source Project
2*bb86c7edSAndroid Build Coastguard Worker//
3*bb86c7edSAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*bb86c7edSAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*bb86c7edSAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*bb86c7edSAndroid Build Coastguard Worker//
7*bb86c7edSAndroid Build Coastguard Worker//      http://www.apache.org/licenses/LICENSE-2.0
8*bb86c7edSAndroid Build Coastguard Worker//
9*bb86c7edSAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*bb86c7edSAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*bb86c7edSAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*bb86c7edSAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*bb86c7edSAndroid Build Coastguard Worker// limitations under the License.
14*bb86c7edSAndroid Build Coastguard Worker
15*bb86c7edSAndroid Build Coastguard Workerpackage {
16*bb86c7edSAndroid Build Coastguard Worker    default_applicable_licenses: ["external_ruy_license"],
17*bb86c7edSAndroid Build Coastguard Worker}
18*bb86c7edSAndroid Build Coastguard Worker
19*bb86c7edSAndroid Build Coastguard Worker// Added automatically by a large-scale-change
20*bb86c7edSAndroid Build Coastguard Worker// See: http://go/android-license-faq
21*bb86c7edSAndroid Build Coastguard Workerlicense {
22*bb86c7edSAndroid Build Coastguard Worker    name: "external_ruy_license",
23*bb86c7edSAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
24*bb86c7edSAndroid Build Coastguard Worker    license_kinds: [
25*bb86c7edSAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
26*bb86c7edSAndroid Build Coastguard Worker    ],
27*bb86c7edSAndroid Build Coastguard Worker    license_text: [
28*bb86c7edSAndroid Build Coastguard Worker        "LICENSE",
29*bb86c7edSAndroid Build Coastguard Worker    ],
30*bb86c7edSAndroid Build Coastguard Worker}
31*bb86c7edSAndroid Build Coastguard Worker
32*bb86c7edSAndroid Build Coastguard Workercc_library_headers {
33*bb86c7edSAndroid Build Coastguard Worker    name: "libruy_headers",
34*bb86c7edSAndroid Build Coastguard Worker    export_include_dirs: ["."],
35*bb86c7edSAndroid Build Coastguard Worker    host_supported: true,
36*bb86c7edSAndroid Build Coastguard Worker    vendor_available: true,
37*bb86c7edSAndroid Build Coastguard Worker    sdk_version: "current",
38*bb86c7edSAndroid Build Coastguard Worker}
39*bb86c7edSAndroid Build Coastguard Worker
40*bb86c7edSAndroid Build Coastguard Workercc_defaults {
41*bb86c7edSAndroid Build Coastguard Worker    name: "libruy_defaults",
42*bb86c7edSAndroid Build Coastguard Worker    host_supported: true,
43*bb86c7edSAndroid Build Coastguard Worker    vendor_available: true,
44*bb86c7edSAndroid Build Coastguard Worker    srcs: [
45*bb86c7edSAndroid Build Coastguard Worker        "ruy/allocator.cc",
46*bb86c7edSAndroid Build Coastguard Worker        "ruy/apply_multiplier.cc",
47*bb86c7edSAndroid Build Coastguard Worker        "ruy/block_map.cc",
48*bb86c7edSAndroid Build Coastguard Worker        "ruy/blocking_counter.cc",
49*bb86c7edSAndroid Build Coastguard Worker        "ruy/context.cc",
50*bb86c7edSAndroid Build Coastguard Worker        "ruy/context_get_ctx.cc",
51*bb86c7edSAndroid Build Coastguard Worker        "ruy/cpuinfo.cc",
52*bb86c7edSAndroid Build Coastguard Worker        "ruy/ctx.cc",
53*bb86c7edSAndroid Build Coastguard Worker        "ruy/denormal.cc",
54*bb86c7edSAndroid Build Coastguard Worker        "ruy/frontend.cc",
55*bb86c7edSAndroid Build Coastguard Worker        "ruy/have_built_path_for_avx.cc",
56*bb86c7edSAndroid Build Coastguard Worker        "ruy/have_built_path_for_avx2_fma.cc",
57*bb86c7edSAndroid Build Coastguard Worker        "ruy/have_built_path_for_avx512.cc",
58*bb86c7edSAndroid Build Coastguard Worker        "ruy/kernel_arm32.cc",
59*bb86c7edSAndroid Build Coastguard Worker        "ruy/kernel_arm64.cc",
60*bb86c7edSAndroid Build Coastguard Worker        "ruy/kernel_avx.cc",
61*bb86c7edSAndroid Build Coastguard Worker        "ruy/kernel_avx2_fma.cc",
62*bb86c7edSAndroid Build Coastguard Worker        "ruy/kernel_avx512.cc",
63*bb86c7edSAndroid Build Coastguard Worker        "ruy/pack_arm.cc",
64*bb86c7edSAndroid Build Coastguard Worker        "ruy/pack_avx.cc",
65*bb86c7edSAndroid Build Coastguard Worker        "ruy/pack_avx2_fma.cc",
66*bb86c7edSAndroid Build Coastguard Worker        "ruy/pack_avx512.cc",
67*bb86c7edSAndroid Build Coastguard Worker        "ruy/prepacked_cache.cc",
68*bb86c7edSAndroid Build Coastguard Worker        "ruy/prepare_packed_matrices.cc",
69*bb86c7edSAndroid Build Coastguard Worker        "ruy/system_aligned_alloc.cc",
70*bb86c7edSAndroid Build Coastguard Worker        "ruy/thread_pool.cc",
71*bb86c7edSAndroid Build Coastguard Worker        "ruy/trmul.cc",
72*bb86c7edSAndroid Build Coastguard Worker        "ruy/tune.cc",
73*bb86c7edSAndroid Build Coastguard Worker        "ruy/wait.cc",
74*bb86c7edSAndroid Build Coastguard Worker    ],
75*bb86c7edSAndroid Build Coastguard Worker    cflags: [
76*bb86c7edSAndroid Build Coastguard Worker        "-Wno-inline-asm",
77*bb86c7edSAndroid Build Coastguard Worker    ],
78*bb86c7edSAndroid Build Coastguard Worker    export_include_dirs: ["."],
79*bb86c7edSAndroid Build Coastguard Worker}
80*bb86c7edSAndroid Build Coastguard Worker
81*bb86c7edSAndroid Build Coastguard Workercc_library_shared {
82*bb86c7edSAndroid Build Coastguard Worker    name: "libruy",
83*bb86c7edSAndroid Build Coastguard Worker    defaults: ["libruy_defaults"],
84*bb86c7edSAndroid Build Coastguard Worker    double_loadable: true,
85*bb86c7edSAndroid Build Coastguard Worker}
86*bb86c7edSAndroid Build Coastguard Worker
87*bb86c7edSAndroid Build Coastguard Workercc_library_static {
88*bb86c7edSAndroid Build Coastguard Worker    name: "libruy_static",
89*bb86c7edSAndroid Build Coastguard Worker    defaults: ["libruy_defaults"],
90*bb86c7edSAndroid Build Coastguard Worker    sdk_version: "current",
91*bb86c7edSAndroid Build Coastguard Worker    stl: "libc++_static",
92*bb86c7edSAndroid Build Coastguard Worker    apex_available: [
93*bb86c7edSAndroid Build Coastguard Worker        "//apex_available:platform",
94*bb86c7edSAndroid Build Coastguard Worker        "com.android.extservices",
95*bb86c7edSAndroid Build Coastguard Worker        "com.android.neuralnetworks",
96*bb86c7edSAndroid Build Coastguard Worker        "com.android.adservices",
97*bb86c7edSAndroid Build Coastguard Worker        "com.android.ondevicepersonalization",
98*bb86c7edSAndroid Build Coastguard Worker    ],
99*bb86c7edSAndroid Build Coastguard Worker    min_sdk_version: "30",
100*bb86c7edSAndroid Build Coastguard Worker}
101