/*
 * Copyright (C) 2020 The Potato Open Sauce Project
 * Copyright (C) 2020 The LineageOS 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.
 */

android_app {
    name: "DT2W-Service-RM6785",

    srcs: ["src/**/*.java"],
    resource_dirs: ["res"],

    certificate: "platform",
    platform_apis: true,
    privileged: true,

    optimize: {
        enabled: false,
    },

    required: [
        "privapp-permissions_org.lineageos.dt2w.RM6785",
    ],
}

prebuilt_etc {
    name: "privapp-permissions_org.lineageos.dt2w.RM6785",
    sub_dir: "permissions",
    src: "privapp-permissions_org.lineageos.dt2w.RM6785.xml",
    filename_from_src: true,
}
