package {
    default_applicable_licenses: ["system_core_libutils_license"],
}

license {
    name: "system_core_libutils_license",
    visibility: [":__subpackages__"],
    license_kinds: [
        "SPDX-license-identifier-Apache-2.0",
    ],
    license_text: [
        "NOTICE",
    ],
}

cc_library_headers {
    name: "libutils_headers",
    vendor_available: true,
    product_available: true,
    recovery_available: true,
    vendor_ramdisk_available: true,
    host_supported: true,
    native_bridge_supported: true,
    defaults: [
        "apex-lowest-min-sdk-version",
    ],
    apex_available: [
        "//apex_available:platform",
        "//apex_available:anyapex",
    ],

    header_libs: [
        "libbase_headers",
        "libcutils_headers",
        "liblog_headers",
        "libprocessgroup_headers",
        "libsystem_headers",
    ],
    export_header_lib_headers: [
        "libbase_headers",
        "libcutils_headers",
        "liblog_headers",
        "libprocessgroup_headers",
        "libsystem_headers",
    ],
    export_include_dirs: ["include"],

    target: {
        linux_bionic: {
            enabled: true,
        },
        windows: {
            enabled: true,
        },
    },
}

cc_defaults {
    name: "libutils_defaults_nodeps",
    vendor_available: true,
    product_available: true,
    recovery_available: true,
    host_supported: true,

    cflags: [
        "-Wall",
        "-Werror",
        "-Wno-exit-time-destructors",
        "-DANDROID_UTILS_REF_BASE_DISABLE_IMPLICIT_CONSTRUCTION",
    ],

    sanitize: {
        misc_undefined: ["integer"],
    },

    target: {
        android: {
            cflags: ["-fvisibility=protected"],

            shared_libs: [
                "libvndksupport",
            ],

            sanitize: {
                misc_undefined: ["integer"],
            },
        },

        recovery: {
            exclude_shared_libs: ["libvndksupport"],
        },

        linux_bionic: {
            enabled: true,
        },

        darwin: {
            cflags: ["-Wno-unused-parameter"],
        },

        windows: {
            cflags: [
                // Under MinGW, ctype.h doesn't need multi-byte support
                "-DMB_CUR_MAX=1",
                "-Wno-unused-private-field",
            ],

            enabled: true,
        },
    },
    fuzz_config: {
       cc: ["smoreland@google.com"],
    },
}

cc_defaults {
    name: "libutils_defaults",
    defaults: [
        "libutils_defaults_nodeps",
    ],

    shared_libs: [
        "libcutils",
        "liblog",
    ],
}

cc_defaults {
    name: "libutils_impl_defaults",
    defaults: [
        "libutils_defaults",
        "apex-lowest-min-sdk-version",
    ],
    native_bridge_supported: true,

    whole_static_libs: ["libutils_binder"],

    header_libs: [
        "libbase_headers",
        "libutils_headers",
    ],
    export_header_lib_headers: [
        "libutils_headers",
    ],

    srcs: [
        "FileMap.cpp",
        "JenkinsHash.cpp",
        "LightRefBase.cpp",
        "NativeHandle.cpp",
        "Printer.cpp",
        "StopWatch.cpp",
        "SystemClock.cpp",
        "Threads.cpp",
        "Timers.cpp",
        "Tokenizer.cpp",
        "misc.cpp",
    ],

    target: {
        android: {
            srcs: [
                "Trace.cpp",
            ],
        },
        linux: {
            header_libs: ["libbase_headers"],
            srcs: [
                "Looper.cpp",
            ],
        },
    },

    apex_available: [
        "//apex_available:anyapex",
        "//apex_available:platform",
    ],

    afdo: true,
}

cc_library {
    name: "libutils",
    defaults: ["libutils_impl_defaults"],

    vndk: {
        enabled: true,
        support_system_process: true,
    },

    target: {
        product: {
            header_abi_checker: {
                enabled: true,
                // AFDO affects weak symbols.
                diff_flags: ["-allow-adding-removing-weak-symbols"],
                ref_dump_dirs: ["abi-dumps"],
            },
        },
        vendor: {
            header_abi_checker: {
                enabled: true,
                // AFDO affects weak symbols.
                diff_flags: ["-allow-adding-removing-weak-symbols"],
                ref_dump_dirs: ["abi-dumps"],
            },
        },
    },
}

cc_library {
    name: "libutils_test_compile",
    defaults: ["libutils_impl_defaults"],

    cflags: [
        "-DDEBUG_CALLBACKS=1",
        "-DDEBUG_POLL_AND_WAKE=1",
        "-DDEBUG_REFS=1",
        "-DDEBUG_TOKENIZER=1",
    ],

    visibility: [":__subpackages__"],
}

cc_library {
    name: "libutilscallstack",
    defaults: ["libutils_defaults"],
    // TODO(b/153609531): remove when no longer needed.
    native_bridge_supported: true,
    min_sdk_version: "29",
    vndk: {
        enabled: true,
        support_system_process: true,
    },

    header_libs: [
        "libbase_headers",
        "libutils_headers",
    ],
    export_header_lib_headers: [
        "libutils_headers",
    ],

    srcs: [
        "CallStack.cpp",
    ],

    shared_libs: [
        "libutils",
        "libunwindstack",
    ],

    target: {
        linux: {
            srcs: [
                "ProcessCallStack.cpp",
            ],
        },
        darwin: {
            enabled: false,
        },
        windows: {
            enabled: false,
        },
    },
}

cc_defaults {
    name: "libutils_fuzz_defaults",
    host_supported: true,
    shared_libs: [
        "libutils",
        "libbase",
        "liblog",
    ],
}

cc_fuzz {
    name: "libutils_fuzz_bitset",
    defaults: ["libutils_fuzz_defaults"],
    srcs: ["BitSet_fuzz.cpp"],
}

cc_fuzz {
    name: "libutils_fuzz_filemap",
    defaults: ["libutils_fuzz_defaults"],
    srcs: ["FileMap_fuzz.cpp"],
}

cc_fuzz {
    name: "libutils_fuzz_printer",
    defaults: ["libutils_fuzz_defaults"],
    srcs: ["Printer_fuzz.cpp"],
}

cc_fuzz {
    name: "libutils_fuzz_callstack",
    defaults: ["libutils_fuzz_defaults"],
    srcs: ["CallStack_fuzz.cpp"],
    shared_libs: [
        "libutilscallstack",
    ],
}

cc_fuzz {
    name: "libutils_fuzz_process_callstack",
    defaults: ["libutils_fuzz_defaults"],
    srcs: ["ProcessCallStack_fuzz.cpp"],
    shared_libs: [
        "libutilscallstack",
    ],
}

cc_fuzz {
    name: "libutils_fuzz_lrucache",
    defaults: ["libutils_fuzz_defaults"],
    srcs: ["LruCache_fuzz.cpp"],
}

cc_fuzz {
    name: "libutils_fuzz_looper",
    defaults: ["libutils_fuzz_defaults"],
    srcs: ["Looper_fuzz.cpp"],
}

cc_test {
    name: "libutils_test",
    host_supported: true,

    srcs: [
        "BitSet_test.cpp",
        "CallStack_test.cpp",
        "FileMap_test.cpp",
        "LruCache_test.cpp",
        "Mutex_test.cpp",
        "Singleton_test.cpp",
        "Timers_test.cpp",
    ],

    target: {
        android: {
            srcs: [
                "SystemClock_test.cpp",
            ],
            shared_libs: [
                "libbase",
                "libcutils",
                "liblog",
                "liblzma",
                "libunwindstack",
                "libutils",
                "libutilscallstack",
                "libz",
            ],
        },
        linux: {
            srcs: [
                "Looper_test.cpp",
            ],
        },
        host: {
            static_libs: [
                "libbase",
                "liblog",
                "liblzma",
                "libunwindstack_no_dex",
                "libutils",
                "libutilscallstack",
            ],
        },
    },

    data_libs: [
        "libutils_test_singleton1",
        "libutils_test_singleton2",
    ],

    cflags: [
        "-Wall",
        "-Wextra",
        "-Werror",
        "-Wthread-safety",
    ],

    test_suites: ["device-tests"],
}

cc_test_library {
    name: "libutils_test_singleton1",
    host_supported: true,
    installable: false,
    srcs: ["Singleton_test1.cpp"],
    cflags: [
        "-Wall",
        "-Werror",
    ],
    header_libs: ["libutils_headers"],
}

cc_test_library {
    name: "libutils_test_singleton2",
    host_supported: true,
    installable: false,
    srcs: ["Singleton_test2.cpp"],
    cflags: [
        "-Wall",
        "-Werror",
    ],
    shared_libs: ["libutils_test_singleton1"],
    header_libs: ["libutils_headers"],
}
