blob: 2be5d9896ef5114ad5e41f48bade23ce97059c65 [file] [log] [blame]
// Copyright (C) 2008 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
cc_library_headers {
name: "libutils_headers",
vendor_available: true,
host_supported: true,
header_libs: [
"liblog_headers",
"libsystem_headers",
"libcutils_headers"
],
export_header_lib_headers: [
"liblog_headers",
"libsystem_headers",
"libcutils_headers"
],
export_include_dirs: ["include"],
target: {
android: {
header_libs: ["libbacktrace_headers"],
export_header_lib_headers: ["libbacktrace_headers"],
},
linux_bionic: {
enabled: true,
},
windows: {
enabled: true,
},
},
}
cc_defaults {
name: "libutils_defaults",
vendor_available: true,
vndk: {
enabled: true,
support_system_process: true,
},
host_supported: true,
cflags: ["-Wall", "-Werror"],
include_dirs: ["external/safe-iop/include"],
header_libs: [
"libutils_headers",
],
export_header_lib_headers: [
"libutils_headers",
],
shared_libs: [
"liblog",
],
arch: {
mips: {
cflags: ["-DALIGN_DOUBLE"],
},
},
target: {
android: {
cflags: ["-fvisibility=protected"],
shared_libs: [
"libcutils",
"libdl",
"libvndksupport",
],
sanitize: {
misc_undefined: ["integer"],
},
},
host: {
cflags: ["-DLIBUTILS_NATIVE=1"],
shared: {
enabled: false,
},
},
linux_bionic: {
enabled: true,
},
darwin: {
cflags: ["-Wno-unused-parameter"],
},
windows: {
cflags: [
// Under MinGW, ctype.h doesn't need multi-byte support
"-DMB_CUR_MAX=1",
"-Wno-unused-private-field",
],
enabled: true,
},
},
}
cc_library {
name: "libutils",
defaults: ["libutils_defaults"],
srcs: [
"FileMap.cpp",
"JenkinsHash.cpp",
"NativeHandle.cpp",
"Printer.cpp",
"PropertyMap.cpp",
"RefBase.cpp",
"SharedBuffer.cpp",
"Static.cpp",
"StopWatch.cpp",
"String8.cpp",
"String16.cpp",
"StrongPointer.cpp",
"SystemClock.cpp",
"Threads.cpp",
"Timers.cpp",
"Tokenizer.cpp",
"Unicode.cpp",
"VectorImpl.cpp",
"misc.cpp",
],
target: {
android: {
srcs: [
"Trace.cpp",
],
},
linux: {
srcs: [
"Looper.cpp",
],
},
},
}
cc_library {
name: "libutilscallstack",
defaults: ["libutils_defaults"],
vendor_available: false,
srcs: [
"CallStack.cpp",
],
arch: {
mips: {
cflags: ["-DALIGN_DOUBLE"],
},
},
target: {
android: {
shared_libs: [
"libutils",
"libbacktrace",
],
},
linux: {
srcs: [
"ProcessCallStack.cpp",
],
},
},
}
// Include subdirectory makefiles
// ============================================================
cc_test {
name: "SharedBufferTest",
host_supported: true,
static_libs: ["libutils"],
shared_libs: ["liblog"],
srcs: ["SharedBufferTest.cpp"],
cflags: ["-Wall", "-Werror"],
}
subdirs = ["tests"]