AAPT2: Convert Android.mk to Android.bp
Change-Id: I6c563993b57e3f04165ca57743f9a2878aba556c
This commit is contained in:
@@ -14,6 +14,7 @@
|
||||
|
||||
subdirs = [
|
||||
"libs/*",
|
||||
"tools/*",
|
||||
"native/android",
|
||||
"native/graphics/jni",
|
||||
]
|
||||
|
||||
170
tools/aapt2/Android.bp
Normal file
170
tools/aapt2/Android.bp
Normal file
@@ -0,0 +1,170 @@
|
||||
//
|
||||
// Copyright (C) 2015 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.
|
||||
//
|
||||
|
||||
toolSources = [
|
||||
"compile/Compile.cpp",
|
||||
"diff/Diff.cpp",
|
||||
"dump/Dump.cpp",
|
||||
"link/Link.cpp",
|
||||
]
|
||||
|
||||
cc_defaults {
|
||||
name: "aapt_defaults",
|
||||
cflags: [
|
||||
"-Wall",
|
||||
"-Werror",
|
||||
"-Wno-unused-parameter",
|
||||
],
|
||||
cppflags: [
|
||||
"-Wno-missing-field-initializers",
|
||||
"-fno-exceptions",
|
||||
"-fno-rtti",
|
||||
],
|
||||
target: {
|
||||
windows: {
|
||||
enabled: true,
|
||||
cflags: ["-Wno-maybe-uninitialized"],
|
||||
static_libs: ["libz"],
|
||||
},
|
||||
darwin: {
|
||||
cflags: ["-D_DARWIN_UNLIMITED_STREAMS"],
|
||||
host_ldlibs: ["-lz"],
|
||||
},
|
||||
linux: {
|
||||
host_ldlibs: ["-lz"],
|
||||
},
|
||||
},
|
||||
static_libs: [
|
||||
"libandroidfw",
|
||||
"libutils",
|
||||
"liblog",
|
||||
"libcutils",
|
||||
"libexpat",
|
||||
"libziparchive",
|
||||
"libpng",
|
||||
"libbase",
|
||||
"libprotobuf-cpp-lite",
|
||||
],
|
||||
group_static_libs: true,
|
||||
}
|
||||
|
||||
// ==========================================================
|
||||
// NOTE: Do not add any shared libraries.
|
||||
// AAPT2 is built to run on many environments
|
||||
// that may not have the required dependencies.
|
||||
// ==========================================================
|
||||
|
||||
// ==========================================================
|
||||
// Build the host static library: aapt2
|
||||
// ==========================================================
|
||||
cc_library_host_static {
|
||||
name: "libaapt2",
|
||||
srcs: [
|
||||
"compile/IdAssigner.cpp",
|
||||
"compile/InlineXmlFormatParser.cpp",
|
||||
"compile/NinePatch.cpp",
|
||||
"compile/Png.cpp",
|
||||
"compile/PngChunkFilter.cpp",
|
||||
"compile/PngCrunch.cpp",
|
||||
"compile/PseudolocaleGenerator.cpp",
|
||||
"compile/Pseudolocalizer.cpp",
|
||||
"compile/XmlIdCollector.cpp",
|
||||
"filter/ConfigFilter.cpp",
|
||||
"flatten/Archive.cpp",
|
||||
"flatten/TableFlattener.cpp",
|
||||
"flatten/XmlFlattener.cpp",
|
||||
"io/File.cpp",
|
||||
"io/FileSystem.cpp",
|
||||
"io/Io.cpp",
|
||||
"io/ZipArchive.cpp",
|
||||
"link/AutoVersioner.cpp",
|
||||
"link/ManifestFixer.cpp",
|
||||
"link/ProductFilter.cpp",
|
||||
"link/PrivateAttributeMover.cpp",
|
||||
"link/ReferenceLinker.cpp",
|
||||
"link/ResourceDeduper.cpp",
|
||||
"link/TableMerger.cpp",
|
||||
"link/VersionCollapser.cpp",
|
||||
"link/XmlNamespaceRemover.cpp",
|
||||
"link/XmlReferenceLinker.cpp",
|
||||
"process/SymbolTable.cpp",
|
||||
"proto/ProtoHelpers.cpp",
|
||||
"proto/TableProtoDeserializer.cpp",
|
||||
"proto/TableProtoSerializer.cpp",
|
||||
"split/TableSplitter.cpp",
|
||||
"unflatten/BinaryResourceParser.cpp",
|
||||
"unflatten/ResChunkPullParser.cpp",
|
||||
"util/BigBuffer.cpp",
|
||||
"util/Files.cpp",
|
||||
"util/Util.cpp",
|
||||
"ConfigDescription.cpp",
|
||||
"Debug.cpp",
|
||||
"DominatorTree.cpp",
|
||||
"Flags.cpp",
|
||||
"java/AnnotationProcessor.cpp",
|
||||
"java/ClassDefinition.cpp",
|
||||
"java/JavaClassGenerator.cpp",
|
||||
"java/ManifestClassGenerator.cpp",
|
||||
"java/ProguardRules.cpp",
|
||||
"Locale.cpp",
|
||||
"Resource.cpp",
|
||||
"ResourceParser.cpp",
|
||||
"ResourceTable.cpp",
|
||||
"ResourceUtils.cpp",
|
||||
"ResourceValues.cpp",
|
||||
"SdkConstants.cpp",
|
||||
"StringPool.cpp",
|
||||
"xml/XmlActionExecutor.cpp",
|
||||
"xml/XmlDom.cpp",
|
||||
"xml/XmlPullParser.cpp",
|
||||
"xml/XmlUtil.cpp",
|
||||
"Format.proto",
|
||||
],
|
||||
proto: {
|
||||
export_proto_headers: true,
|
||||
},
|
||||
defaults: ["aapt_defaults"],
|
||||
}
|
||||
|
||||
// ==========================================================
|
||||
// Build the host shared library: aapt2_jni
|
||||
// ==========================================================
|
||||
cc_library_host_shared {
|
||||
name: "libaapt2_jni",
|
||||
srcs: toolSources + ["jni/aapt2_jni.cpp"],
|
||||
static_libs: ["libaapt2"],
|
||||
defaults: ["aapt_defaults"],
|
||||
}
|
||||
|
||||
// ==========================================================
|
||||
// Build the host tests: aapt2_tests
|
||||
// ==========================================================
|
||||
cc_test_host {
|
||||
name: "aapt2_tests",
|
||||
srcs: ["**/*_test.cpp"],
|
||||
static_libs: ["libaapt2"],
|
||||
defaults: ["aapt_defaults"],
|
||||
}
|
||||
|
||||
// ==========================================================
|
||||
// Build the host executable: aapt2
|
||||
// ==========================================================
|
||||
cc_binary_host {
|
||||
name: "aapt2",
|
||||
srcs: ["Main.cpp"] + toolSources,
|
||||
static_libs: ["libaapt2"],
|
||||
defaults: ["aapt_defaults"],
|
||||
}
|
||||
@@ -1,253 +0,0 @@
|
||||
#
|
||||
# Copyright (C) 2015 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.
|
||||
#
|
||||
LOCAL_PATH:= $(call my-dir)
|
||||
|
||||
# ==========================================================
|
||||
# Setup some common variables for the different build
|
||||
# targets here.
|
||||
# ==========================================================
|
||||
|
||||
main := Main.cpp
|
||||
sources := \
|
||||
compile/IdAssigner.cpp \
|
||||
compile/InlineXmlFormatParser.cpp \
|
||||
compile/NinePatch.cpp \
|
||||
compile/Png.cpp \
|
||||
compile/PngChunkFilter.cpp \
|
||||
compile/PngCrunch.cpp \
|
||||
compile/PseudolocaleGenerator.cpp \
|
||||
compile/Pseudolocalizer.cpp \
|
||||
compile/XmlIdCollector.cpp \
|
||||
filter/ConfigFilter.cpp \
|
||||
flatten/Archive.cpp \
|
||||
flatten/TableFlattener.cpp \
|
||||
flatten/XmlFlattener.cpp \
|
||||
io/File.cpp \
|
||||
io/FileSystem.cpp \
|
||||
io/Io.cpp \
|
||||
io/ZipArchive.cpp \
|
||||
link/AutoVersioner.cpp \
|
||||
link/ManifestFixer.cpp \
|
||||
link/ProductFilter.cpp \
|
||||
link/PrivateAttributeMover.cpp \
|
||||
link/ReferenceLinker.cpp \
|
||||
link/ResourceDeduper.cpp \
|
||||
link/TableMerger.cpp \
|
||||
link/VersionCollapser.cpp \
|
||||
link/XmlNamespaceRemover.cpp \
|
||||
link/XmlReferenceLinker.cpp \
|
||||
process/SymbolTable.cpp \
|
||||
proto/ProtoHelpers.cpp \
|
||||
proto/TableProtoDeserializer.cpp \
|
||||
proto/TableProtoSerializer.cpp \
|
||||
split/TableSplitter.cpp \
|
||||
unflatten/BinaryResourceParser.cpp \
|
||||
unflatten/ResChunkPullParser.cpp \
|
||||
util/BigBuffer.cpp \
|
||||
util/Files.cpp \
|
||||
util/Util.cpp \
|
||||
ConfigDescription.cpp \
|
||||
Debug.cpp \
|
||||
DominatorTree.cpp \
|
||||
Flags.cpp \
|
||||
java/AnnotationProcessor.cpp \
|
||||
java/ClassDefinition.cpp \
|
||||
java/JavaClassGenerator.cpp \
|
||||
java/ManifestClassGenerator.cpp \
|
||||
java/ProguardRules.cpp \
|
||||
Locale.cpp \
|
||||
Resource.cpp \
|
||||
ResourceParser.cpp \
|
||||
ResourceTable.cpp \
|
||||
ResourceUtils.cpp \
|
||||
ResourceValues.cpp \
|
||||
SdkConstants.cpp \
|
||||
StringPool.cpp \
|
||||
xml/XmlActionExecutor.cpp \
|
||||
xml/XmlDom.cpp \
|
||||
xml/XmlPullParser.cpp \
|
||||
xml/XmlUtil.cpp
|
||||
|
||||
sources += Format.proto
|
||||
|
||||
sourcesJni := jni/aapt2_jni.cpp
|
||||
|
||||
testSources := \
|
||||
compile/IdAssigner_test.cpp \
|
||||
compile/InlineXmlFormatParser_test.cpp \
|
||||
compile/NinePatch_test.cpp \
|
||||
compile/PseudolocaleGenerator_test.cpp \
|
||||
compile/Pseudolocalizer_test.cpp \
|
||||
compile/XmlIdCollector_test.cpp \
|
||||
filter/ConfigFilter_test.cpp \
|
||||
flatten/TableFlattener_test.cpp \
|
||||
flatten/XmlFlattener_test.cpp \
|
||||
link/AutoVersioner_test.cpp \
|
||||
link/ManifestFixer_test.cpp \
|
||||
link/PrivateAttributeMover_test.cpp \
|
||||
link/ProductFilter_test.cpp \
|
||||
link/ReferenceLinker_test.cpp \
|
||||
link/ResourceDeduper_test.cpp \
|
||||
link/TableMerger_test.cpp \
|
||||
link/VersionCollapser_test.cpp \
|
||||
link/XmlNamespaceRemover_test.cpp \
|
||||
link/XmlReferenceLinker_test.cpp \
|
||||
process/SymbolTable_test.cpp \
|
||||
proto/TableProtoSerializer_test.cpp \
|
||||
split/TableSplitter_test.cpp \
|
||||
util/BigBuffer_test.cpp \
|
||||
util/Files_test.cpp \
|
||||
util/Maybe_test.cpp \
|
||||
util/StringPiece_test.cpp \
|
||||
util/Util_test.cpp \
|
||||
ConfigDescription_test.cpp \
|
||||
DominatorTree_test.cpp \
|
||||
java/AnnotationProcessor_test.cpp \
|
||||
java/JavaClassGenerator_test.cpp \
|
||||
java/ManifestClassGenerator_test.cpp \
|
||||
Locale_test.cpp \
|
||||
NameMangler_test.cpp \
|
||||
Resource_test.cpp \
|
||||
ResourceParser_test.cpp \
|
||||
ResourceTable_test.cpp \
|
||||
ResourceUtils_test.cpp \
|
||||
SdkConstants_test.cpp \
|
||||
StringPool_test.cpp \
|
||||
ValueVisitor_test.cpp \
|
||||
xml/XmlActionExecutor_test.cpp \
|
||||
xml/XmlDom_test.cpp \
|
||||
xml/XmlPullParser_test.cpp \
|
||||
xml/XmlUtil_test.cpp
|
||||
|
||||
toolSources := \
|
||||
compile/Compile.cpp \
|
||||
diff/Diff.cpp \
|
||||
dump/Dump.cpp \
|
||||
link/Link.cpp
|
||||
|
||||
hostLdLibs :=
|
||||
|
||||
hostStaticLibs := \
|
||||
libandroidfw \
|
||||
libutils \
|
||||
liblog \
|
||||
libcutils \
|
||||
libexpat \
|
||||
libziparchive \
|
||||
libpng \
|
||||
libbase \
|
||||
libprotobuf-cpp-lite
|
||||
|
||||
|
||||
# Statically link libz for MinGW (Win SDK under Linux),
|
||||
# and dynamically link for all others.
|
||||
hostStaticLibs_windows := libz
|
||||
hostLdLibs_linux := -lz
|
||||
hostLdLibs_darwin := -lz
|
||||
|
||||
cFlags := -Wall -Werror -Wno-unused-parameter
|
||||
cFlags_darwin := -D_DARWIN_UNLIMITED_STREAMS
|
||||
cFlags_windows := -Wno-maybe-uninitialized # Incorrectly marking use of Maybe.value() as error.
|
||||
cppFlags := -Wno-missing-field-initializers -fno-exceptions -fno-rtti
|
||||
protoIncludes := $(call generated-sources-dir-for,STATIC_LIBRARIES,libaapt2,HOST)
|
||||
|
||||
# ==========================================================
|
||||
# NOTE: Do not add any shared libraries.
|
||||
# AAPT2 is built to run on many environments
|
||||
# that may not have the required dependencies.
|
||||
# ==========================================================
|
||||
|
||||
# ==========================================================
|
||||
# Build the host static library: libaapt2
|
||||
# ==========================================================
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := libaapt2
|
||||
LOCAL_MODULE_CLASS := STATIC_LIBRARIES
|
||||
LOCAL_MODULE_HOST_OS := darwin linux windows
|
||||
LOCAL_CFLAGS := $(cFlags)
|
||||
LOCAL_CFLAGS_darwin := $(cFlags_darwin)
|
||||
LOCAL_CFLAGS_windows := $(cFlags_windows)
|
||||
LOCAL_CPPFLAGS := $(cppFlags)
|
||||
LOCAL_C_INCLUDES := $(protoIncludes)
|
||||
LOCAL_SRC_FILES := $(sources)
|
||||
LOCAL_STATIC_LIBRARIES := $(hostStaticLibs)
|
||||
LOCAL_STATIC_LIBRARIES_windows := $(hostStaticLibs_windows)
|
||||
include $(BUILD_HOST_STATIC_LIBRARY)
|
||||
|
||||
|
||||
# ==========================================================
|
||||
# Build the host shared library: libaapt2_jni
|
||||
# ==========================================================
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := libaapt2_jni
|
||||
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
|
||||
LOCAL_MODULE_HOST_OS := darwin linux windows
|
||||
LOCAL_CFLAGS := $(cFlags)
|
||||
LOCAL_CFLAGS_darwin := $(cFlags_darwin)
|
||||
LOCAL_CFLAGS_windows := $(cFlags_windows)
|
||||
LOCAL_CPPFLAGS := $(cppFlags)
|
||||
LOCAL_C_INCLUDES := $(protoIncludes)
|
||||
LOCAL_SRC_FILES := $(toolSources) $(sourcesJni)
|
||||
LOCAL_STATIC_LIBRARIES := libaapt2 $(hostStaticLibs)
|
||||
LOCAL_STATIC_LIBRARIES_windows := $(hostStaticLibs_windows)
|
||||
LOCAL_LDLIBS := $(hostLdLibs)
|
||||
LOCAL_LDLIBS_darwin := $(hostLdLibs_darwin)
|
||||
LOCAL_LDLIBS_linux := $(hostLdLibs_linux)
|
||||
include $(BUILD_HOST_SHARED_LIBRARY)
|
||||
|
||||
|
||||
# ==========================================================
|
||||
# Build the host tests: libaapt2_tests
|
||||
# ==========================================================
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := libaapt2_tests
|
||||
LOCAL_MODULE_TAGS := tests
|
||||
LOCAL_MODULE_HOST_OS := darwin linux windows
|
||||
LOCAL_CFLAGS := $(cFlags)
|
||||
LOCAL_CFLAGS_darwin := $(cFlags_darwin)
|
||||
LOCAL_CFLAGS_windows := $(cFlags_windows)
|
||||
LOCAL_CPPFLAGS := $(cppFlags)
|
||||
LOCAL_C_INCLUDES := $(protoIncludes)
|
||||
LOCAL_SRC_FILES := $(testSources)
|
||||
LOCAL_STATIC_LIBRARIES := libaapt2 $(hostStaticLibs)
|
||||
LOCAL_STATIC_LIBRARIES_windows := $(hostStaticLibs_windows)
|
||||
LOCAL_LDLIBS := $(hostLdLibs)
|
||||
LOCAL_LDLIBS_darwin := $(hostLdLibs_darwin)
|
||||
LOCAL_LDLIBS_linux := $(hostLdLibs_linux)
|
||||
include $(BUILD_HOST_NATIVE_TEST)
|
||||
|
||||
# ==========================================================
|
||||
# Build the host executable: aapt2
|
||||
# ==========================================================
|
||||
include $(CLEAR_VARS)
|
||||
LOCAL_MODULE := aapt2
|
||||
LOCAL_MODULE_HOST_OS := darwin linux windows
|
||||
LOCAL_CFLAGS := $(cFlags)
|
||||
LOCAL_CFLAGS_darwin := $(cFlags_darwin)
|
||||
LOCAL_CFLAGS_windows := $(cFlags_windows)
|
||||
LOCAL_CPPFLAGS := $(cppFlags)
|
||||
LOCAL_C_INCLUDES := $(protoIncludes)
|
||||
LOCAL_SRC_FILES := $(main) $(toolSources)
|
||||
LOCAL_STATIC_LIBRARIES := libaapt2 $(hostStaticLibs)
|
||||
LOCAL_STATIC_LIBRARIES_windows := $(hostStaticLibs_windows)
|
||||
LOCAL_LDLIBS := $(hostLdLibs)
|
||||
LOCAL_LDLIBS_darwin := $(hostLdLibs_darwin)
|
||||
LOCAL_LDLIBS_linux := $(hostLdLibs_linux)
|
||||
include $(BUILD_HOST_EXECUTABLE)
|
||||
|
||||
ifeq ($(ONE_SHOT_MAKEFILE),)
|
||||
include $(call all-makefiles-under,$(LOCAL_PATH))
|
||||
endif
|
||||
@@ -23,7 +23,7 @@
|
||||
#include "ResourceTable.h"
|
||||
#include "Source.h"
|
||||
#include "StringPool.h"
|
||||
#include "proto/frameworks/base/tools/aapt2/Format.pb.h"
|
||||
#include "Format.pb.h"
|
||||
|
||||
namespace aapt {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user