aboutsummaryrefslogtreecommitdiff
path: root/Android.mk
diff options
context:
space:
mode:
Diffstat (limited to 'Android.mk')
-rw-r--r--Android.mk486
1 files changed, 486 insertions, 0 deletions
diff --git a/Android.mk b/Android.mk
new file mode 100644
index 00000000..18bdd091
--- /dev/null
+++ b/Android.mk
@@ -0,0 +1,486 @@
+# Copyright (C) 2009 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)
+
+IGNORED_WARNINGS := -Wno-sign-compare -Wno-unused-parameter -Wno-sign-promo
+
+CC_LITE_SRC_FILES := \
+ src/google/protobuf/stubs/common.cc \
+ src/google/protobuf/stubs/once.cc \
+ src/google/protobuf/stubs/hash.cc \
+ src/google/protobuf/stubs/hash.h \
+ src/google/protobuf/stubs/map-util.h \
+ src/google/protobuf/stubs/stl_util-inl.h \
+ src/google/protobuf/extension_set.cc \
+ src/google/protobuf/generated_message_util.cc \
+ src/google/protobuf/message_lite.cc \
+ src/google/protobuf/repeated_field.cc \
+ src/google/protobuf/wire_format_lite.cc \
+ src/google/protobuf/io/coded_stream.cc \
+ src/google/protobuf/io/coded_stream_inl.h \
+ src/google/protobuf/io/zero_copy_stream.cc \
+ src/google/protobuf/io/zero_copy_stream_impl_lite.cc
+
+JAVA_LITE_SRC_FILES := \
+ java/src/main/java/com/google/protobuf/UninitializedMessageException.java \
+ java/src/main/java/com/google/protobuf/MessageLite.java \
+ java/src/main/java/com/google/protobuf/InvalidProtocolBufferException.java \
+ java/src/main/java/com/google/protobuf/CodedOutputStream.java \
+ java/src/main/java/com/google/protobuf/ByteString.java \
+ java/src/main/java/com/google/protobuf/CodedInputStream.java \
+ java/src/main/java/com/google/protobuf/ExtensionRegistryLite.java \
+ java/src/main/java/com/google/protobuf/AbstractMessageLite.java \
+ java/src/main/java/com/google/protobuf/FieldSet.java \
+ java/src/main/java/com/google/protobuf/Internal.java \
+ java/src/main/java/com/google/protobuf/WireFormat.java \
+ java/src/main/java/com/google/protobuf/GeneratedMessageLite.java
+
+COMPILER_SRC_FILES := \
+ src/google/protobuf/descriptor.cc \
+ src/google/protobuf/descriptor.pb.cc \
+ src/google/protobuf/descriptor_database.cc \
+ src/google/protobuf/dynamic_message.cc \
+ src/google/protobuf/extension_set.cc \
+ src/google/protobuf/extension_set_heavy.cc \
+ src/google/protobuf/generated_message_reflection.cc \
+ src/google/protobuf/generated_message_util.cc \
+ src/google/protobuf/message.cc \
+ src/google/protobuf/message_lite.cc \
+ src/google/protobuf/reflection_ops.cc \
+ src/google/protobuf/repeated_field.cc \
+ src/google/protobuf/service.cc \
+ src/google/protobuf/text_format.cc \
+ src/google/protobuf/unknown_field_set.cc \
+ src/google/protobuf/wire_format.cc \
+ src/google/protobuf/wire_format_lite.cc \
+ src/google/protobuf/compiler/code_generator.cc \
+ src/google/protobuf/compiler/command_line_interface.cc \
+ src/google/protobuf/compiler/importer.cc \
+ src/google/protobuf/compiler/main.cc \
+ src/google/protobuf/compiler/parser.cc \
+ src/google/protobuf/compiler/plugin.cc \
+ src/google/protobuf/compiler/plugin.pb.cc \
+ src/google/protobuf/compiler/subprocess.cc \
+ src/google/protobuf/compiler/zip_writer.cc \
+ src/google/protobuf/compiler/cpp/cpp_enum.cc \
+ src/google/protobuf/compiler/cpp/cpp_enum_field.cc \
+ src/google/protobuf/compiler/cpp/cpp_extension.cc \
+ src/google/protobuf/compiler/cpp/cpp_field.cc \
+ src/google/protobuf/compiler/cpp/cpp_file.cc \
+ src/google/protobuf/compiler/cpp/cpp_generator.cc \
+ src/google/protobuf/compiler/cpp/cpp_helpers.cc \
+ src/google/protobuf/compiler/cpp/cpp_message.cc \
+ src/google/protobuf/compiler/cpp/cpp_message_field.cc \
+ src/google/protobuf/compiler/cpp/cpp_primitive_field.cc \
+ src/google/protobuf/compiler/cpp/cpp_service.cc \
+ src/google/protobuf/compiler/cpp/cpp_string_field.cc \
+ src/google/protobuf/compiler/java/java_enum.cc \
+ src/google/protobuf/compiler/java/java_enum_field.cc \
+ src/google/protobuf/compiler/java/java_extension.cc \
+ src/google/protobuf/compiler/java/java_field.cc \
+ src/google/protobuf/compiler/java/java_file.cc \
+ src/google/protobuf/compiler/java/java_generator.cc \
+ src/google/protobuf/compiler/java/java_helpers.cc \
+ src/google/protobuf/compiler/java/java_message.cc \
+ src/google/protobuf/compiler/java/java_message_field.cc \
+ src/google/protobuf/compiler/java/java_primitive_field.cc \
+ src/google/protobuf/compiler/java/java_service.cc \
+ src/google/protobuf/compiler/javamicro/javamicro_enum.cc \
+ src/google/protobuf/compiler/javamicro/javamicro_enum_field.cc \
+ src/google/protobuf/compiler/javamicro/javamicro_field.cc \
+ src/google/protobuf/compiler/javamicro/javamicro_file.cc \
+ src/google/protobuf/compiler/javamicro/javamicro_generator.cc \
+ src/google/protobuf/compiler/javamicro/javamicro_helpers.cc \
+ src/google/protobuf/compiler/javamicro/javamicro_message.cc \
+ src/google/protobuf/compiler/javamicro/javamicro_message_field.cc \
+ src/google/protobuf/compiler/javamicro/javamicro_primitive_field.cc \
+ src/google/protobuf/compiler/javanano/javanano_enum.cc \
+ src/google/protobuf/compiler/javanano/javanano_enum_field.cc \
+ src/google/protobuf/compiler/javanano/javanano_extension.cc \
+ src/google/protobuf/compiler/javanano/javanano_field.cc \
+ src/google/protobuf/compiler/javanano/javanano_file.cc \
+ src/google/protobuf/compiler/javanano/javanano_generator.cc \
+ src/google/protobuf/compiler/javanano/javanano_helpers.cc \
+ src/google/protobuf/compiler/javanano/javanano_message.cc \
+ src/google/protobuf/compiler/javanano/javanano_message_field.cc \
+ src/google/protobuf/compiler/javanano/javanano_primitive_field.cc \
+ src/google/protobuf/compiler/python/python_generator.cc \
+ src/google/protobuf/io/coded_stream.cc \
+ src/google/protobuf/io/gzip_stream.cc \
+ src/google/protobuf/io/printer.cc \
+ src/google/protobuf/io/tokenizer.cc \
+ src/google/protobuf/io/zero_copy_stream.cc \
+ src/google/protobuf/io/zero_copy_stream_impl.cc \
+ src/google/protobuf/io/zero_copy_stream_impl_lite.cc \
+ src/google/protobuf/stubs/common.cc \
+ src/google/protobuf/stubs/hash.cc \
+ src/google/protobuf/stubs/once.cc \
+ src/google/protobuf/stubs/structurally_valid.cc \
+ src/google/protobuf/stubs/strutil.cc \
+ src/google/protobuf/stubs/substitute.cc
+
+# Java nano library (for device-side users)
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libprotobuf-java-nano
+LOCAL_MODULE_TAGS := optional
+LOCAL_SDK_VERSION := 8
+
+LOCAL_SRC_FILES := $(call all-java-files-under, java/src/main/java/com/google/protobuf/nano)
+LOCAL_SRC_FILES += $(call all-java-files-under, java/src/device/main/java/com/google/protobuf/nano)
+
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+# Java nano library (for host-side users)
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := host-libprotobuf-java-nano
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(call all-java-files-under, java/src/main/java/com/google/protobuf/nano)
+
+include $(BUILD_HOST_JAVA_LIBRARY)
+
+# Java micro library (for device-side users)
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libprotobuf-java-micro
+LOCAL_MODULE_TAGS := optional
+LOCAL_SDK_VERSION := 8
+
+LOCAL_SRC_FILES := $(call all-java-files-under, java/src/main/java/com/google/protobuf/micro)
+
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+# Java micro library (for host-side users)
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := host-libprotobuf-java-micro
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(call all-java-files-under, java/src/main/java/com/google/protobuf/micro)
+
+include $(BUILD_HOST_JAVA_LIBRARY)
+
+# Java lite library (for device-side users)
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libprotobuf-java-lite
+LOCAL_MODULE_TAGS := optional
+LOCAL_SDK_VERSION := 8
+
+LOCAL_SRC_FILES := $(JAVA_LITE_SRC_FILES)
+
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+# Java lite library (for host-side users)
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := host-libprotobuf-java-lite
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_SRC_FILES := $(JAVA_LITE_SRC_FILES)
+
+include $(BUILD_HOST_JAVA_LIBRARY)
+
+# C++ lite library
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libprotobuf-cpp-lite
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_CPP_EXTENSION := .cc
+
+LOCAL_SRC_FILES := $(CC_LITE_SRC_FILES)
+
+LOCAL_C_INCLUDES := \
+ $(LOCAL_PATH)/android \
+ $(LOCAL_PATH)/src
+
+# Define the header files to be copied
+#LOCAL_COPY_HEADERS := \
+# src/google/protobuf/stubs/once.h \
+# src/google/protobuf/stubs/common.h \
+# src/google/protobuf/io/coded_stream.h \
+# src/google/protobuf/generated_message_util.h \
+# src/google/protobuf/repeated_field.h \
+# src/google/protobuf/extension_set.h \
+# src/google/protobuf/wire_format_lite_inl.h
+#
+#LOCAL_COPY_HEADERS_TO := $(LOCAL_MODULE)
+
+LOCAL_CFLAGS := -DGOOGLE_PROTOBUF_NO_RTTI $(IGNORED_WARNINGS)
+
+# These are the minimum versions and don't need to be update.
+ifeq ($(TARGET_ARCH),arm)
+LOCAL_SDK_VERSION := 8
+else
+# x86/mips support only available from API 9.
+LOCAL_SDK_VERSION := 9
+endif
+LOCAL_NDK_STL_VARIANT := stlport_static
+
+include $(BUILD_STATIC_LIBRARY)
+
+# C++ lite library (libc++ flavored for the platform)
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libprotobuf-cpp-lite
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_CPP_EXTENSION := .cc
+
+LOCAL_SRC_FILES := $(CC_LITE_SRC_FILES)
+
+LOCAL_C_INCLUDES := \
+ $(LOCAL_PATH)/android \
+ $(LOCAL_PATH)/src
+
+LOCAL_CFLAGS := -DGOOGLE_PROTOBUF_NO_RTTI $(IGNORED_WARNINGS)
+
+include $(BUILD_SHARED_LIBRARY)
+
+# C++ full library
+# =======================================================
+protobuf_cc_full_src_files := \
+ $(CC_LITE_SRC_FILES) \
+ src/google/protobuf/stubs/strutil.cc \
+ src/google/protobuf/stubs/strutil.h \
+ src/google/protobuf/stubs/substitute.cc \
+ src/google/protobuf/stubs/substitute.h \
+ src/google/protobuf/stubs/structurally_valid.cc \
+ src/google/protobuf/descriptor.cc \
+ src/google/protobuf/descriptor.pb.cc \
+ src/google/protobuf/descriptor_database.cc \
+ src/google/protobuf/dynamic_message.cc \
+ src/google/protobuf/extension_set_heavy.cc \
+ src/google/protobuf/generated_message_reflection.cc \
+ src/google/protobuf/message.cc \
+ src/google/protobuf/reflection_ops.cc \
+ src/google/protobuf/service.cc \
+ src/google/protobuf/text_format.cc \
+ src/google/protobuf/unknown_field_set.cc \
+ src/google/protobuf/wire_format.cc \
+ src/google/protobuf/io/gzip_stream.cc \
+ src/google/protobuf/io/printer.cc \
+ src/google/protobuf/io/tokenizer.cc \
+ src/google/protobuf/io/zero_copy_stream_impl.cc \
+ src/google/protobuf/compiler/importer.cc \
+ src/google/protobuf/compiler/parser.cc
+
+# C++ full library - stlport version
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libprotobuf-cpp-full
+LOCAL_MODULE_TAGS := optional
+LOCAL_CPP_EXTENSION := .cc
+LOCAL_SRC_FILES := $(protobuf_cc_full_src_files)
+LOCAL_C_INCLUDES := \
+ $(LOCAL_PATH)/android \
+ external/zlib \
+ $(LOCAL_PATH)/src
+
+# Define the header files to be copied
+#LOCAL_COPY_HEADERS := \
+# src/google/protobuf/stubs/once.h \
+# src/google/protobuf/stubs/common.h \
+# src/google/protobuf/io/coded_stream.h \
+# src/google/protobuf/generated_message_util.h \
+# src/google/protobuf/repeated_field.h \
+# src/google/protobuf/extension_set.h \
+# src/google/protobuf/wire_format_lite_inl.h
+#
+#LOCAL_COPY_HEADERS_TO := $(LOCAL_MODULE)
+
+LOCAL_CFLAGS := -DGOOGLE_PROTOBUF_NO_RTTI $(IGNORED_WARNINGS)
+
+# These are the minimum versions and don't need to be update.
+ifeq ($(TARGET_ARCH),arm)
+LOCAL_SDK_VERSION := 8
+else
+# x86/mips support only available from API 9.
+LOCAL_SDK_VERSION := 9
+endif
+LOCAL_NDK_STL_VARIANT := stlport_static
+
+include $(BUILD_STATIC_LIBRARY)
+
+# C++ full library - Gnustl+rtti version
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libprotobuf-cpp-full-gnustl-rtti
+LOCAL_MODULE_TAGS := optional
+LOCAL_CPP_EXTENSION := .cc
+LOCAL_SRC_FILES := $(protobuf_cc_full_src_files)
+LOCAL_C_INCLUDES := \
+ $(LOCAL_PATH)/android \
+ external/zlib \
+ $(LOCAL_PATH)/src
+
+LOCAL_CFLAGS := -frtti $(IGNORED_WARNINGS)
+LOCAL_SDK_VERSION := 14
+LOCAL_NDK_STL_VARIANT := gnustl_static
+
+include $(BUILD_STATIC_LIBRARY)
+
+# C++ full library - libc++ version for the platform
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := libprotobuf-cpp-full
+LOCAL_MODULE_TAGS := optional
+LOCAL_CPP_EXTENSION := .cc
+LOCAL_SRC_FILES := $(protobuf_cc_full_src_files)
+LOCAL_C_INCLUDES := \
+ $(LOCAL_PATH)/android \
+ external/zlib \
+ $(LOCAL_PATH)/src
+
+LOCAL_CFLAGS := -DGOOGLE_PROTOBUF_NO_RTTI $(IGNORED_WARNINGS)
+LOCAL_SHARED_LIBRARIES := libz
+
+include $(BUILD_SHARED_LIBRARY)
+
+# Clean temp vars
+protobuf_cc_full_src_files :=
+
+
+# Android Protocol buffer compiler, aprotoc (host executable)
+# used by the build systems as $(PROTOC) defined in
+# build/core/config.mk
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := aprotoc
+LOCAL_MODULE_CLASS := EXECUTABLES
+LOCAL_MODULE_TAGS := optional
+
+LOCAL_CPP_EXTENSION := .cc
+LOCAL_SRC_FILES := $(COMPILER_SRC_FILES)
+
+LOCAL_C_INCLUDES := \
+ $(LOCAL_PATH)/android \
+ external/zlib \
+ $(LOCAL_PATH)/src
+
+LOCAL_STATIC_LIBRARIES += libz
+
+ifneq ($(HOST_OS),windows)
+LOCAL_LDLIBS := -lpthread
+endif
+
+LOCAL_CFLAGS := $(IGNORED_WARNINGS)
+
+include $(BUILD_HOST_EXECUTABLE)
+
+# To test java proto params build rules.
+# =======================================================
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := aprotoc-test-nano-params
+LOCAL_MODULE_TAGS := tests
+LOCAL_SDK_VERSION := current
+
+LOCAL_PROTOC_OPTIMIZE_TYPE := nano
+
+LOCAL_SRC_FILES := \
+ src/google/protobuf/unittest_import_nano.proto \
+ src/google/protobuf/unittest_simple_nano.proto \
+ src/google/protobuf/unittest_stringutf8_nano.proto \
+ src/google/protobuf/unittest_recursive_nano.proto
+
+
+LOCAL_PROTOC_FLAGS := --proto_path=$(LOCAL_PATH)/src
+
+LOCAL_PROTO_JAVA_OUTPUT_PARAMS := \
+ java_package = $(LOCAL_PATH)/src/google/protobuf/unittest_import_nano.proto|com.google.protobuf.nano, \
+ java_outer_classname = $(LOCAL_PATH)/src/google/protobuf/unittest_import_nano.proto|UnittestImportNano
+
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+# To test Android-specific nanoproto features.
+# =======================================================
+include $(CLEAR_VARS)
+
+# Parcelable messages
+LOCAL_MODULE := android-nano-test-parcelable
+LOCAL_MODULE_TAGS := tests
+LOCAL_SDK_VERSION := current
+
+LOCAL_PROTOC_OPTIMIZE_TYPE := nano
+
+LOCAL_SRC_FILES := src/google/protobuf/unittest_simple_nano.proto
+
+LOCAL_PROTOC_FLAGS := --proto_path=$(LOCAL_PATH)/src
+
+LOCAL_PROTO_JAVA_OUTPUT_PARAMS := \
+ parcelable_messages = true
+
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+include $(CLEAR_VARS)
+
+# Parcelable and extendable messages
+LOCAL_MODULE := android-nano-test-parcelable-extendable
+LOCAL_MODULE_TAGS := tests
+LOCAL_SDK_VERSION := current
+
+LOCAL_PROTOC_OPTIMIZE_TYPE := nano
+
+LOCAL_SRC_FILES := src/google/protobuf/unittest_extension_nano.proto
+
+LOCAL_PROTOC_FLAGS := --proto_path=$(LOCAL_PATH)/src
+
+LOCAL_PROTO_JAVA_OUTPUT_PARAMS := \
+ parcelable_messages = true, \
+ store_unknown_fields = true
+
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
+include $(CLEAR_VARS)
+
+# Test APK
+LOCAL_PACKAGE_NAME := NanoAndroidTest
+
+LOCAL_SDK_VERSION := 8
+
+LOCAL_MODULE_TAGS := tests
+
+LOCAL_SRC_FILES := $(call all-java-files-under, java/src/device/test/java/com/google/protobuf/nano)
+
+LOCAL_MANIFEST_FILE := java/src/device/test/AndroidManifest.xml
+
+LOCAL_STATIC_JAVA_LIBRARIES := libprotobuf-java-nano \
+ android-nano-test-parcelable \
+ android-nano-test-parcelable-extendable
+
+LOCAL_DEX_PREOPT := false
+
+include $(BUILD_PACKAGE)
+
+# 2.3.0 prebuilts for backwards compatibility.
+include $(LOCAL_PATH)/prebuilts/Android.mk