xref: /aosp_15_r20/frameworks/av/media/module/extractors/Android.bp (revision ec779b8e0859a360c3d303172224686826e6e0e1)
1// Copyright (C) 2020 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15package {
16    // See: http://go/android-license-faq
17    // A large-scale-change added 'default_applicable_licenses' to import
18    // all of the 'license_kinds' from "frameworks_av_license"
19    // to get the below license kinds:
20    //   SPDX-license-identifier-Apache-2.0
21    default_applicable_licenses: ["frameworks_av_license"],
22}
23
24cc_defaults {
25    name: "extractor-defaults",
26
27    shared_libs: [
28        "liblog",
29    ],
30
31    static_libs: [
32        "libstagefright_metadatautils",
33    ],
34
35    // extractors are expected to run on Q(29)
36    min_sdk_version: "29",
37    apex_available: [
38        "//apex_available:platform",
39        "com.android.media",
40    ],
41
42    relative_install_path: "extractors",
43
44    cflags: [
45        "-Werror",
46        "-Wall",
47        "-fvisibility=hidden",
48    ],
49
50    version_script: "exports.lds",
51
52    target: {
53        android: {
54            shared_libs: [
55                "libmediandk#29",
56            ],
57        },
58        host: {
59            static_libs: [
60                "libutils",
61                "libmediandk_format",
62                "libmedia_ndkformatpriv",
63                "libstagefright_metadatautils",
64            ],
65        },
66    },
67
68    sanitize: {
69        cfi: true,
70        misc_undefined: [
71            "unsigned-integer-overflow",
72            "signed-integer-overflow",
73        ],
74    },
75}
76
77aconfig_declarations {
78    name: "android.media.extractor.flags-aconfig",
79    package: "com.android.media.extractor.flags",
80    container: "com.android.media",
81    srcs: ["extractor.aconfig"],
82}
83
84java_aconfig_library {
85    name: "android.media.extractor.flags-aconfig-java",
86    aconfig_declarations: "android.media.extractor.flags-aconfig",
87    defaults: ["framework-minus-apex-aconfig-java-defaults"],
88}
89
90cc_aconfig_library {
91    name: "android.media.extractor.flags-aconfig-cc",
92    aconfig_declarations: "android.media.extractor.flags-aconfig",
93    host_supported: true,
94    min_sdk_version: "29",
95    apex_available: [
96        "//apex_available:platform",
97        "com.android.media",
98    ],
99}
100