blob: c456e5c296d2676b825326819e4cf3fb0ffe83d6 [file] [log] [blame]
Jeremy Meyer16c83af2024-07-26 16:21:49 -07001// 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 // A large-scale-change added 'default_applicable_licenses' to import
18 // all of the 'license_kinds' from "frameworks_base_license"
19 // to get the below license kinds:
20 // SPDX-license-identifier-Apache-2.0
21 default_applicable_licenses: ["frameworks_base_license"],
22 default_team: "trendy_team_android_resources",
23}
24
25genrule {
26 name: "resource-flagging-test-app-compile",
27 tools: ["aapt2"],
28 srcs: [
29 "res/values/bools.xml",
30 "res/values/bools2.xml",
Jeremy Meyerd52bd682024-08-14 11:16:58 -070031 "res/values/ints.xml",
Jeremy Meyer16c83af2024-07-26 16:21:49 -070032 "res/values/strings.xml",
Jeremy Meyer74684032024-08-20 14:10:59 -070033 "res/layout/layout1.xml",
Jeremy Meyer16c83af2024-07-26 16:21:49 -070034 ],
35 out: [
36 "values_bools.arsc.flat",
37 "values_bools2.arsc.flat",
Jeremy Meyerd52bd682024-08-14 11:16:58 -070038 "values_ints.arsc.flat",
Jeremy Meyer16c83af2024-07-26 16:21:49 -070039 "values_strings.arsc.flat",
Jeremy Meyer74684032024-08-20 14:10:59 -070040 "layout_layout1.xml.flat",
Jeremy Meyer16c83af2024-07-26 16:21:49 -070041 ],
42 cmd: "$(location aapt2) compile $(in) -o $(genDir) " +
43 "--feature-flags test.package.falseFlag:ro=false,test.package.trueFlag:ro=true",
44}
45
46genrule {
47 name: "resource-flagging-test-app-apk",
48 tools: ["aapt2"],
49 // The first input file in the list must be the manifest
50 srcs: [
51 "AndroidManifest.xml",
52 ":resource-flagging-test-app-compile",
53 ],
Jeremy Meyer423c0f52024-08-02 12:06:54 -070054 out: [
55 "resapp.apk",
56 ],
Jeremy Meyer74684032024-08-20 14:10:59 -070057 cmd: "$(location aapt2) link -o $(out) --manifest $(in) " +
58 "-I $(location :current_android_jar) " +
59 "--feature-flags test.package.falseFlag:ro=false,test.package.trueFlag:ro=true",
60 tool_files: [":current_android_jar"],
Jeremy Meyer16c83af2024-07-26 16:21:49 -070061}
62
Jeremy Meyer423c0f52024-08-02 12:06:54 -070063genrule {
64 name: "resource-flagging-test-app-r-java",
65 tools: ["aapt2"],
66 // The first input file in the list must be the manifest
67 srcs: [
68 "AndroidManifest.xml",
69 ":resource-flagging-test-app-compile",
70 ],
71 out: [
72 "resource-flagging-java/com/android/intenal/flaggedresources/R.java",
73 ],
Jeremy Meyer74684032024-08-20 14:10:59 -070074 cmd: "$(location aapt2) link -o $(genDir)/resapp.apk --java $(genDir)/resource-flagging-java --manifest $(in) " +
75 "-I $(location :current_android_jar) " +
76 "--feature-flags test.package.falseFlag:ro=false,test.package.trueFlag:ro=true",
77 tool_files: [":current_android_jar"],
Jeremy Meyer423c0f52024-08-02 12:06:54 -070078}
79
Jeremy Meyer16c83af2024-07-26 16:21:49 -070080java_genrule {
81 name: "resource-flagging-test-app-apk-as-resource",
82 srcs: [
83 ":resource-flagging-test-app-apk",
84 ],
85 out: ["apks_as_resources.res.zip"],
86 tools: ["soong_zip"],
87
88 cmd: "mkdir -p $(genDir)/res/raw && " +
89 "cp $(in) $(genDir)/res/raw/$$(basename $(in)) && " +
90 "$(location soong_zip) -o $(out) -C $(genDir)/res -D $(genDir)/res",
91}