# NOTE: THIS FILE IS EXPERIMENTAL FOR THE BAZEL MIGRATION AND NOT USED FOR
# YOUR BUILDS CURRENTLY.
#
# It is not yet the source of truth for your build. If you're looking to modify
# the build file, modify the Android.bp file instead. Do *not* modify this file
# unless you have coordinated with the team managing the Soong to Bazel
# migration.

load("//build/kleaf:kernel.bzl", "kernel_module")

filegroup(
    name = "headers",
    srcs = glob([
        "*.h",
        "uapi/*.h",
    ]),
    visibility = [
        ":__subpackages__",
    ],
)

kernel_module(
    name = "aoc.cloudripper",
    srcs = glob([
        "**/*.c",
        "**/*.h",
    ]) + [
        "//private/google-modules/aoc_ipc:sources",
    ],
    outs = [
        "aoc_channel_dev.ko",
        "aoc_char_dev.ko",
        "aoc_control_dev.ko",
        "aoc_core.ko",
        "aoc_uwb_platform_drv.ko",
        "aoc_uwb_service_dev.ko",
        "mailbox-wc.ko",
    ],
    kernel_build = "//private/gs-google:cloudripper",
    visibility = [
        ":__subpackages__",
        "//private/gs-google:__pkg__",
    ],
)
