1// 2// Copyright (C) 2021 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 17// 18// Build rule for WallpaperPicker2 dependencies lib. 19// 20package { 21 default_applicable_licenses: ["Android-Apache-2.0"], 22} 23 24android_library { 25 name: "wallpaper-common-deps", 26 27 static_libs: [ 28 "androidx.appcompat_appcompat", 29 "androidx.cardview_cardview", 30 "androidx-constraintlayout_constraintlayout", 31 "androidx.exifinterface_exifinterface", 32 "androidx.lifecycle_lifecycle-livedata-ktx", 33 "androidx.lifecycle_lifecycle-runtime-ktx", 34 "androidx.recyclerview_recyclerview", 35 "androidx.slice_slice-view", 36 "androidx.viewpager2_viewpager2", 37 "com.google.android.material_material", 38 "glide-prebuilt", 39 "glide-gifdecoder-prebuilt", 40 "glide-disklrucache-prebuilt", 41 "kotlinx-coroutines-android", 42 "kotlinx-coroutines-core", 43 "libbackup", 44 "SettingsLibCollapsingToolbarBaseActivity", 45 "subsampling-scale-image-view", 46 "SystemUISharedLib", 47 "SystemUICustomizationLib", 48 "volley", 49 "SettingsLibActivityEmbedding", 50 ], 51 52 resource_dirs: ["res"], 53 54 optimize: { 55 enabled: false, 56 }, 57 58 kotlincflags: ["-Xjvm-default=enable"], 59 60 sdk_version: "current", 61 62 manifest: "AndroidManifest-empty.xml", 63 64 visibility: [ 65 ":__subpackages__", 66 "//packages/apps/ThemePicker:__subpackages__", 67 "//vendor:__subpackages__", 68 ], 69} 70 71filegroup { 72 name: "WallpaperPicker2_srcs", 73 srcs: [ 74 "src/**/*.java", 75 "src/**/*.kt", 76 ], 77} 78 79// If these targets are included in WallpaperPicker2_defaults directly instead of in a filegroup, 80// the tests can't find them. 81filegroup { 82 name: "WallpaperPicker2_src_overrides", 83 srcs: [ 84 "src_override/**/*.java", 85 "src_override/**/*.kt", 86 ], 87} 88 89genrule { 90 name: "WallpaperPicker2_res", 91 tools: ["soong_zip"], 92 srcs: [ 93 "res/**/*" 94 ], 95 out: ["wallpaperpicker2_res.zip"], 96 cmd: "INPUTS=($(in)) && " 97 + "RES_DIR=$$(dirname $$(dirname $${INPUTS[0]})) && " 98 + "$(location soong_zip) -o $(out) -C $$RES_DIR -D $$RES_DIR" 99} 100 101filegroup { 102 name: "WallpaperPicker2_Manifest", 103 srcs: [ 104 "AndroidManifest.xml", 105 ], 106} 107 108java_defaults { 109 name: "WallpaperPicker2_defaults", 110 111 static_libs: [ 112 "wallpaper-common-deps", 113 "monet", 114 ], 115 116 srcs: [ 117 ":WallpaperPicker2_srcs", 118 ":WallpaperPicker2_src_overrides", 119 ], 120 resource_zips: [":WallpaperPicker2_res"], 121 122 certificate: "", 123 124 optimize: { 125 enabled: false, 126 }, 127 128 kotlincflags: ["-Xjvm-default=enable"], 129 privileged: true, 130 system_ext_specific: true, 131 132 use_embedded_native_libs: true, 133} 134 135// 136// Build app code. 137// 138android_app { 139 name: "WallpaperPicker2", 140 141 defaults: ["WallpaperPicker2_defaults"], 142 manifest: ":WallpaperPicker2_Manifest", 143 144 platform_apis: true, 145} 146