/* * Copyright (C) 2017 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. */ package { default_applicable_licenses: ["system_chre_license"], } // Added automatically by a large-scale-change that took the approach of // 'apply every license found to every target'. While this makes sure we respect // every license restriction, it may not be entirely correct. // // e.g. GPL in an MIT project might only apply to the contrib/ directory. // // Please consider splitting the single license below into multiple licenses, // taking care not to lose any license_kind information, and overriding the // default license using the 'licenses: [...]' property on targets as needed. // // For unused files, consider creating a 'fileGroup' with "//visibility:private" // to attach the license to, and including a comment whether the files may be // used in the current project. // See: http://go/android-license-faq license { name: "system_chre_license", visibility: [":__subpackages__"], license_kinds: [ "SPDX-license-identifier-Apache-2.0", "SPDX-license-identifier-BSD", ], license_text: [ "NOTICE", ], } cc_library_static { name: "chre_client", vendor_available: true, export_include_dirs: [ "host/common/include", "platform/shared/include", "util/include", ], srcs: [ "host/common/fragmented_load_transaction.cc", "host/common/host_protocol_host.cc", "host/common/socket_client.cc", "platform/shared/host_protocol_common.cc", ], header_libs: ["chre_flatbuffers"], export_header_lib_headers: ["chre_flatbuffers"], shared_libs: [ "libcutils", "liblog", "libutils", ], cflags: ["-Wall", "-Werror"], } cc_binary { name: "chre_test_client", vendor: true, local_include_dirs: [ "chre_api/include/chre_api", "util/include", ], srcs: [ "host/common/test/chre_test_client.cc", ], cflags: ["-Wall", "-Werror"], shared_libs: [ "libcutils", "liblog", "libutils", ], static_libs: ["chre_client"], } cc_binary { name: "chre_power_test_client", vendor: true, local_include_dirs: [ "chre_api/include/chre_api", "util/include", "apps/power_test/common/include", ], srcs: [ "host/common/test/power_test/chre_power_test_client.cc", ], cflags: ["-Wall", "-Werror"], shared_libs: [ "libcutils", "liblog", "libutils", ], static_libs: ["chre_client"], } cc_test { name: "audio_stress_test", vendor: true, local_include_dirs: [ "chre_api/include/chre_api", "util/include", ], srcs: [ "host/common/audio_stress_test/audio_stress_test.cc", ], cflags: ["-Wall", "-Werror"], shared_libs: [ "libcutils", "liblog", "libutils", ], static_libs: ["chre_client"], gtest: false, } cc_library_headers { name: "android.hardware.contexthub@1.X-shared-impl", vendor: true, export_include_dirs: ["host/hal_generic/common/"], cflags: ["-Wall", "-Werror"], shared_libs: [ "libcutils", "liblog", "libhidlbase", "libutils", "android.hardware.contexthub@1.0", ], static_libs: ["chre_client"], } cc_library_shared { name: "android.hardware.contexthub@1.0-impl.generic", vendor: true, relative_install_path: "hw", srcs: [ "host/hal_generic/V1_0/generic_context_hub_v1_0.cc", "host/hal_generic/common/hal_chre_socket_connection.cc", "host/hal_generic/common/permissions_util.cc", ], cflags: ["-Wall", "-Werror"], header_libs: [ "android.hardware.contexthub@1.X-shared-impl", "android.hardware.contexthub@1.X-common-utils", ], shared_libs: [ "libcutils", "liblog", "libhidlbase", "libutils", "android.hardware.contexthub@1.0", "android.hardware.contexthub@1.1", "android.hardware.contexthub@1.2", ], static_libs: ["chre_client"], } cc_binary { name: "android.hardware.contexthub@1.1-service.generic", defaults: ["hidl_defaults"], vendor: true, relative_install_path: "hw", srcs: [ "host/hal_generic/V1_1/generic_context_hub_v1_1.cc", "host/hal_generic/V1_1/service.cc", "host/hal_generic/common/context_hub_settings_util.cc", "host/hal_generic/common/hal_chre_socket_connection.cc", "host/hal_generic/common/permissions_util.cc", ], init_rc: ["host/hal_generic/V1_1/android.hardware.contexthub@1.1-service-generic.rc"], cflags: ["-Wall", "-Werror"], header_libs: [ "android.hardware.contexthub@1.X-shared-impl", "android.hardware.contexthub@1.X-common-utils", ], shared_libs: [ "libcutils", "liblog", "libhidlbase", "libutils", "android.hardware.contexthub@1.0", "android.hardware.contexthub@1.1", "android.hardware.contexthub@1.2", ], static_libs: ["chre_client"], vintf_fragments: ["host/hal_generic/V1_1/android.hardware.contexthub@1.1-generic.xml"], } cc_binary { name: "android.hardware.contexthub@1.2-service.generic", defaults: ["hidl_defaults"], vendor: true, relative_install_path: "hw", srcs: [ "host/hal_generic/V1_2/generic_context_hub_v1_2.cc", "host/hal_generic/V1_2/service.cc", "host/hal_generic/common/context_hub_settings_util.cc", "host/hal_generic/common/hal_chre_socket_connection.cc", "host/hal_generic/common/permissions_util.cc", ], init_rc: ["host/hal_generic/V1_2/android.hardware.contexthub@1.2-service-generic.rc"], cflags: ["-Wall", "-Werror"], header_libs: [ "android.hardware.contexthub@1.X-shared-impl", "android.hardware.contexthub@1.X-common-utils", ], shared_libs: [ "libcutils", "liblog", "libhidlbase", "libutils", "android.hardware.contexthub@1.0", "android.hardware.contexthub@1.1", "android.hardware.contexthub@1.2", ], static_libs: ["chre_client"], vintf_fragments: ["host/hal_generic/V1_2/android.hardware.contexthub@1.2-generic.xml"], } cc_library_static { name: "event_logger", vendor: true, host_supported: true, srcs: [ "host/hal_generic/aidl/event_logger.cc", ], local_include_dirs: [ "util/include", "host/common/include", ], shared_libs: [ "android.hardware.contexthub-V1-ndk", "libcutils", "libutils", ], header_libs: [ "chre_flatbuffers", ], cflags: [ "-Wall", "-Werror", "-DCHRE_IS_HOST_BUILD", ], } cc_test_host { name: "hal_unit_tests", vendor: true, srcs: [ "host/test/**/*_test.cc", ], local_include_dirs: [ "util/include", "host/common/include", ], static_libs: [ "android.hardware.contexthub-V1-ndk", "event_logger", "libgmock", ], shared_libs: [ "libcutils", "libutils", ], header_libs: [ "chre_flatbuffers", ], defaults: [ "chre_linux_cflags", ], cflags: [ "-Wall", "-Werror", "-DCHRE_IS_HOST_BUILD", ], } cc_binary { name: "android.hardware.contexthub-service.generic", defaults: ["hidl_defaults"], vendor: true, relative_install_path: "hw", srcs: [ "host/hal_generic/aidl/generic_context_hub_aidl.cc", "host/hal_generic/aidl/service.cc", "host/hal_generic/common/hal_chre_socket_connection.cc", "host/hal_generic/common/permissions_util.cc", ], local_include_dirs: [ "host/hal_generic/common/", "util/include", ], init_rc: ["host/hal_generic/aidl/android.hardware.contexthub-service.generic.rc"], cflags: [ "-Wall", "-Werror", "-DCHRE_MESSAGE_TO_HOST_MAX_SIZE=4000", // Needed to import CHRE APIs. "-DCHRE_HAL_SOCKET_METRICS_ENABLED", "-DCHRE_IS_HOST_BUILD", ], shared_libs: [ "android.frameworks.stats-V1-ndk", "libcutils", "liblog", "libprotobuf-cpp-lite", "libutils", "libbase", "libbinder_ndk", "android.hardware.contexthub-V1-ndk", "//hardware/google/pixel:pixelatoms-cpp", ], header_libs: [ "chre_api", ], static_libs: [ "chre_client", "event_logger", ], vintf_fragments: ["host/hal_generic/aidl/android.hardware.contexthub-service.generic.xml"], } cc_library_headers { name: "chre_api", vendor: true, export_include_dirs: [ "chre_api/include/chre_api", "chre_api/include", ], host_supported: true, } cc_library_headers { name: "chre_flatbuffers", vendor_available: true, host_supported: true, export_include_dirs: [ "external/flatbuffers/include", ], } cc_library_headers { name: "chre_pal", vendor: true, export_include_dirs: [ "pal/include", ], header_libs: [ "chre_api", ], export_header_lib_headers: [ "chre_api", ], host_supported: true, } cc_library_headers { name: "chre_test_common", vendor: true, export_include_dirs: [ "test/common/include", ], host_supported: true, } cc_library_static { name: "chre_pal_linux", vendor: true, srcs: [ "platform/shared/pal_system_api.cc", "platform/linux/assert.cc", "platform/linux/fatal_error.cc", "platform/linux/memory.cc", "platform/linux/pal_gnss.cc", "platform/linux/pal_nan.cc", "platform/linux/pal_wifi.cc", "platform/linux/pal_wwan.cc", "platform/linux/platform_log.cc", "platform/linux/system_time.cc", ], export_include_dirs: [ "platform/shared/include", "platform/include", "platform/linux/include", "util/include", ], header_libs: [ "chre_pal", ], static_libs: [ "libgtest", "libgmock", ], defaults: [ "chre_linux_cflags", ], host_supported: true, } cc_test_host { name: "chre_unit_tests", srcs: [ "core/tests/**/*.cc", "pal/tests/**/*_test.cc", "pal/util/tests/**/*.cc", "pal/util/wifi_pal_convert.c", "pal/util/wifi_scan_cache.c", "platform/tests/**/*.cc", "util/tests/**/*.cc", ], exclude_srcs: [ // Exclude slow PAL tests. "pal/tests/src/gnss_pal_impl_test.cc", ], local_include_dirs: [ "chre_api/include", "chre_api/include/chre_api", "core/include", "pal/include", "pal/tests/include", "pal/util/include", "platform/include", "platform/linux/include", "platform/shared/include", "util/include", ], cflags: [ "-DCHRE_MESSAGE_TO_HOST_MAX_SIZE=4096", "-DCHRE_MINIMUM_LOG_LEVEL=CHRE_LOG_LEVEL_DEBUG", "-DCHRE_ASSERTIONS_ENABLED=true", "-DCHRE_FILENAME=__FILE__", "-DGTEST", ], static_libs: [ "chre_linux", "libgmock", ], sanitize: { address: true, }, } cc_test_host { name: "chre_simulation_tests", srcs: [ "test/simulation/*.cc", ], local_include_dirs: [ "test/simulation/inc", "platform/shared", ], static_libs: [ "chre_linux", "chre_pal_linux", ], defaults: [ "chre_linux_cflags", ], sanitize: { address: true, }, } cc_library_static { name: "chre_linux", vendor: true, srcs: [ "core/audio_request_manager.cc", "core/ble_request_manager.cc", "core/ble_request_multiplexer.cc", "core/ble_request.cc", "core/debug_dump_manager.cc", "core/event_loop_manager.cc", "core/event_loop.cc", "core/event_ref_queue.cc", "core/event.cc", "core/gnss_manager.cc", "core/host_comms_manager.cc", "core/host_notifications.cc", "core/init.cc", "core/nanoapp.cc", "core/sensor_request_manager.cc", "core/sensor_request_multiplexer.cc", "core/sensor_request.cc", "core/sensor_type_helpers.cc", "core/sensor_type.cc", "core/sensor.cc", "core/settings.cc", "core/timer_pool.cc", "core/wifi_request_manager.cc", "core/wifi_scan_request.cc", "platform/linux/assert.cc", "platform/linux/context.cc", "platform/linux/fatal_error.cc", "platform/linux/host_link.cc", "platform/linux/memory_manager.cc", "platform/linux/memory.cc", "platform/linux/pal_audio.cc", "platform/linux/pal_ble.cc", "platform/linux/pal_gnss.cc", "platform/linux/pal_nan.cc", "platform/linux/pal_sensor.cc", "platform/linux/pal_wifi.cc", "platform/linux/platform_debug_dump_manager.cc", "platform/linux/platform_log.cc", "platform/linux/platform_nanoapp.cc", "platform/linux/platform_pal.cc", "platform/linux/platform_sensor_type_helpers.cc", "platform/linux/platform_sensor.cc", "platform/linux/power_control_manager.cc", "platform/linux/system_time.cc", "platform/linux/system_timer.cc", "platform/linux/testing/platform_audio.cc", "platform/shared/chre_api_audio.cc", "platform/shared/chre_api_ble.cc", "platform/shared/chre_api_core.cc", "platform/shared/chre_api_gnss.cc", "platform/shared/chre_api_re.cc", "platform/shared/chre_api_sensor.cc", "platform/shared/chre_api_user_settings.cc", "platform/shared/chre_api_wifi.cc", "platform/shared/log_buffer.cc", "platform/shared/memory_manager.cc", "platform/shared/pal_system_api.cc", "platform/shared/platform_ble.cc", "platform/shared/platform_gnss.cc", "platform/shared/platform_sensor_manager.cc", "platform/shared/platform_wifi.cc", "platform/shared/system_time.cc", "platform/shared/version.cc", "util/**/*.cc", ], // TODO(b/217952682) Exclude pigweed because it can't be built via // Android.bp exclude_srcs: [ "util/pigweed/*.cc", "util/tests/**/*", ], export_include_dirs: [ "chre_api/include", "chre_api/include/chre_api", "core/include", "pal/include", "pal/util/include", "platform/linux/include", "platform/linux/testing/include", "platform/shared/include", "platform/include", "util/include", ], header_libs: [ "chre_api", ], defaults: [ "chre_linux_cflags", ], static_libs: [ "libgtest", "libgmock", ], host_supported: true, } cc_defaults { name: "chre_linux_cflags", cflags: [ "-DCHRE_MESSAGE_TO_HOST_MAX_SIZE=4096", "-DCHRE_MINIMUM_LOG_LEVEL=CHRE_LOG_LEVEL_DEBUG", "-DCHRE_ASSERTIONS_ENABLED=true", "-DCHRE_FILENAME=__FILE__", "-DGTEST", "-DCHRE_FIRST_SUPPORTED_API_VERSION=CHRE_API_VERSION_1_1", "-DCHRE_AUDIO_SUPPORT_ENABLED", "-DCHRE_BLE_SUPPORT_ENABLED", "-DCHRE_GNSS_SUPPORT_ENABLED", "-DCHRE_SENSORS_SUPPORT_ENABLED", "-DCHRE_WIFI_SUPPORT_ENABLED", "-DCHRE_WIFI_NAN_SUPPORT_ENABLED", ], } subdirs = [ "apps/wifi_offload", ]