/******************************************************************************
 *
 *  Copyright 2021 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 {
    // See: http://go/android-license-faq
    // A large-scale-change added 'default_applicable_licenses' to import
    // all of the 'license_kinds' from "system_bt_license"
    // to get the below license kinds:
    //   SPDX-license-identifier-Apache-2.0
    default_applicable_licenses: ["system_bt_license"],
}

filegroup {
    name: "bluetooth-apps-adva-srcs",
    srcs: ["src/com/android/bluetooth/groupclient/*.java",
           "src/com/android/bluetooth/bassclient/*.java",
           "src/com/android/bluetooth/broadcast/*.java",
           "src/com/android/bluetooth/acm/*.java",
           "src/com/android/bluetooth/pacsclient/*.java",
           "src/com/android/bluetooth/apm/*.java",
           "src/com/android/bluetooth/vcp/*.java",
           "src/com/android/bluetooth/mcp/*.java",
           "src/com/android/bluetooth/cc/*.java"],
}
