blob: 251b2e773cfb3074031af4d4bd7008de1518807a [file] [log] [blame]
// 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)
cc_defaults {
name: "libandroidfw_defaults",
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",
"AttributeResolution.cpp",
"ChunkIterator.cpp",
"Idmap.cpp",
"LoadedArsc.cpp",
"LocaleData.cpp",
"misc.cpp",
"ObbFile.cpp",
"ResourceTypes.cpp",
"ResourceUtils.cpp",
"StreamingZipInflater.cpp",
"TypeWrappers.cpp",
"Util.cpp",
"ZipFileRO.cpp",
"ZipUtils.cpp",
],
export_include_dirs: ["include"],
target: {
android: {
srcs: [
"BackupData.cpp",
"BackupHelpers.cpp",
"CursorWindow.cpp",
"DisplayEventDispatcher.cpp",
],
shared_libs: [
"libziparchive",
"libbase",
"libbinder",
"liblog",
"libcutils",
"libgui",
"libutils",
"libz",
],
static: {
enabled: false,
},
},
host: {
shared: {
enabled: false,
},
static_libs: [
"libziparchive",
"libbase",
"liblog",
"libcutils",
"libutils",
],
shared_libs: [
"libz",
],
},
windows: {
enabled: true,
},
},
sanitize: {
blacklist: "libandroidfw_blacklist.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/ByteBucketArray_test.cpp",
"tests/Config_test.cpp",
"tests/ConfigLocale_test.cpp",
"tests/Idmap_test.cpp",
"tests/LoadedArsc_test.cpp",
"tests/ResourceUtils_test.cpp",
"tests/ResTable_test.cpp",
"tests/Split_test.cpp",
"tests/StringPiece_test.cpp",
"tests/Theme_test.cpp",
"tests/TypeWrappers_test.cpp",
"tests/ZipUtils_test.cpp",
],
target: {
android: {
srcs: [
"tests/BackupData_test.cpp",
"tests/ObbFile_test.cpp",
],
shared_libs: common_test_libs + ["libui"],
},
host: {
static_libs: common_test_libs + ["liblog", "libz"],
},
},
data: ["tests/data/**/*.apk"],
}
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/SparseEntry_bench.cpp",
"tests/Theme_bench.cpp",
],
shared_libs: common_test_libs,
data: ["tests/data/**/*.apk"],
}