blob: 0aeb7b7cdfb202a0e95442848fd429796a092619 [file] [log] [blame]
Wink Savilleede38fe2010-05-28 11:49:52 -07001# Copyright (C) 2009 The Android Open Source Project
Wink Saville79a4a602010-05-27 15:44:42 -07002#
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.
Wink Savilleede38fe2010-05-28 11:49:52 -070014#
15#
Wink Saville79a4a602010-05-27 15:44:42 -070016
17LOCAL_PATH := $(call my-dir)
Wink Saville79a4a602010-05-27 15:44:42 -070018
Wink Saville732aaf02010-06-28 15:05:24 -070019CC_LITE_SRC_FILES := \
Omari Stephens373caa02010-09-30 15:59:59 -070020 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
Wink Saville732aaf02010-06-28 15:05:24 -070035
Omari Stephens373caa02010-09-30 15:59:59 -070036JAVA_LITE_SRC_FILES := \
Wink Savillea3d30792010-06-04 17:44:37 -070037 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
Iain Merrickaeb2b2a2010-11-01 17:29:13 +000050COMPILER_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 \
Ulas Kirazci64d8d8f2013-03-14 16:44:33 -0700109 src/google/protobuf/compiler/javanano/javanano_enum.cc \
110 src/google/protobuf/compiler/javanano/javanano_enum_field.cc \
111 src/google/protobuf/compiler/javanano/javanano_field.cc \
112 src/google/protobuf/compiler/javanano/javanano_file.cc \
113 src/google/protobuf/compiler/javanano/javanano_generator.cc \
114 src/google/protobuf/compiler/javanano/javanano_helpers.cc \
115 src/google/protobuf/compiler/javanano/javanano_message.cc \
116 src/google/protobuf/compiler/javanano/javanano_message_field.cc \
117 src/google/protobuf/compiler/javanano/javanano_primitive_field.cc \
Iain Merrickaeb2b2a2010-11-01 17:29:13 +0000118 src/google/protobuf/compiler/python/python_generator.cc \
119 src/google/protobuf/io/coded_stream.cc \
120 src/google/protobuf/io/gzip_stream.cc \
121 src/google/protobuf/io/printer.cc \
122 src/google/protobuf/io/tokenizer.cc \
123 src/google/protobuf/io/zero_copy_stream.cc \
124 src/google/protobuf/io/zero_copy_stream_impl.cc \
125 src/google/protobuf/io/zero_copy_stream_impl_lite.cc \
126 src/google/protobuf/stubs/common.cc \
127 src/google/protobuf/stubs/hash.cc \
128 src/google/protobuf/stubs/once.cc \
129 src/google/protobuf/stubs/structurally_valid.cc \
130 src/google/protobuf/stubs/strutil.cc \
131 src/google/protobuf/stubs/substitute.cc
Omari Stephens373caa02010-09-30 15:59:59 -0700132
Ulas Kirazci64d8d8f2013-03-14 16:44:33 -0700133# Java nano library (for device-side users)
134# =======================================================
135include $(CLEAR_VARS)
136
137LOCAL_MODULE := libprotobuf-java-2.3.0-nano
138LOCAL_MODULE_TAGS := optional
139LOCAL_SDK_VERSION := 8
140
141LOCAL_SRC_FILES := $(call all-java-files-under, java/src/main/java/com/google/protobuf/nano)
142
143include $(BUILD_STATIC_JAVA_LIBRARY)
144
145# Java nano library (for host-side users)
146# =======================================================
147include $(CLEAR_VARS)
148
149LOCAL_MODULE := host-libprotobuf-java-2.3.0-nano
150LOCAL_MODULE_TAGS := optional
151
152LOCAL_SRC_FILES := $(call all-java-files-under, java/src/main/java/com/google/protobuf/nano)
153
154include $(BUILD_HOST_JAVA_LIBRARY)
155
Omari Stephens373caa02010-09-30 15:59:59 -0700156# Java micro library (for device-side users)
157# =======================================================
158include $(CLEAR_VARS)
159
160LOCAL_MODULE := libprotobuf-java-2.3.0-micro
Jean-Baptiste Querub854f4d2010-10-05 10:26:11 -0700161LOCAL_MODULE_TAGS := optional
Ying Wang770e6592011-01-26 13:37:44 -0800162LOCAL_SDK_VERSION := 8
Omari Stephens373caa02010-09-30 15:59:59 -0700163
164LOCAL_SRC_FILES := $(call all-java-files-under, java/src/main/java/com/google/protobuf/micro)
165
Wink Savillea3d30792010-06-04 17:44:37 -0700166include $(BUILD_STATIC_JAVA_LIBRARY)
167
Omari Stephens373caa02010-09-30 15:59:59 -0700168# Java micro library (for host-side users)
169# =======================================================
170include $(CLEAR_VARS)
171
172LOCAL_MODULE := host-libprotobuf-java-2.3.0-micro
173LOCAL_MODULE_TAGS := optional
174
175LOCAL_SRC_FILES := $(call all-java-files-under, java/src/main/java/com/google/protobuf/micro)
176
177include $(BUILD_HOST_JAVA_LIBRARY)
178
179# Java lite library (for device-side users)
180# =======================================================
181include $(CLEAR_VARS)
182
183LOCAL_MODULE := libprotobuf-java-2.3.0-lite
Jean-Baptiste Querub854f4d2010-10-05 10:26:11 -0700184LOCAL_MODULE_TAGS := optional
Ying Wang770e6592011-01-26 13:37:44 -0800185LOCAL_SDK_VERSION := 8
Omari Stephens373caa02010-09-30 15:59:59 -0700186
187LOCAL_SRC_FILES := $(JAVA_LITE_SRC_FILES)
188
189include $(BUILD_STATIC_JAVA_LIBRARY)
190
191# Java lite library (for host-side users)
192# =======================================================
193include $(CLEAR_VARS)
194
195LOCAL_MODULE := host-libprotobuf-java-2.3.0-lite
196LOCAL_MODULE_TAGS := optional
197
198LOCAL_SRC_FILES := $(JAVA_LITE_SRC_FILES)
199
200include $(BUILD_HOST_JAVA_LIBRARY)
201
Wink Savilleb3fe74b2010-06-03 15:33:07 -0700202# C++ lite library
203# =======================================================
204include $(CLEAR_VARS)
205
206LOCAL_MODULE := libprotobuf-cpp-2.3.0-lite
Jean-Baptiste Querub854f4d2010-10-05 10:26:11 -0700207LOCAL_MODULE_TAGS := optional
Wink Savilleb3fe74b2010-06-03 15:33:07 -0700208
209LOCAL_CPP_EXTENSION := .cc
210
Wink Saville732aaf02010-06-28 15:05:24 -0700211LOCAL_SRC_FILES := $(CC_LITE_SRC_FILES)
Wink Savilleb3fe74b2010-06-03 15:33:07 -0700212
213LOCAL_C_INCLUDES := \
214 $(LOCAL_PATH)/android \
Wink Savilleb3fe74b2010-06-03 15:33:07 -0700215 $(LOCAL_PATH)/src
216
Wink Savilleb3fe74b2010-06-03 15:33:07 -0700217# Define the header files to be copied
218#LOCAL_COPY_HEADERS := \
219# src/google/protobuf/stubs/once.h \
220# src/google/protobuf/stubs/common.h \
221# src/google/protobuf/io/coded_stream.h \
222# src/google/protobuf/generated_message_util.h \
223# src/google/protobuf/repeated_field.h \
224# src/google/protobuf/extension_set.h \
225# src/google/protobuf/wire_format_lite_inl.h
226#
227#LOCAL_COPY_HEADERS_TO := $(LOCAL_MODULE)
228
229LOCAL_CFLAGS := -DGOOGLE_PROTOBUF_NO_RTTI
230
Ying Wang77f19bf2012-06-14 18:32:34 -0700231# These are the minimum versions and don't need to be update.
Ying Wang082bf442012-09-06 11:35:34 -0700232ifeq ($(TARGET_ARCH),arm)
Ying Wang77f19bf2012-06-14 18:32:34 -0700233LOCAL_SDK_VERSION := 8
Ying Wangf6da5802012-08-14 10:28:02 -0700234else
Ying Wang082bf442012-09-06 11:35:34 -0700235# x86/mips support only available from API 9.
236LOCAL_SDK_VERSION := 9
Ying Wang77f19bf2012-06-14 18:32:34 -0700237endif
Ying Wang082bf442012-09-06 11:35:34 -0700238LOCAL_NDK_STL_VARIANT := stlport_static
Ying Wang77f19bf2012-06-14 18:32:34 -0700239
Wink Savilleb3fe74b2010-06-03 15:33:07 -0700240include $(BUILD_STATIC_LIBRARY)
Wink Saville732aaf02010-06-28 15:05:24 -0700241
242# C++ full library
243# =======================================================
Przemyslaw Szczepaniaka939d662012-11-06 14:42:21 +0000244protobuf_cc_full_src_files := \
Omari Stephens373caa02010-09-30 15:59:59 -0700245 $(CC_LITE_SRC_FILES) \
246 src/google/protobuf/stubs/strutil.cc \
247 src/google/protobuf/stubs/strutil.h \
248 src/google/protobuf/stubs/substitute.cc \
249 src/google/protobuf/stubs/substitute.h \
250 src/google/protobuf/stubs/structurally_valid.cc \
251 src/google/protobuf/descriptor.cc \
252 src/google/protobuf/descriptor.pb.cc \
253 src/google/protobuf/descriptor_database.cc \
254 src/google/protobuf/dynamic_message.cc \
255 src/google/protobuf/extension_set_heavy.cc \
256 src/google/protobuf/generated_message_reflection.cc \
257 src/google/protobuf/message.cc \
258 src/google/protobuf/reflection_ops.cc \
259 src/google/protobuf/service.cc \
260 src/google/protobuf/text_format.cc \
261 src/google/protobuf/unknown_field_set.cc \
262 src/google/protobuf/wire_format.cc \
263 src/google/protobuf/io/gzip_stream.cc \
264 src/google/protobuf/io/printer.cc \
265 src/google/protobuf/io/tokenizer.cc \
266 src/google/protobuf/io/zero_copy_stream_impl.cc \
267 src/google/protobuf/compiler/importer.cc \
268 src/google/protobuf/compiler/parser.cc
Wink Saville732aaf02010-06-28 15:05:24 -0700269
Przemyslaw Szczepaniaka939d662012-11-06 14:42:21 +0000270# C++ full library - stlport version
271# =======================================================
272include $(CLEAR_VARS)
273
274LOCAL_MODULE := libprotobuf-cpp-2.3.0-full
275LOCAL_MODULE_TAGS := optional
276LOCAL_CPP_EXTENSION := .cc
277LOCAL_SRC_FILES := $(protobuf_cc_full_src_files)
Wink Saville732aaf02010-06-28 15:05:24 -0700278LOCAL_C_INCLUDES := \
279 $(LOCAL_PATH)/android \
Wink Saville732aaf02010-06-28 15:05:24 -0700280 external/zlib \
281 $(LOCAL_PATH)/src
282
Wink Saville732aaf02010-06-28 15:05:24 -0700283# Define the header files to be copied
284#LOCAL_COPY_HEADERS := \
285# src/google/protobuf/stubs/once.h \
286# src/google/protobuf/stubs/common.h \
287# src/google/protobuf/io/coded_stream.h \
288# src/google/protobuf/generated_message_util.h \
289# src/google/protobuf/repeated_field.h \
290# src/google/protobuf/extension_set.h \
291# src/google/protobuf/wire_format_lite_inl.h
292#
293#LOCAL_COPY_HEADERS_TO := $(LOCAL_MODULE)
294
295LOCAL_CFLAGS := -DGOOGLE_PROTOBUF_NO_RTTI
296
Ying Wang77f19bf2012-06-14 18:32:34 -0700297# These are the minimum versions and don't need to be update.
Ying Wang082bf442012-09-06 11:35:34 -0700298ifeq ($(TARGET_ARCH),arm)
Ying Wang77f19bf2012-06-14 18:32:34 -0700299LOCAL_SDK_VERSION := 8
Ying Wangf6da5802012-08-14 10:28:02 -0700300else
Ying Wang082bf442012-09-06 11:35:34 -0700301# x86/mips support only available from API 9.
302LOCAL_SDK_VERSION := 9
Ying Wang77f19bf2012-06-14 18:32:34 -0700303endif
Ying Wang082bf442012-09-06 11:35:34 -0700304LOCAL_NDK_STL_VARIANT := stlport_static
Ying Wang77f19bf2012-06-14 18:32:34 -0700305
Wink Saville732aaf02010-06-28 15:05:24 -0700306include $(BUILD_STATIC_LIBRARY)
Iain Merrickaeb2b2a2010-11-01 17:29:13 +0000307
Przemyslaw Szczepaniaka939d662012-11-06 14:42:21 +0000308# C++ full library - Gnustl+rtti version
309# =======================================================
310include $(CLEAR_VARS)
311
312LOCAL_MODULE := libprotobuf-cpp-2.3.0-full-gnustl-rtti
313LOCAL_MODULE_TAGS := optional
314LOCAL_CPP_EXTENSION := .cc
315LOCAL_SRC_FILES := $(protobuf_cc_full_src_files)
316LOCAL_C_INCLUDES := \
317 $(LOCAL_PATH)/android \
318 external/zlib \
319 $(LOCAL_PATH)/src
320
321LOCAL_CFLAGS := -frtti
322LOCAL_SDK_VERSION := 14
323LOCAL_NDK_STL_VARIANT := gnustl_static
324
325include $(BUILD_STATIC_LIBRARY)
326
327# Clean temp vars
328protobuf_cc_full_src_files :=
329
330
Wink Saville8d24c6a2010-11-05 11:28:46 -0700331# Android Protocol buffer compiler, aprotoc (host executable)
332# used by the build systems as $(PROTOC) defined in
333# build/core/config.mk
Iain Merrickaeb2b2a2010-11-01 17:29:13 +0000334# =======================================================
335include $(CLEAR_VARS)
336
Wink Saville8d24c6a2010-11-05 11:28:46 -0700337LOCAL_MODULE := aprotoc
Iain Merrickaeb2b2a2010-11-01 17:29:13 +0000338LOCAL_MODULE_CLASS := EXECUTABLES
339LOCAL_MODULE_TAGS := optional
340
341LOCAL_CPP_EXTENSION := .cc
342LOCAL_SRC_FILES := $(COMPILER_SRC_FILES)
343
344LOCAL_C_INCLUDES := \
345 $(LOCAL_PATH)/android \
346 $(LOCAL_PATH)/src
347
348LOCAL_STATIC_LIBRARIES += libz
349LOCAL_LDLIBS := -lpthread
350
351include $(BUILD_HOST_EXECUTABLE)