| cc_defaults { |
| name: "fluoride_osi_defaults", |
| defaults: ["fluoride_defaults"], |
| include_dirs: [ |
| "system/bt", |
| "system/bt/internal_include", |
| "system/bt/osi/src/protos", |
| "system/bt/utils/include", |
| "system/bt/stack/include", |
| ] |
| } |
| |
| // Static libraries required by other modules |
| // ======================================================== |
| cc_test_library { |
| name: "libosi-AllocationTestHarness", |
| defaults: ["fluoride_osi_defaults"], |
| srcs: [ |
| "test/AllocationTestHarness.cc", |
| ], |
| host_supported: true, |
| shared: { |
| enabled: false |
| } |
| } |
| |
| cc_test_library { |
| name: "libosi-AlarmTestHarness", |
| defaults: ["fluoride_osi_defaults"], |
| srcs: [ |
| "test/AlarmTestHarness.cc", |
| ], |
| host_supported: true, |
| shared: { |
| enabled: false |
| } |
| } |
| |
| // Bluetooth Protobuf static library for target and host |
| // ======================================================== |
| cc_library_static { |
| name: "libbt-protos", |
| defaults: ["fluoride_defaults"], |
| srcs: ["src/protos/bluetooth.proto"], |
| proto: { |
| export_proto_headers: true, |
| }, |
| host_supported: true |
| } |
| |
| |
| // libosi static library for target |
| // ======================================================== |
| cc_library_static { |
| name: "libosi", |
| defaults: ["fluoride_osi_defaults"], |
| // TODO(mcchou): Remove socket_utils sources after platform specific |
| // dependencies are abstracted. |
| srcs: [ |
| "src/alarm.cc", |
| "src/allocation_tracker.cc", |
| "src/allocator.cc", |
| "src/array.cc", |
| "src/buffer.cc", |
| "src/compat.cc", |
| "src/config.cc", |
| "src/fixed_queue.cc", |
| "src/future.cc", |
| "src/hash_map_utils.cc", |
| "src/list.cc", |
| "src/metrics.cc", |
| "src/mutex.cc", |
| "src/osi.cc", |
| "src/properties.cc", |
| "src/reactor.cc", |
| "src/ringbuffer.cc", |
| "src/semaphore.cc", |
| "src/socket.cc", |
| "src/socket_utils/socket_local_client.cc", |
| "src/socket_utils/socket_local_server.cc", |
| "src/thread.cc", |
| "src/time.cc", |
| "src/wakelock.cc", |
| ], |
| shared_libs: [ |
| "liblog", |
| ], |
| static_libs: ["libbt-protos"], |
| host_supported: true, |
| // TODO(armansito): Setting _GNU_SOURCE isn't very platform-independent but |
| // should be compatible for a Linux host OS. We should figure out what to do for |
| // a non-Linux host OS. |
| target: { |
| darwin: { |
| enabled: false, |
| }, |
| linux_glibc: { |
| cflags: [ |
| "-D_GNU_SOURCE", |
| "-DOS_GENERIC", |
| ], |
| }, |
| }, |
| } |
| |
| // libosi unit tests for target and host |
| // ======================================================== |
| cc_test { |
| name: "net_test_osi", |
| test_suites: ["device-tests"], |
| defaults: ["fluoride_osi_defaults"], |
| host_supported: true, |
| srcs: [ |
| "test/AlarmTestHarness.cc", |
| "test/AllocationTestHarness.cc", |
| "test/alarm_test.cc", |
| "test/allocation_tracker_test.cc", |
| "test/allocator_test.cc", |
| "test/array_test.cc", |
| "test/config_test.cc", |
| "test/fixed_queue_test.cc", |
| "test/future_test.cc", |
| "test/hash_map_utils_test.cc", |
| "test/leaky_bonded_queue_test.cc", |
| "test/list_test.cc", |
| "test/metrics_test.cc", |
| "test/properties_test.cc", |
| "test/rand_test.cc", |
| "test/reactor_test.cc", |
| "test/ringbuffer_test.cc", |
| "test/semaphore_test.cc", |
| "test/thread_test.cc", |
| "test/time_test.cc", |
| "test/wakelock_test.cc", |
| ], |
| shared_libs: [ |
| "liblog", |
| "libprotobuf-cpp-lite", |
| "libcutils", |
| ], |
| static_libs: [ |
| "libbt-protos", |
| "libgmock", |
| "libosi", |
| ], |
| target: { |
| linux_glibc: { |
| cflags: ["-DOS_GENERIC"], |
| }, |
| darwin: { |
| enabled: false, |
| } |
| }, |
| sanitize: { |
| cfi: false, |
| }, |
| } |