diff --git a/Android.bp b/Android.bp index 81d6dab8ac17..4f2e6d0dbf42 100644 --- a/Android.bp +++ b/Android.bp @@ -12,6 +12,44 @@ // See the License for the specific language governing permissions and // limitations under the License. +// ==== c++ proto device library ============================== +cc_library { + name: "libplatformprotos", + host_supported: true, + // b/34740546, work around clang-tidy segmentation fault. + tidy_checks: ["-modernize*"], + proto: { + export_proto_headers: true, + include_dirs: ["external/protobuf/src"], + }, + + target: { + host: { + proto: { + type: "full", + }, + }, + android: { + proto: { + type: "lite", + }, + shared: { + // The proto files generate full protos, but we only use + // them as lite on device. This works fine for a static + // library, where the unused full symbols are stripped, + // but fails if it is linked as a standalone shared + // library because it is missing the full runtime. + enabled: false, + }, + }, + }, + + srcs: [ + "core/proto/**/*.proto", + "libs/incident/**/*.proto", + ], +} + subdirs = [ "libs/*", "tools/*", diff --git a/Android.mk b/Android.mk index 6e75bea0520d..06c18588ac66 100644 --- a/Android.mk +++ b/Android.mk @@ -1477,35 +1477,6 @@ endif include $(BUILD_JAVA_LIBRARY) -# ==== c++ proto device library ============================== -include $(CLEAR_VARS) -LOCAL_MODULE := libplatformprotos -# b/34740546, work around clang-tidy segmentation fault. -LOCAL_TIDY_CHECKS := -modernize* -LOCAL_PROTOC_OPTIMIZE_TYPE := lite -LOCAL_PROTOC_FLAGS := \ - --include_source_info \ - -Iexternal/protobuf/src -LOCAL_SRC_FILES := \ - $(call all-proto-files-under, core/proto) \ - $(call all-proto-files-under, libs/incident/proto) -include $(BUILD_STATIC_LIBRARY) - -# ==== c++ proto host library ============================== -include $(CLEAR_VARS) -LOCAL_MODULE := libplatformprotos -# b/34740546, work around clang-tidy segmentation fault. -LOCAL_TIDY_CHECKS := -modernize* -LOCAL_PROTOC_OPTIMIZE_TYPE := full -LOCAL_PROTOC_FLAGS := \ - --include_source_info \ - -Iexternal/protobuf/src -LOCAL_SRC_FILES := \ - $(call all-proto-files-under, core/proto) \ - $(call all-proto-files-under, libs/incident/proto) -include $(BUILD_HOST_SHARED_LIBRARY) - - # ==== java proto host library ============================== include $(CLEAR_VARS) LOCAL_MODULE := platformprotos