//
// Copyright (C) 2014 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_library {
    name: "libsigchain",
    cpp_std: "gnu++17",

    host_supported: true,
    defaults: ["art_defaults"],
    target: {
        linux: {
            shared: {
                srcs: ["sigchain_dummy.cc"],
            },
            static: {
                srcs: ["sigchain.cc"],
            },
        },

        darwin: {
            srcs: ["sigchain_dummy.cc"],
        },

        android: {
            shared_libs: ["liblog"],
        },
    },
    // Sigchainlib is whole-statically linked into binaries. For Android.mk-based binaries,
    // this will drag ASAN symbols into the binary, even for modules using LOCAL_SANITIZE := never.
    // So disable sanitization for now. b/38456126
    sanitize: {
        never: true,
    },
}

// Create a dummy version of libsigchain which expose the necessary symbols
// but throws when called. This can be used to get static binaries which don't
// need the real functionality of the sig chain but need to please the linker.
cc_library_static {
    name: "libsigchain_dummy",
    host_supported: true,
    defaults: ["art_defaults"],
    srcs: ["sigchain_dummy.cc"],
    target: {
        android: {
            shared_libs: ["liblog"],
        },
    },
}

art_cc_test {
    name: "art_sigchain_tests",
    defaults: [
        "art_gtest_defaults",
    ],
    srcs: ["sigchain_test.cc"],
    whole_static_libs: ["libsigchain"],
}
