Files
frameworks_base/libs/androidfw/Android.bp
Brandon Liu 742b11e05d Fix tests affected by sparse.apk
Regenerated sparse.apk with latest aapt2 and updated resource qualifier
to orientation from sdk version because config sdk version was fully
dropped in aapt2. Also added tests with runtime apk generated by Soong
build target to make these tests more comprehensive. Applied
parameterized test to avoid duplicate code.

Bug: b/249370927
Test: Added and verified affected atests pass
Change-Id: I94f6758d7862375fe4053f42fe89953d4afa48fd
2022-11-11 22:57:18 +00:00

267 lines
7.0 KiB
Plaintext

// Copyright (C) 2010 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// libandroidfw is partially built for the host (used by obbtool, aapt, and others)
package {
default_applicable_licenses: ["frameworks_base_libs_androidfw_license"],
}
// Added automatically by a large-scale-change
// See: http://go/android-license-faq
license {
name: "frameworks_base_libs_androidfw_license",
visibility: [":__subpackages__"],
license_kinds: [
"SPDX-license-identifier-Apache-2.0",
],
license_text: [
"NOTICE",
],
}
cc_defaults {
name: "libandroidfw_defaults",
cpp_std: "gnu++2b",
cflags: [
"-Werror",
"-Wunreachable-code",
],
target: {
windows: {
// The Windows compiler warns incorrectly for value initialization with {}.
cppflags: ["-Wno-missing-field-initializers"],
},
host: {
cflags: ["-DSTATIC_ANDROIDFW_FOR_TOOLS"],
},
},
}
cc_library {
name: "libandroidfw",
defaults: ["libandroidfw_defaults"],
host_supported: true,
srcs: [
"ApkAssets.cpp",
"Asset.cpp",
"AssetDir.cpp",
"AssetManager.cpp",
"AssetManager2.cpp",
"AssetsProvider.cpp",
"AttributeResolution.cpp",
"BigBuffer.cpp",
"ChunkIterator.cpp",
"ConfigDescription.cpp",
"Idmap.cpp",
"LoadedArsc.cpp",
"Locale.cpp",
"LocaleData.cpp",
"misc.cpp",
"ObbFile.cpp",
"PosixUtils.cpp",
"ResourceTimer.cpp",
"ResourceTypes.cpp",
"ResourceUtils.cpp",
"StreamingZipInflater.cpp",
"StringPool.cpp",
"TypeWrappers.cpp",
"Util.cpp",
"ZipFileRO.cpp",
"ZipUtils.cpp",
],
export_include_dirs: ["include"],
export_shared_lib_headers: ["libz"],
static_libs: ["libincfs-utils"],
whole_static_libs: ["libincfs-utils"],
export_static_lib_headers: ["libincfs-utils"],
target: {
android: {
srcs: [
"BackupData.cpp",
"BackupHelpers.cpp",
"CursorWindow.cpp",
],
shared_libs: [
"libbase",
"libbinder",
"liblog",
"libcutils",
"libincfs",
"libutils",
"libz",
],
static_libs: ["libziparchive_for_incfs"],
static: {
enabled: false,
},
},
host: {
shared: {
enabled: false,
},
static_libs: [
"libbase",
"libcutils",
"liblog",
"libutils",
"libziparchive",
],
shared_libs: [
"libz",
],
},
host_linux: {
srcs: [
"CursorWindow.cpp",
],
},
windows: {
enabled: true,
},
},
sanitize: {
blocklist: "libandroidfw_blocklist.txt",
},
}
common_test_libs = [
"libandroidfw",
"libbase",
"libcutils",
"libutils",
"libziparchive",
]
cc_test {
name: "libandroidfw_tests",
host_supported: true,
defaults: ["libandroidfw_defaults"],
cppflags: [
// This is to suppress warnings/errors from gtest
"-Wno-unnamed-type-template-args",
],
srcs: [
// Helpers/infra for testing.
"tests/CommonHelpers.cpp",
"tests/TestHelpers.cpp",
"tests/TestMain.cpp",
// Actual tests.
"tests/ApkAssets_test.cpp",
"tests/AppAsLib_test.cpp",
"tests/Asset_test.cpp",
"tests/AssetManager2_test.cpp",
"tests/AttributeFinder_test.cpp",
"tests/AttributeResolution_test.cpp",
"tests/BigBuffer_test.cpp",
"tests/ByteBucketArray_test.cpp",
"tests/Config_test.cpp",
"tests/ConfigDescription_test.cpp",
"tests/ConfigLocale_test.cpp",
"tests/DynamicRefTable_test.cpp",
"tests/Idmap_test.cpp",
"tests/LoadedArsc_test.cpp",
"tests/Locale_test.cpp",
"tests/ResourceTimer_test.cpp",
"tests/ResourceUtils_test.cpp",
"tests/ResTable_test.cpp",
"tests/Split_test.cpp",
"tests/StringPiece_test.cpp",
"tests/StringPool_test.cpp",
"tests/Theme_test.cpp",
"tests/TypeWrappers_test.cpp",
"tests/ZipUtils_test.cpp",
],
static_libs: ["libgmock"],
target: {
android: {
srcs: [
"tests/BackupData_test.cpp",
"tests/BackupHelpers_test.cpp",
"tests/CursorWindow_test.cpp",
"tests/ObbFile_test.cpp",
"tests/PosixUtils_test.cpp",
],
shared_libs: common_test_libs + [
"libbinder",
"liblog",
"libui",
],
},
host: {
static_libs: common_test_libs + [
"liblog",
"libz",
],
},
},
data: [
"tests/data/**/*.apk",
"tests/data/**/*.arsc",
"tests/data/**/*.idmap",
":FrameworkResourcesSparseTestApp",
":FrameworkResourcesNotSparseTestApp",
],
test_suites: ["device-tests"],
}
cc_benchmark {
name: "libandroidfw_benchmarks",
defaults: ["libandroidfw_defaults"],
srcs: [
// Helpers/infra for benchmarking.
"tests/BenchMain.cpp",
"tests/BenchmarkHelpers.cpp",
"tests/CommonHelpers.cpp",
// Actual benchmarks.
"tests/AssetManager2_bench.cpp",
"tests/AttributeResolution_bench.cpp",
"tests/CursorWindow_bench.cpp",
"tests/SparseEntry_bench.cpp",
"tests/Theme_bench.cpp",
],
shared_libs: common_test_libs,
data: ["tests/data/**/*.apk"],
}
cc_library {
name: "libandroidfw_fuzzer_lib",
defaults: ["libandroidfw_defaults"],
host_supported: true,
srcs: [
"CursorWindow.cpp",
],
export_include_dirs: ["include"],
target: {
android: {
shared_libs: common_test_libs + [
"libbinder",
"liblog",
],
},
host: {
static_libs: common_test_libs + [
"libbinder",
"liblog",
],
},
darwin: {
// libbinder is not supported on mac
enabled: false,
},
},
}