blob: bb8c3af2b40524784982bc8847c10d2f983a8a9e [file] [log] [blame]
Dan Willemsen63aa47a2015-09-16 15:54:14 -07001//
2// Copyright (C) 2008-2014 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
Mark Salyzyn93101be2016-03-01 13:45:42 -080017liblog_sources = [
Mark Salyzyn71002882016-03-08 16:18:26 -080018 "config_read.c",
Mark Salyzyn62d0d2d2016-03-08 16:18:26 -080019 "config_write.c",
Mark Salyzyn71002882016-03-08 16:18:26 -080020 "local_logger.c",
Mark Salyzyn93101be2016-03-01 13:45:42 -080021 "log_event_list.c",
Dan Willemsen63aa47a2015-09-16 15:54:14 -070022 "log_event_write.c",
Mark Salyzynfc148f72016-12-14 12:52:50 -080023 "log_ratelimit.cpp",
Mark Salyzyn62d0d2d2016-03-08 16:18:26 -080024 "logger_lock.c",
25 "logger_name.c",
Mark Salyzyn71002882016-03-08 16:18:26 -080026 "logger_read.c",
Mark Salyzyn62d0d2d2016-03-08 16:18:26 -080027 "logger_write.c",
28 "logprint.c",
Mark Salyzyn4d99c982017-02-28 12:59:01 -080029 "stderr_write.c",
Mark Salyzyn93101be2016-03-01 13:45:42 -080030]
31liblog_host_sources = [
Dan Willemsen63aa47a2015-09-16 15:54:14 -070032 "fake_log_device.c",
Mark Salyzyn93101be2016-03-01 13:45:42 -080033 "fake_writer.c",
Dan Willemsen63aa47a2015-09-16 15:54:14 -070034]
35liblog_target_sources = [
Mark Salyzyned9dc8a2016-11-21 12:00:03 -080036 "event_tag_map.cpp",
Dan Willemsen63aa47a2015-09-16 15:54:14 -070037 "log_time.cpp",
Mark Salyzyn774e04f2016-12-14 12:52:50 -080038 "properties.c",
Mark Salyzyn93101be2016-03-01 13:45:42 -080039 "pmsg_reader.c",
40 "pmsg_writer.c",
41 "logd_reader.c",
42 "logd_writer.c",
Dan Willemsen63aa47a2015-09-16 15:54:14 -070043]
44
45// Shared and static library for host and device
46// ========================================================
47cc_library {
48 name: "liblog",
49 host_supported: true,
50
Mark Salyzyn93101be2016-03-01 13:45:42 -080051 srcs: liblog_sources,
52
Dan Willemsen63aa47a2015-09-16 15:54:14 -070053 target: {
54 host: {
55 srcs: liblog_host_sources,
56 cflags: ["-DFAKE_LOG_DEVICE=1"],
57 },
58 android: {
59 srcs: liblog_target_sources,
60 // AddressSanitizer runtime library depends on liblog.
Colin Cross5d35ce62016-04-07 13:30:22 -070061 sanitize: {
Evgenii Stepanovffdabdc2016-11-29 15:02:30 -080062 address: false,
Colin Cross5d35ce62016-04-07 13:30:22 -070063 },
Dan Willemsen63aa47a2015-09-16 15:54:14 -070064 },
65 android_arm: {
Dmitriy Ivanov58558a52015-09-28 10:40:35 -070066 // TODO: This is to work around b/24465209. Remove after root cause is fixed
Dan Willemsen63aa47a2015-09-16 15:54:14 -070067 ldflags: ["-Wl,--hash-style=both"],
68 },
69 windows: {
70 srcs: ["uio.c"],
Dan Willemsena3f41bf2015-11-30 15:35:09 -080071 enabled: true,
Dan Willemsen63aa47a2015-09-16 15:54:14 -070072 },
73 not_windows: {
Mark Salyzyned9dc8a2016-11-21 12:00:03 -080074 srcs: ["event_tag_map.cpp"],
Dan Willemsen63aa47a2015-09-16 15:54:14 -070075 },
76 linux: {
77 host_ldlibs: ["-lrt"],
78 },
Dan Willemsen0910d2d2016-11-29 13:39:55 -080079 linux_bionic: {
80 enabled: true,
81 },
Dan Willemsen63aa47a2015-09-16 15:54:14 -070082 },
83
Vijay Venkatraman651f8382017-01-25 18:52:17 +000084 export_include_dirs: ["include"],
85
Dan Willemsen63aa47a2015-09-16 15:54:14 -070086 cflags: [
87 "-Werror",
Mark Salyzyn93101be2016-03-01 13:45:42 -080088 "-fvisibility=hidden",
Dan Willemsen63aa47a2015-09-16 15:54:14 -070089 // This is what we want to do:
90 // liblog_cflags := $(shell \
91 // sed -n \
92 // 's/^\([0-9]*\)[ \t]*liblog[ \t].*/-DLIBLOG_LOG_TAG=\1/p' \
93 // $(LOCAL_PATH)/event.logtags)
94 // so make sure we do not regret hard-coding it as follows:
Mark Salyzyn9633b912016-09-12 14:51:48 -070095 "-DLIBLOG_LOG_TAG=1006",
Mark Salyzyn7ef52492016-03-25 15:50:46 -070096 "-DSNET_EVENT_LOG_TAG=1397638484",
Dan Willemsen63aa47a2015-09-16 15:54:14 -070097 ],
Dan Willemsend1191012016-06-01 15:32:35 -070098 logtags: ["event.logtags"],
Dan Willemsen63aa47a2015-09-16 15:54:14 -070099 compile_multilib: "both",
Dan Willemsen63aa47a2015-09-16 15:54:14 -0700100}
Dan Albertddce8c72016-09-23 15:43:23 -0700101
Dan Albertb7c39962016-10-05 13:47:31 -0700102ndk_headers {
103 name: "liblog_headers",
Mark Salyzynbdac2212016-12-21 23:15:24 +0000104 from: "include/android",
Dan Albertb7c39962016-10-05 13:47:31 -0700105 to: "android",
Mark Salyzynbdac2212016-12-21 23:15:24 +0000106 srcs: ["include/android/log.h"],
Dan Albert286b2ea2016-10-20 10:18:27 -0700107 license: "NOTICE",
Dan Albertb7c39962016-10-05 13:47:31 -0700108}
109
Vijay Venkatraman651f8382017-01-25 18:52:17 +0000110cc_library_headers {
111 name: "liblog_vndk_headers",
112 export_include_dirs: ["include_vndk"],
113}
114
Dan Albertddce8c72016-09-23 15:43:23 -0700115ndk_library {
116 name: "liblog.ndk",
117 symbol_file: "liblog.map.txt",
118 first_version: "9",
Dan Albert9a41bce2017-01-05 15:55:49 -0800119 unversioned_until: "current",
Dan Albertddce8c72016-09-23 15:43:23 -0700120}