Android.mk revision a6d94785fc7c80c33de99b5a65e6a5e3a2e93fb3
1# Copyright (C) 2009 The Android Open Source Project 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# http://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14# 15# 16 17LOCAL_PATH := $(call my-dir) 18 19CC_LITE_SRC_FILES := \ 20 src/google/protobuf/stubs/common.cc \ 21 src/google/protobuf/stubs/once.cc \ 22 src/google/protobuf/stubs/hash.cc \ 23 src/google/protobuf/stubs/hash.h \ 24 src/google/protobuf/stubs/map-util.h \ 25 src/google/protobuf/stubs/stl_util-inl.h \ 26 src/google/protobuf/extension_set.cc \ 27 src/google/protobuf/generated_message_util.cc \ 28 src/google/protobuf/message_lite.cc \ 29 src/google/protobuf/repeated_field.cc \ 30 src/google/protobuf/wire_format_lite.cc \ 31 src/google/protobuf/io/coded_stream.cc \ 32 src/google/protobuf/io/coded_stream_inl.h \ 33 src/google/protobuf/io/zero_copy_stream.cc \ 34 src/google/protobuf/io/zero_copy_stream_impl_lite.cc 35 36JAVA_LITE_SRC_FILES := \ 37 java/src/main/java/com/google/protobuf/UninitializedMessageException.java \ 38 java/src/main/java/com/google/protobuf/MessageLite.java \ 39 java/src/main/java/com/google/protobuf/InvalidProtocolBufferException.java \ 40 java/src/main/java/com/google/protobuf/CodedOutputStream.java \ 41 java/src/main/java/com/google/protobuf/ByteString.java \ 42 java/src/main/java/com/google/protobuf/CodedInputStream.java \ 43 java/src/main/java/com/google/protobuf/ExtensionRegistryLite.java \ 44 java/src/main/java/com/google/protobuf/AbstractMessageLite.java \ 45 java/src/main/java/com/google/protobuf/FieldSet.java \ 46 java/src/main/java/com/google/protobuf/Internal.java \ 47 java/src/main/java/com/google/protobuf/WireFormat.java \ 48 java/src/main/java/com/google/protobuf/GeneratedMessageLite.java 49 50COMPILER_SRC_FILES := \ 51 src/google/protobuf/descriptor.cc \ 52 src/google/protobuf/descriptor.pb.cc \ 53 src/google/protobuf/descriptor_database.cc \ 54 src/google/protobuf/dynamic_message.cc \ 55 src/google/protobuf/extension_set.cc \ 56 src/google/protobuf/extension_set_heavy.cc \ 57 src/google/protobuf/generated_message_reflection.cc \ 58 src/google/protobuf/generated_message_util.cc \ 59 src/google/protobuf/message.cc \ 60 src/google/protobuf/message_lite.cc \ 61 src/google/protobuf/reflection_ops.cc \ 62 src/google/protobuf/repeated_field.cc \ 63 src/google/protobuf/service.cc \ 64 src/google/protobuf/text_format.cc \ 65 src/google/protobuf/unknown_field_set.cc \ 66 src/google/protobuf/wire_format.cc \ 67 src/google/protobuf/wire_format_lite.cc \ 68 src/google/protobuf/compiler/code_generator.cc \ 69 src/google/protobuf/compiler/command_line_interface.cc \ 70 src/google/protobuf/compiler/importer.cc \ 71 src/google/protobuf/compiler/main.cc \ 72 src/google/protobuf/compiler/parser.cc \ 73 src/google/protobuf/compiler/plugin.cc \ 74 src/google/protobuf/compiler/plugin.pb.cc \ 75 src/google/protobuf/compiler/subprocess.cc \ 76 src/google/protobuf/compiler/zip_writer.cc \ 77 src/google/protobuf/compiler/cpp/cpp_enum.cc \ 78 src/google/protobuf/compiler/cpp/cpp_enum_field.cc \ 79 src/google/protobuf/compiler/cpp/cpp_extension.cc \ 80 src/google/protobuf/compiler/cpp/cpp_field.cc \ 81 src/google/protobuf/compiler/cpp/cpp_file.cc \ 82 src/google/protobuf/compiler/cpp/cpp_generator.cc \ 83 src/google/protobuf/compiler/cpp/cpp_helpers.cc \ 84 src/google/protobuf/compiler/cpp/cpp_message.cc \ 85 src/google/protobuf/compiler/cpp/cpp_message_field.cc \ 86 src/google/protobuf/compiler/cpp/cpp_primitive_field.cc \ 87 src/google/protobuf/compiler/cpp/cpp_service.cc \ 88 src/google/protobuf/compiler/cpp/cpp_string_field.cc \ 89 src/google/protobuf/compiler/java/java_enum.cc \ 90 src/google/protobuf/compiler/java/java_enum_field.cc \ 91 src/google/protobuf/compiler/java/java_extension.cc \ 92 src/google/protobuf/compiler/java/java_field.cc \ 93 src/google/protobuf/compiler/java/java_file.cc \ 94 src/google/protobuf/compiler/java/java_generator.cc \ 95 src/google/protobuf/compiler/java/java_helpers.cc \ 96 src/google/protobuf/compiler/java/java_message.cc \ 97 src/google/protobuf/compiler/java/java_message_field.cc \ 98 src/google/protobuf/compiler/java/java_primitive_field.cc \ 99 src/google/protobuf/compiler/java/java_service.cc \ 100 src/google/protobuf/compiler/javamicro/javamicro_enum.cc \ 101 src/google/protobuf/compiler/javamicro/javamicro_enum_field.cc \ 102 src/google/protobuf/compiler/javamicro/javamicro_field.cc \ 103 src/google/protobuf/compiler/javamicro/javamicro_file.cc \ 104 src/google/protobuf/compiler/javamicro/javamicro_generator.cc \ 105 src/google/protobuf/compiler/javamicro/javamicro_helpers.cc \ 106 src/google/protobuf/compiler/javamicro/javamicro_message.cc \ 107 src/google/protobuf/compiler/javamicro/javamicro_message_field.cc \ 108 src/google/protobuf/compiler/javamicro/javamicro_primitive_field.cc \ 109 src/google/protobuf/compiler/python/python_generator.cc \ 110 src/google/protobuf/io/coded_stream.cc \ 111 src/google/protobuf/io/gzip_stream.cc \ 112 src/google/protobuf/io/printer.cc \ 113 src/google/protobuf/io/tokenizer.cc \ 114 src/google/protobuf/io/zero_copy_stream.cc \ 115 src/google/protobuf/io/zero_copy_stream_impl.cc \ 116 src/google/protobuf/io/zero_copy_stream_impl_lite.cc \ 117 src/google/protobuf/stubs/common.cc \ 118 src/google/protobuf/stubs/hash.cc \ 119 src/google/protobuf/stubs/once.cc \ 120 src/google/protobuf/stubs/structurally_valid.cc \ 121 src/google/protobuf/stubs/strutil.cc \ 122 src/google/protobuf/stubs/substitute.cc 123 124# Java micro library (for device-side users) 125# ======================================================= 126include $(CLEAR_VARS) 127 128LOCAL_MODULE := libprotobuf-java-2.3.0-micro 129LOCAL_MODULE_TAGS := optional 130LOCAL_SDK_VERSION := 8 131 132LOCAL_SRC_FILES := $(call all-java-files-under, java/src/main/java/com/google/protobuf/micro) 133 134include $(BUILD_STATIC_JAVA_LIBRARY) 135 136# Java micro library (for host-side users) 137# ======================================================= 138include $(CLEAR_VARS) 139 140LOCAL_MODULE := host-libprotobuf-java-2.3.0-micro 141LOCAL_MODULE_TAGS := optional 142 143LOCAL_SRC_FILES := $(call all-java-files-under, java/src/main/java/com/google/protobuf/micro) 144 145include $(BUILD_HOST_JAVA_LIBRARY) 146 147# Java lite library (for device-side users) 148# ======================================================= 149include $(CLEAR_VARS) 150 151LOCAL_MODULE := libprotobuf-java-2.3.0-lite 152LOCAL_MODULE_TAGS := optional 153LOCAL_SDK_VERSION := 8 154 155LOCAL_SRC_FILES := $(JAVA_LITE_SRC_FILES) 156 157include $(BUILD_STATIC_JAVA_LIBRARY) 158 159# Java lite library (for host-side users) 160# ======================================================= 161include $(CLEAR_VARS) 162 163LOCAL_MODULE := host-libprotobuf-java-2.3.0-lite 164LOCAL_MODULE_TAGS := optional 165 166LOCAL_SRC_FILES := $(JAVA_LITE_SRC_FILES) 167 168include $(BUILD_HOST_JAVA_LIBRARY) 169 170# C++ lite library 171# ======================================================= 172include $(CLEAR_VARS) 173 174LOCAL_MODULE := libprotobuf-cpp-2.3.0-lite 175LOCAL_MODULE_TAGS := optional 176 177LOCAL_CPP_EXTENSION := .cc 178 179LOCAL_SRC_FILES := $(CC_LITE_SRC_FILES) 180 181LOCAL_C_INCLUDES := \ 182 $(LOCAL_PATH)/android \ 183 $(LOCAL_PATH)/src 184 185# Define the header files to be copied 186#LOCAL_COPY_HEADERS := \ 187# src/google/protobuf/stubs/once.h \ 188# src/google/protobuf/stubs/common.h \ 189# src/google/protobuf/io/coded_stream.h \ 190# src/google/protobuf/generated_message_util.h \ 191# src/google/protobuf/repeated_field.h \ 192# src/google/protobuf/extension_set.h \ 193# src/google/protobuf/wire_format_lite_inl.h 194# 195#LOCAL_COPY_HEADERS_TO := $(LOCAL_MODULE) 196 197LOCAL_CFLAGS := -DGOOGLE_PROTOBUF_NO_RTTI 198 199ifeq ($(TARGET_ARCH),arm) 200# These are the minimum versions and don't need to be update. 201LOCAL_SDK_VERSION := 8 202LOCAL_NDK_STL_VARIANT := stlport_static 203else 204include external/stlport/libstlport.mk 205endif 206 207include $(BUILD_STATIC_LIBRARY) 208 209# C++ full library 210# ======================================================= 211include $(CLEAR_VARS) 212 213LOCAL_MODULE := libprotobuf-cpp-2.3.0-full 214LOCAL_MODULE_TAGS := optional 215 216LOCAL_CPP_EXTENSION := .cc 217 218LOCAL_SRC_FILES := \ 219 $(CC_LITE_SRC_FILES) \ 220 src/google/protobuf/stubs/strutil.cc \ 221 src/google/protobuf/stubs/strutil.h \ 222 src/google/protobuf/stubs/substitute.cc \ 223 src/google/protobuf/stubs/substitute.h \ 224 src/google/protobuf/stubs/structurally_valid.cc \ 225 src/google/protobuf/descriptor.cc \ 226 src/google/protobuf/descriptor.pb.cc \ 227 src/google/protobuf/descriptor_database.cc \ 228 src/google/protobuf/dynamic_message.cc \ 229 src/google/protobuf/extension_set_heavy.cc \ 230 src/google/protobuf/generated_message_reflection.cc \ 231 src/google/protobuf/message.cc \ 232 src/google/protobuf/reflection_ops.cc \ 233 src/google/protobuf/service.cc \ 234 src/google/protobuf/text_format.cc \ 235 src/google/protobuf/unknown_field_set.cc \ 236 src/google/protobuf/wire_format.cc \ 237 src/google/protobuf/io/gzip_stream.cc \ 238 src/google/protobuf/io/printer.cc \ 239 src/google/protobuf/io/tokenizer.cc \ 240 src/google/protobuf/io/zero_copy_stream_impl.cc \ 241 src/google/protobuf/compiler/importer.cc \ 242 src/google/protobuf/compiler/parser.cc 243 244LOCAL_C_INCLUDES := \ 245 $(LOCAL_PATH)/android \ 246 external/zlib \ 247 $(LOCAL_PATH)/src 248 249# Define the header files to be copied 250#LOCAL_COPY_HEADERS := \ 251# src/google/protobuf/stubs/once.h \ 252# src/google/protobuf/stubs/common.h \ 253# src/google/protobuf/io/coded_stream.h \ 254# src/google/protobuf/generated_message_util.h \ 255# src/google/protobuf/repeated_field.h \ 256# src/google/protobuf/extension_set.h \ 257# src/google/protobuf/wire_format_lite_inl.h 258# 259#LOCAL_COPY_HEADERS_TO := $(LOCAL_MODULE) 260 261LOCAL_CFLAGS := -DGOOGLE_PROTOBUF_NO_RTTI 262 263ifeq ($(TARGET_ARCH),arm) 264# These are the minimum versions and don't need to be update. 265LOCAL_SDK_VERSION := 8 266LOCAL_NDK_STL_VARIANT := stlport_static 267else 268include external/stlport/libstlport.mk 269endif 270 271include $(BUILD_STATIC_LIBRARY) 272 273# Android Protocol buffer compiler, aprotoc (host executable) 274# used by the build systems as $(PROTOC) defined in 275# build/core/config.mk 276# ======================================================= 277include $(CLEAR_VARS) 278 279LOCAL_MODULE := aprotoc 280LOCAL_MODULE_CLASS := EXECUTABLES 281LOCAL_MODULE_TAGS := optional 282 283LOCAL_CPP_EXTENSION := .cc 284LOCAL_SRC_FILES := $(COMPILER_SRC_FILES) 285 286LOCAL_C_INCLUDES := \ 287 $(LOCAL_PATH)/android \ 288 $(LOCAL_PATH)/src 289 290LOCAL_STATIC_LIBRARIES += libz 291LOCAL_LDLIBS := -lpthread 292 293include $(BUILD_HOST_EXECUTABLE) 294