blob: 0d7925a4a057a226fd5c70c1d2b8bf27c1ce25bd [file] [log] [blame]
Dan Willemsen2e1591b2016-07-12 17:20:18 -07001// Copyright (C) 2008 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
Vijay Venkatraman75acc7b2017-01-05 10:39:38 -080015cc_library_headers {
16 name: "libutils_headers",
Steven Moreland91527ed2017-04-11 12:43:16 -070017 vendor_available: true,
Vijay Venkatraman75acc7b2017-01-05 10:39:38 -080018 host_supported: true,
Steven Morelandd3b4b2c2017-04-13 21:01:40 -070019
Jaesoo Lee1e8ac0f2017-04-20 16:56:45 +090020 header_libs: [
Steven Moreland95d7cbb2017-07-10 16:40:36 -070021 "liblog_headers",
Jaesoo Lee1e8ac0f2017-04-20 16:56:45 +090022 "libsystem_headers",
Elliott Hughesdc699a22018-02-16 17:58:14 -080023 "libcutils_headers",
Jaesoo Lee1e8ac0f2017-04-20 16:56:45 +090024 ],
25 export_header_lib_headers: [
Steven Moreland95d7cbb2017-07-10 16:40:36 -070026 "liblog_headers",
Jaesoo Lee1e8ac0f2017-04-20 16:56:45 +090027 "libsystem_headers",
Elliott Hughesdc699a22018-02-16 17:58:14 -080028 "libcutils_headers",
Jaesoo Lee1e8ac0f2017-04-20 16:56:45 +090029 ],
Vijay Venkatraman75acc7b2017-01-05 10:39:38 -080030 export_include_dirs: ["include"],
Steven Morelandd3b4b2c2017-04-13 21:01:40 -070031
Vijay Venkatraman75acc7b2017-01-05 10:39:38 -080032 target: {
Steven Morelandd3b4b2c2017-04-13 21:01:40 -070033 android: {
34 header_libs: ["libbacktrace_headers"],
35 export_header_lib_headers: ["libbacktrace_headers"],
36 },
Dan Willemsene0cd1e02017-03-15 15:23:36 -070037 linux_bionic: {
38 enabled: true,
39 },
Vijay Venkatraman75acc7b2017-01-05 10:39:38 -080040 windows: {
Dan Willemsene0cd1e02017-03-15 15:23:36 -070041 enabled: true,
42 },
Vijay Venkatraman75acc7b2017-01-05 10:39:38 -080043 },
44}
45
David Sehrabfb9f32018-01-17 17:07:09 -080046cc_defaults {
47 name: "libutils_defaults",
Steven Moreland91527ed2017-04-11 12:43:16 -070048 vendor_available: true,
Justin Yun9ca92452017-07-31 15:41:10 +090049 vndk: {
50 enabled: true,
51 support_system_process: true,
52 },
Dan Willemsen2e1591b2016-07-12 17:20:18 -070053 host_supported: true,
54
Elliott Hughesdc699a22018-02-16 17:58:14 -080055 cflags: [
56 "-Wall",
57 "-Werror",
58 ],
Dan Willemsen2e1591b2016-07-12 17:20:18 -070059 include_dirs: ["external/safe-iop/include"],
Steven Morelandb084bc32017-04-12 18:57:57 -070060 header_libs: [
Steven Morelandb084bc32017-04-12 18:57:57 -070061 "libutils_headers",
62 ],
63 export_header_lib_headers: [
Steven Morelandb084bc32017-04-12 18:57:57 -070064 "libutils_headers",
65 ],
Dan Willemsen2e1591b2016-07-12 17:20:18 -070066
Steven Moreland1f642412017-06-26 13:52:06 -070067 shared_libs: [
68 "liblog",
69 ],
Steven Moreland1f642412017-06-26 13:52:06 -070070
Dan Willemsen2e1591b2016-07-12 17:20:18 -070071 arch: {
72 mips: {
73 cflags: ["-DALIGN_DOUBLE"],
74 },
75 },
76
77 target: {
78 android: {
Dan Willemsen2e1591b2016-07-12 17:20:18 -070079 cflags: ["-fvisibility=protected"],
80
81 shared_libs: [
Dan Willemsen2e1591b2016-07-12 17:20:18 -070082 "libcutils",
83 "libdl",
Jiyong Park0b3c24b2017-05-26 17:57:18 +090084 "libvndksupport",
Dan Willemsen2e1591b2016-07-12 17:20:18 -070085 ],
Dan Willemsene16bdb12016-07-13 00:20:20 -070086
87 sanitize: {
88 misc_undefined: ["integer"],
89 },
Dan Willemsen2e1591b2016-07-12 17:20:18 -070090 },
91
92 host: {
93 cflags: ["-DLIBUTILS_NATIVE=1"],
94
95 shared: {
96 enabled: false,
97 },
98 },
99
Dan Willemsenab34b472016-11-29 13:32:55 -0800100 linux_bionic: {
101 enabled: true,
Dan Willemsenab34b472016-11-29 13:32:55 -0800102 },
Dan Willemsen2e1591b2016-07-12 17:20:18 -0700103
104 darwin: {
105 cflags: ["-Wno-unused-parameter"],
106 },
107
Dan Willemsen2e1591b2016-07-12 17:20:18 -0700108 windows: {
Dan Willemsen528f1442017-11-29 18:06:11 -0800109 cflags: [
110 // Under MinGW, ctype.h doesn't need multi-byte support
111 "-DMB_CUR_MAX=1",
112 "-Wno-unused-private-field",
113 ],
Dan Willemsen2e1591b2016-07-12 17:20:18 -0700114
115 enabled: true,
116 },
117 },
Dan Willemsen2e1591b2016-07-12 17:20:18 -0700118}
119
David Sehrabfb9f32018-01-17 17:07:09 -0800120cc_library {
121 name: "libutils",
122 defaults: ["libutils_defaults"],
123
124 srcs: [
125 "FileMap.cpp",
126 "JenkinsHash.cpp",
127 "NativeHandle.cpp",
128 "Printer.cpp",
129 "PropertyMap.cpp",
130 "RefBase.cpp",
131 "SharedBuffer.cpp",
David Sehrabfb9f32018-01-17 17:07:09 -0800132 "StopWatch.cpp",
133 "String8.cpp",
134 "String16.cpp",
135 "StrongPointer.cpp",
136 "SystemClock.cpp",
137 "Threads.cpp",
138 "Timers.cpp",
139 "Tokenizer.cpp",
140 "Unicode.cpp",
141 "VectorImpl.cpp",
142 "misc.cpp",
143 ],
144
145 target: {
146 android: {
147 srcs: [
148 "Trace.cpp",
149 ],
150 },
151 linux: {
152 srcs: [
153 "Looper.cpp",
154 ],
155 },
156 },
157}
158
159cc_library {
160 name: "libutilscallstack",
161 defaults: ["libutils_defaults"],
162
163 srcs: [
164 "CallStack.cpp",
165 ],
166
167 arch: {
168 mips: {
169 cflags: ["-DALIGN_DOUBLE"],
170 },
171 },
172
173 target: {
174 android: {
175 shared_libs: [
176 "libutils",
177 "libbacktrace",
178 ],
179 },
180 linux: {
181 srcs: [
182 "ProcessCallStack.cpp",
183 ],
184 },
185 },
186}
187
Dan Willemsen2e1591b2016-07-12 17:20:18 -0700188// Include subdirectory makefiles
189// ============================================================
190
191cc_test {
192 name: "SharedBufferTest",
193 host_supported: true,
Colin Cross2fedbf72016-07-12 23:43:18 -0700194 static_libs: ["libutils"],
Dan Willemsen2e1591b2016-07-12 17:20:18 -0700195 shared_libs: ["liblog"],
196 srcs: ["SharedBufferTest.cpp"],
Elliott Hughesdc699a22018-02-16 17:58:14 -0800197 cflags: [
198 "-Wall",
199 "-Werror",
200 ],
Dan Willemsen2e1591b2016-07-12 17:20:18 -0700201}