1//
2// Copyright (C) 2014 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8//      http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
17package {
18    // See: http://go/android-license-faq
19    // A large-scale-change added 'default_applicable_licenses' to import
20    // all of the 'license_kinds' from "frameworks_av_license"
21    // to get the below license kinds:
22    //   SPDX-license-identifier-Apache-2.0
23    default_applicable_licenses: ["frameworks_av_license"],
24}
25
26cc_library_shared {
27    name: "libdrmclearkeyplugin",
28    vendor: true,
29
30    srcs: [
31        "AesCtrDecryptor.cpp",
32        "CreatePluginFactories.cpp",
33        "CryptoFactory.cpp",
34        "CryptoPlugin.cpp",
35        "DrmFactory.cpp",
36        "DrmPlugin.cpp",
37        "InitDataParser.cpp",
38        "JsonWebKey.cpp",
39        "Session.cpp",
40        "SessionLibrary.cpp",
41    ],
42
43    relative_install_path: "mediadrm",
44
45    cflags: ["-Wall", "-Werror"],
46
47    shared_libs: [
48        "libcrypto",
49        "liblog",
50        "libstagefright_foundation",
51        "libutils",
52    ],
53
54    static_libs: [
55        "libclearkeycommon",
56        "libjsmn"
57    ],
58
59    local_include_dirs: ["include"],
60    export_include_dirs: ["include"],
61    export_static_lib_headers: ["libjsmn"],
62
63    include_dirs: [
64        "frameworks/native/include",
65        "frameworks/av/include",
66    ],
67
68    sanitize: {
69        integer_overflow: true,
70    },
71}
72