// Copyright (C) 2019 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.

cc_defaults {
    name: "libtwrpinstall_defaults",

    defaults: [
        "recovery_defaults",
    ],

    header_libs: [
        "libminadbd_headers",
    ],

    shared_libs: [
        "libbase",
        "libbootloader_message",
        "libcrypto",
        "libext4_utils",
        "libfs_mgr",
        "libfusesideload",
        "libhidl-gen-utils",
        "libhidlbase",
        "liblog",
        "libselinux",
        "libtinyxml2",
        "libutils",
        "libz",
        "libziparchive",
    ],

    static_libs: [
        "libotautil",

        // external dependencies    
        "libvintf",
        "libfstab",
    ],
}

cc_library_static {
    name: "libtwrpinstall",
    recovery_available: true,

    defaults: [
        "libtwrpinstall_defaults",
    ],

    cflags: [
        "-DAB_OTA_UPDATER=1"
    ],

    include_dirs: [
        "bootable/recovery",
        "bootable/recovery/install/include",
        "bootable/recovery/recovery_utils/include",
    ],

    srcs: [
        "adb_install.cpp",
        "asn1_decoder.cpp",
        "install.cpp",
        "installcommand.cpp",
        "package.cpp",
        "tw_atomic.cpp",
        "twinstall.cpp",
        "verifier.cpp",
    ],
    shared_libs: [
        "librecovery_ui",
    ],

    export_include_dirs: [
        "include",
    ],

    export_shared_lib_headers: [
        "librecovery_ui",
    ],
}
