platform_system_core/libcutils/Android.bp
Isaac Chen 795267d4c7 Removed cpusets/schedboost build time dependency.
These two Soong product_variables were usually controlled by
ENABLE_CPUSETS and ENABLE_SCHEDBOOST in BoardConfig.mk. This change
turns the build time variables into runtime decision by checking if
a special file, "tasks", can be found under the mount points,
/dev/cpuset and /dev/stune, for cpusets and schedboost, respectively.

That special file only exists when the corresponding Linux kernel
configurations, CONFIG_CPUSETS and CONFIG_SCHEDTUNE, are set.

Bug: 34726944

Test: Tested on Sailfish with following configurations
          neither cpuset nor schedtune enabled in the kernel
          cpuset enabled, but schedtune disabled in the kernel
          both cpuset and schedtune enabled in the kernel

Change-Id: I6695b8b32b2fecb4fd995018418bbe2edc5d590f
2017-02-20 20:53:24 +08:00

153 lines
3.7 KiB
Text

//
// 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.
//
// some files must not be compiled when building against Mingw
// they correspond to features not used by our host development tools
// which are also hard or even impossible to port to native Win32
libcutils_nonwindows_sources = [
"android_get_control_file.cpp",
"fs.c",
"multiuser.c",
"socket_inaddr_any_server_unix.c",
"socket_local_client_unix.c",
"socket_local_server_unix.c",
"socket_loopback_server_unix.c",
"socket_network_client_unix.c",
"sockets_unix.cpp",
"str_parms.c",
]
cc_library_headers {
name: "libcutils_vndk_headers",
host_supported: true,
export_include_dirs: ["include_vndk"],
}
cc_library_headers {
name: "libcutils_headers",
host_supported: true,
export_include_dirs: ["include"],
target: {
windows: {
enabled: true,
},
},
}
cc_library {
name: "libcutils",
host_supported: true,
srcs: [
"config_utils.c",
"fs_config.c",
"canned_fs_config.c",
"hashmap.c",
"iosched_policy.c",
"load_file.c",
"native_handle.c",
"open_memstream.c",
"record_stream.c",
"sched_policy.cpp",
"sockets.cpp",
"strdup16to8.c",
"strdup8to16.c",
"strlcpy.c",
"threads.c",
],
target: {
host: {
srcs: ["dlmalloc_stubs.c"],
},
not_windows: {
srcs: libcutils_nonwindows_sources + [
"ashmem-host.c",
"trace-host.c",
],
},
windows: {
srcs: [
"socket_inaddr_any_server_windows.c",
"socket_network_client_windows.c",
"sockets_windows.cpp",
],
enabled: true,
shared: {
enabled: false,
},
},
android: {
srcs: libcutils_nonwindows_sources + [
"android_reboot.c",
"ashmem-dev.c",
"klog.cpp",
"partition_utils.c",
"properties.cpp",
"qtaguid.c",
"trace-dev.c",
"uevent.c",
],
sanitize: {
misc_undefined: ["integer"],
},
},
android_arm: {
srcs: ["arch-arm/memset32.S"],
},
android_arm64: {
srcs: ["arch-arm64/android_memset.S"],
},
android_mips: {
srcs: ["arch-mips/android_memset.c"],
},
android_mips64: {
srcs: ["arch-mips/android_memset.c"],
},
android_x86: {
srcs: [
"arch-x86/android_memset16.S",
"arch-x86/android_memset32.S",
],
},
android_x86_64: {
srcs: [
"arch-x86_64/android_memset16.S",
"arch-x86_64/android_memset32.S",
],
},
},
shared_libs: ["liblog"],
header_libs: ["libcutils_headers"],
export_header_lib_headers: ["libcutils_headers"],
cflags: [
"-Werror",
"-Wall",
"-Wextra",
],
clang: true,
}
subdirs = ["tests"]