summaryrefslogtreecommitdiff
path: root/Android.bp
blob: e1ac31ded6c05ecb9bdd7f4fa3f60308584b22a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99

android_app {
    name: "MediaProvider",
    manifest: "AndroidManifest.xml",

    static_libs: [
        "androidx.appcompat_appcompat",
        "androidx.core_core",
        "guava",
    ],

    libs: [
        "unsupportedappusage",
        "app-compat-annotations",
        "framework-mediaprovider.impl",
        "framework_mediaprovider_annotation",
        "framework-statsd",
    ],

    jni_libs: [
        "libfuse_jni",
        "libfuse"
    ],

    resource_dirs: [
        "res",
    ],
    srcs: [
        ":mediaprovider-sources",
    ],

    optimize: {
        proguard_flags_files: ["proguard.flags"],
    },

    plugins: [
        "java_api_finder",
        "error_prone_mediaprovider",
    ],

    sdk_version: "module_current",

    certificate: "media",
    privileged: true,

    aaptflags: ["--custom-package com.android.providers.media"],

    errorprone: {
        javacflags: [
            "-Xep:FallThrough:ERROR",
            "-Xep:GuardedBy:ERROR",
            "-Xep:StreamResourceLeak:ERROR",

            // Local checkers specific to this module
            "-Xep:MediaProviderLocaleRoot:ERROR",
            "-Xep:MediaProviderMimeType:ERROR",
        ],
    },
}

// Used by MediaProvider and MediaProviderTests
filegroup {
    name: "mediaprovider-sources",
    srcs: [
        "src/**/*.aidl",
        "src/**/*.java",
        ":mediaprovider-database-sources",
        ":statslog-mediaprovider-java-gen",
    ],
}

// This is defined to give LegacyMediaProvider the bare minimum it needs
// to keep the legacy database schema working while also building
// against "system_current"
filegroup {
    name: "mediaprovider-database-sources",
    srcs: [
        "src/com/android/providers/media/DatabaseHelper.java",
        "src/com/android/providers/media/util/BackgroundThread.java",
        "src/com/android/providers/media/util/DatabaseUtils.java",
        "src/com/android/providers/media/util/FileUtils.java",
        "src/com/android/providers/media/util/ForegroundThread.java",
        "src/com/android/providers/media/util/HandlerExecutor.java",
        "src/com/android/providers/media/util/Logging.java",
        "src/com/android/providers/media/util/MimeUtils.java",
    ],
}

platform_compat_config {
    name: "media-provider-platform-compat-config",
    src: ":MediaProvider",
}

genrule {
    name: "statslog-mediaprovider-java-gen",
    tools: ["stats-log-api-gen"],
    cmd: "$(location stats-log-api-gen) --java $(out) --module mediaprovider --javaPackage com.android.providers.media --javaClass MediaProviderStatsLog",
    out: ["com/android/providers/media/MediaProviderStatsLog.java"],
}