// 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", "ConfigDescription.cpp", "Idmap.cpp", "LoadedArsc.cpp", "Locale.cpp", "LocaleData.cpp", "misc.cpp", "ObbFile.cpp", "PosixUtils.cpp", "ResourceTypes.cpp", "ResourceUtils.cpp", "StreamingZipInflater.cpp", "TypeWrappers.cpp", "Util.cpp", "ZipFileRO.cpp", "ZipUtils.cpp", ], export_include_dirs: ["include"], export_shared_lib_headers: ["libz"], 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/ConfigDescription_test.cpp", "tests/ConfigLocale_test.cpp", "tests/DynamicRefTable_test.cpp", "tests/Idmap_test.cpp", "tests/LoadedArsc_test.cpp", "tests/Locale_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", ], static_libs: ["libgmock"], target: { android: { srcs: [ "tests/BackupData_test.cpp", "tests/ObbFile_test.cpp", "tests/PosixUtils_test.cpp", ], shared_libs: common_test_libs + ["libui"], }, host: { static_libs: common_test_libs + ["liblog", "libz"], }, }, data: ["tests/data/**/*.apk"], 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/SparseEntry_bench.cpp", "tests/Theme_bench.cpp", ], shared_libs: common_test_libs, data: ["tests/data/**/*.apk"], }