1// Copyright (C) 2024 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 default_applicable_licenses: ["Android-Apache-2.0"], 18} 19 20java_sdk_library { 21 name: "framework-pdf", 22 defaults: ["framework-module-defaults"], 23 srcs: [ 24 ":framework-pdf-sources", 25 ], 26 27 permitted_packages: [ 28 "android.graphics.pdf", 29 ], 30 static_libs: [ 31 "pdf_viewer_flags_java_lib", 32 "pdf_viewer_flags_readonly_java_lib", 33 "pdf-statsd", 34 ], 35 libs: [ 36 "androidx.annotation_annotation", 37 "error_prone_annotations", 38 "modules-utils-preconditions", 39 "unsupportedappusage", 40 ], 41 apex_available: [ 42 "com.android.mediaprovider", 43 ], 44 aconfig_declarations: [ 45 "pdf_viewer_flags", 46 "pdf_viewer_flags_readonly", 47 ], 48 impl_library_visibility: [ 49 "//packages/providers/MediaProvider:__subpackages__", 50 "//cts/tests/pdf:__subpackages__", 51 ], 52 jarjar_rules: "jarjar-rules.txt", 53 min_sdk_version: "31", 54 lint: { 55 baseline_filename: "lint-baseline.xml", 56 }, 57} 58 59filegroup { 60 name: "framework-pdf-sources", 61 defaults: ["framework-sources-module-defaults"], 62 srcs: [ 63 "java/**/*.java", 64 ], 65 path: "java", 66 visibility: [ 67 "//packages/providers/MediaProvider/pdf/tests", 68 ], 69} 70 71aconfig_declarations { 72 name: "pdf_viewer_flags", 73 package: "android.graphics.pdf.flags", 74 srcs: [ 75 "pdf_viewer_flags.aconfig", 76 ], 77 container: "com.android.mediaprovider", 78 exportable: true, 79} 80 81java_aconfig_library { 82 name: "pdf_viewer_flags_java_lib", 83 aconfig_declarations: "pdf_viewer_flags", 84 visibility: [ 85 "//packages/providers/MediaProvider/pdf:__subpackages__", 86 ], 87 min_sdk_version: "31", 88 apex_available: [ 89 "com.android.mediaprovider", 90 ], 91 defaults: ["framework-minus-apex-aconfig-java-defaults"], 92 mode: "exported", 93} 94 95aconfig_declarations { 96 name: "pdf_viewer_flags_readonly", 97 package: "android.graphics.pdf.flags.readonly", 98 srcs: [ 99 "pdf_viewer_flags_readonly.aconfig", 100 ], 101 container: "com.android.mediaprovider", 102} 103 104java_aconfig_library { 105 name: "pdf_viewer_flags_readonly_java_lib", 106 aconfig_declarations: "pdf_viewer_flags_readonly", 107 visibility: [ 108 "//packages/providers/MediaProvider/pdf:__subpackages__", 109 ], 110 min_sdk_version: "31", 111 apex_available: [ 112 "com.android.mediaprovider", 113 ], 114 defaults: ["framework-minus-apex-aconfig-java-defaults"], 115 mode: "force-read-only", 116} 117 118// To generate the Stats log classes for the Android Pdf. 119genrule { 120 name: "statslog-pdf-java-gen", 121 tools: ["stats-log-api-gen"], 122 cmd: "$(location stats-log-api-gen) --java $(out) --module mediaprovider" + 123 " --javaPackage android.graphics.pdf --javaClass PdfStatsLog" + 124 " --minApiLevel 31", 125 out: ["android/graphics/pdf/PdfStatsLog.java"], 126} 127 128// To disable NewApi checks on the generated PdfStatsLog. 129java_library { 130 name: "pdf-statsd", 131 sdk_version: "module_current", 132 min_sdk_version: "31", 133 srcs: [ 134 ":statslog-pdf-java-gen", 135 ], 136 libs: [ 137 // To add StatsLog as a dependency of the generated file. 138 "framework-statsd.stubs.module_lib", 139 "androidx.annotation_annotation", 140 ], 141 apex_available: [ 142 "com.android.mediaprovider", 143 ], 144} 145