1*8b6cd535SAndroid Build Coastguard Worker// Copyright (C) 2019 The Android Open Source Project 2*8b6cd535SAndroid Build Coastguard Worker// 3*8b6cd535SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*8b6cd535SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*8b6cd535SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*8b6cd535SAndroid Build Coastguard Worker// 7*8b6cd535SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*8b6cd535SAndroid Build Coastguard Worker// 9*8b6cd535SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*8b6cd535SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*8b6cd535SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*8b6cd535SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*8b6cd535SAndroid Build Coastguard Worker// limitations under the License. 14*8b6cd535SAndroid Build Coastguard Worker 15*8b6cd535SAndroid Build Coastguard Workerpackage { 16*8b6cd535SAndroid Build Coastguard Worker default_applicable_licenses: ["external_icing_license"], 17*8b6cd535SAndroid Build Coastguard Worker} 18*8b6cd535SAndroid Build Coastguard Worker 19*8b6cd535SAndroid Build Coastguard Worker// Added automatically by a large-scale-change 20*8b6cd535SAndroid Build Coastguard Worker// See: http://go/android-license-faq 21*8b6cd535SAndroid Build Coastguard Workerlicense { 22*8b6cd535SAndroid Build Coastguard Worker name: "external_icing_license", 23*8b6cd535SAndroid Build Coastguard Worker visibility: [":__subpackages__"], 24*8b6cd535SAndroid Build Coastguard Worker license_kinds: [ 25*8b6cd535SAndroid Build Coastguard Worker "SPDX-license-identifier-Apache-2.0", 26*8b6cd535SAndroid Build Coastguard Worker ], 27*8b6cd535SAndroid Build Coastguard Worker license_text: [ 28*8b6cd535SAndroid Build Coastguard Worker "LICENSE", 29*8b6cd535SAndroid Build Coastguard Worker ], 30*8b6cd535SAndroid Build Coastguard Worker} 31*8b6cd535SAndroid Build Coastguard Worker 32*8b6cd535SAndroid Build Coastguard Workercc_defaults { 33*8b6cd535SAndroid Build Coastguard Worker name: "libicing_defaults", 34*8b6cd535SAndroid Build Coastguard Worker 35*8b6cd535SAndroid Build Coastguard Worker // For debug / treemap purposes. 36*8b6cd535SAndroid Build Coastguard Worker //strip: { 37*8b6cd535SAndroid Build Coastguard Worker // keep_symbols: true, 38*8b6cd535SAndroid Build Coastguard Worker //}, 39*8b6cd535SAndroid Build Coastguard Worker 40*8b6cd535SAndroid Build Coastguard Worker cflags: [ 41*8b6cd535SAndroid Build Coastguard Worker "-Wall", 42*8b6cd535SAndroid Build Coastguard Worker "-Werror", 43*8b6cd535SAndroid Build Coastguard Worker "-Wextra", 44*8b6cd535SAndroid Build Coastguard Worker "-Wno-deprecated-declarations", 45*8b6cd535SAndroid Build Coastguard Worker "-Wno-ignored-qualifiers", 46*8b6cd535SAndroid Build Coastguard Worker "-Wno-missing-field-initializers", 47*8b6cd535SAndroid Build Coastguard Worker "-Wno-sign-compare", 48*8b6cd535SAndroid Build Coastguard Worker "-Wno-tautological-constant-out-of-range-compare", 49*8b6cd535SAndroid Build Coastguard Worker "-Wno-undefined-var-template", 50*8b6cd535SAndroid Build Coastguard Worker "-Wno-unused-function", 51*8b6cd535SAndroid Build Coastguard Worker "-Wno-unused-parameter", 52*8b6cd535SAndroid Build Coastguard Worker "-Wno-unused-private-field", 53*8b6cd535SAndroid Build Coastguard Worker "-Wno-extern-c-compat", 54*8b6cd535SAndroid Build Coastguard Worker 55*8b6cd535SAndroid Build Coastguard Worker "-funsigned-char", 56*8b6cd535SAndroid Build Coastguard Worker "-fvisibility=hidden", 57*8b6cd535SAndroid Build Coastguard Worker 58*8b6cd535SAndroid Build Coastguard Worker "-Bsymbolic", 59*8b6cd535SAndroid Build Coastguard Worker ], 60*8b6cd535SAndroid Build Coastguard Worker apex_available: ["com.android.appsearch"], 61*8b6cd535SAndroid Build Coastguard Worker} 62*8b6cd535SAndroid Build Coastguard Worker 63*8b6cd535SAndroid Build Coastguard Worker// TODO(b/193244409): Use the filegroup libicing_test_common along with 64*8b6cd535SAndroid Build Coastguard Worker// libicing_defaults to build libicing. 65*8b6cd535SAndroid Build Coastguard Workercc_library_shared { 66*8b6cd535SAndroid Build Coastguard Worker name: "libicing", 67*8b6cd535SAndroid Build Coastguard Worker defaults: ["libicing_defaults"], 68*8b6cd535SAndroid Build Coastguard Worker srcs: [ 69*8b6cd535SAndroid Build Coastguard Worker "icing/**/*.cc", 70*8b6cd535SAndroid Build Coastguard Worker ], 71*8b6cd535SAndroid Build Coastguard Worker exclude_srcs: [ 72*8b6cd535SAndroid Build Coastguard Worker "icing/**/*-test-*", 73*8b6cd535SAndroid Build Coastguard Worker "icing/**/*-test.*", 74*8b6cd535SAndroid Build Coastguard Worker "icing/**/*_test.cc", 75*8b6cd535SAndroid Build Coastguard Worker "icing/**/*_benchmark.cc", 76*8b6cd535SAndroid Build Coastguard Worker "icing/testing/**/*", 77*8b6cd535SAndroid Build Coastguard Worker "icing/tokenization/reverse_jni/**/*", 78*8b6cd535SAndroid Build Coastguard Worker "icing/tokenization/simple/**/*", 79*8b6cd535SAndroid Build Coastguard Worker "icing/tools/**/*", 80*8b6cd535SAndroid Build Coastguard Worker "icing/transform/map/**/*", 81*8b6cd535SAndroid Build Coastguard Worker "icing/transform/simple/**/*", 82*8b6cd535SAndroid Build Coastguard Worker ], 83*8b6cd535SAndroid Build Coastguard Worker header_libs: ["jni_headers"], 84*8b6cd535SAndroid Build Coastguard Worker static_libs: [ 85*8b6cd535SAndroid Build Coastguard Worker "icing-c-proto", 86*8b6cd535SAndroid Build Coastguard Worker "libutf", 87*8b6cd535SAndroid Build Coastguard Worker ], 88*8b6cd535SAndroid Build Coastguard Worker shared_libs: [ 89*8b6cd535SAndroid Build Coastguard Worker "libicu", 90*8b6cd535SAndroid Build Coastguard Worker "liblog", 91*8b6cd535SAndroid Build Coastguard Worker "libprotobuf-cpp-lite", 92*8b6cd535SAndroid Build Coastguard Worker "libz", 93*8b6cd535SAndroid Build Coastguard Worker ], 94*8b6cd535SAndroid Build Coastguard Worker version_script: "icing/jni.lds", 95*8b6cd535SAndroid Build Coastguard Worker min_sdk_version: "Tiramisu", 96*8b6cd535SAndroid Build Coastguard Worker} 97*8b6cd535SAndroid Build Coastguard Worker 98*8b6cd535SAndroid Build Coastguard Workerfilegroup { 99*8b6cd535SAndroid Build Coastguard Worker name: "libicing_test_common", 100*8b6cd535SAndroid Build Coastguard Worker // TODO(b/193244409): Utilize globs once all build errors are fixed. 101*8b6cd535SAndroid Build Coastguard Worker srcs: [ 102*8b6cd535SAndroid Build Coastguard Worker "icing/absl_ports/*.cc", 103*8b6cd535SAndroid Build Coastguard Worker "icing/file/**/*.cc", 104*8b6cd535SAndroid Build Coastguard Worker "icing/index/**/*.cc", 105*8b6cd535SAndroid Build Coastguard Worker "icing/legacy/**/*.cc", 106*8b6cd535SAndroid Build Coastguard Worker "icing/portable/*.cc", 107*8b6cd535SAndroid Build Coastguard Worker "icing/query/**/*.cc", 108*8b6cd535SAndroid Build Coastguard Worker "icing/schema/*.cc", 109*8b6cd535SAndroid Build Coastguard Worker "icing/scoring/**/*.cc", 110*8b6cd535SAndroid Build Coastguard Worker "icing/store/*.cc", 111*8b6cd535SAndroid Build Coastguard Worker "icing/testing/*.cc", 112*8b6cd535SAndroid Build Coastguard Worker "icing/text_classifier/lib3/utils/base/*.cc", 113*8b6cd535SAndroid Build Coastguard Worker "icing/text_classifier/lib3/utils/hash/*.cc", 114*8b6cd535SAndroid Build Coastguard Worker "icing/tokenization/*.cc", 115*8b6cd535SAndroid Build Coastguard Worker "icing/util/*.cc", 116*8b6cd535SAndroid Build Coastguard Worker ], 117*8b6cd535SAndroid Build Coastguard Worker // TODO(b/193244409): Remove after all the excluded tests are passing. 118*8b6cd535SAndroid Build Coastguard Worker exclude_srcs: [ 119*8b6cd535SAndroid Build Coastguard Worker "icing/**/*_benchmark.cc", 120*8b6cd535SAndroid Build Coastguard Worker "icing/**/*-jni-layer.cc", 121*8b6cd535SAndroid Build Coastguard Worker "icing/index/**/*_test.cc", 122*8b6cd535SAndroid Build Coastguard Worker "icing/legacy/**/*_test.cc", 123*8b6cd535SAndroid Build Coastguard Worker "icing/query/**/*_test.cc", 124*8b6cd535SAndroid Build Coastguard Worker "icing/scoring/**/*_test.cc", 125*8b6cd535SAndroid Build Coastguard Worker "icing/store/*_test.cc", 126*8b6cd535SAndroid Build Coastguard Worker "icing/testing/*test.cc", 127*8b6cd535SAndroid Build Coastguard Worker "icing/testing/*test-data.cc", 128*8b6cd535SAndroid Build Coastguard Worker "icing/tokenization/*_test.cc", 129*8b6cd535SAndroid Build Coastguard Worker "icing/util/*_test.cc", 130*8b6cd535SAndroid Build Coastguard Worker ], 131*8b6cd535SAndroid Build Coastguard Worker} 132*8b6cd535SAndroid Build Coastguard Worker 133*8b6cd535SAndroid Build Coastguard Workercc_test { 134*8b6cd535SAndroid Build Coastguard Worker name: "libicing_tests", 135*8b6cd535SAndroid Build Coastguard Worker defaults: ["libicing_defaults"], 136*8b6cd535SAndroid Build Coastguard Worker test_suites: ["device_tests"], 137*8b6cd535SAndroid Build Coastguard Worker // TODO(b/193244409): Implement globs for additional tests. 138*8b6cd535SAndroid Build Coastguard Worker srcs: [ 139*8b6cd535SAndroid Build Coastguard Worker ":libicing_test_common", 140*8b6cd535SAndroid Build Coastguard Worker ], 141*8b6cd535SAndroid Build Coastguard Worker static_libs: [ 142*8b6cd535SAndroid Build Coastguard Worker "icing-c-proto", 143*8b6cd535SAndroid Build Coastguard Worker "libgmock", 144*8b6cd535SAndroid Build Coastguard Worker "libgoogle-benchmark", 145*8b6cd535SAndroid Build Coastguard Worker "libgtest", 146*8b6cd535SAndroid Build Coastguard Worker ], 147*8b6cd535SAndroid Build Coastguard Worker shared_libs: [ 148*8b6cd535SAndroid Build Coastguard Worker "libicu", 149*8b6cd535SAndroid Build Coastguard Worker "libicu_cts_stub", 150*8b6cd535SAndroid Build Coastguard Worker "liblog", 151*8b6cd535SAndroid Build Coastguard Worker "libprotobuf-cpp-lite", 152*8b6cd535SAndroid Build Coastguard Worker "libz", 153*8b6cd535SAndroid Build Coastguard Worker ], 154*8b6cd535SAndroid Build Coastguard Worker} 155*8b6cd535SAndroid Build Coastguard Worker 156*8b6cd535SAndroid Build Coastguard Worker// TODO(cassiewang): Add build rules and a TEST_MAPPING for cc_tests 157