xref: /aosp_15_r20/prebuilts/sdk/Android.bp (revision 344a7f5ef16c479e7a7f54ee6567a9d112f9e72b)
1*344a7f5eSAndroid Build Coastguard Worker// *** THIS PACKAGE HAS SPECIAL LICENSING CONDITIONS.  PLEASE
2*344a7f5eSAndroid Build Coastguard Worker//     CONSULT THE OWNERS AND [email protected] BEFORE
3*344a7f5eSAndroid Build Coastguard Worker//     DEPENDING ON IT IN YOUR PROJECT. ***
4*344a7f5eSAndroid Build Coastguard Workerpackage {
5*344a7f5eSAndroid Build Coastguard Worker    default_applicable_licenses: ["prebuilts_sdk_license"],
6*344a7f5eSAndroid Build Coastguard Worker}
7*344a7f5eSAndroid Build Coastguard Worker
8*344a7f5eSAndroid Build Coastguard Worker// Added automatically by a large-scale-change that took the approach of
9*344a7f5eSAndroid Build Coastguard Worker// 'apply every license found to every target'. While this makes sure we respect
10*344a7f5eSAndroid Build Coastguard Worker// every license restriction, it may not be entirely correct.
11*344a7f5eSAndroid Build Coastguard Worker//
12*344a7f5eSAndroid Build Coastguard Worker// e.g. GPL in an MIT project might only apply to the contrib/ directory.
13*344a7f5eSAndroid Build Coastguard Worker//
14*344a7f5eSAndroid Build Coastguard Worker// Please consider splitting the single license below into multiple licenses,
15*344a7f5eSAndroid Build Coastguard Worker// taking care not to lose any license_kind information, and overriding the
16*344a7f5eSAndroid Build Coastguard Worker// default license using the 'licenses: [...]' property on targets as needed.
17*344a7f5eSAndroid Build Coastguard Worker//
18*344a7f5eSAndroid Build Coastguard Worker// For unused files, consider creating a 'fileGroup' with "//visibility:private"
19*344a7f5eSAndroid Build Coastguard Worker// to attach the license to, and including a comment whether the files may be
20*344a7f5eSAndroid Build Coastguard Worker// used in the current project.
21*344a7f5eSAndroid Build Coastguard Worker// See: http://go/android-license-faq
22*344a7f5eSAndroid Build Coastguard Workerlicense {
23*344a7f5eSAndroid Build Coastguard Worker    name: "prebuilts_sdk_license",
24*344a7f5eSAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
25*344a7f5eSAndroid Build Coastguard Worker    license_kinds: [
26*344a7f5eSAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
27*344a7f5eSAndroid Build Coastguard Worker        "SPDX-license-identifier-BSD",
28*344a7f5eSAndroid Build Coastguard Worker        "SPDX-license-identifier-CC0-1.0",
29*344a7f5eSAndroid Build Coastguard Worker        "SPDX-license-identifier-CPL-1.0",
30*344a7f5eSAndroid Build Coastguard Worker        "SPDX-license-identifier-MIT",
31*344a7f5eSAndroid Build Coastguard Worker        "SPDX-license-identifier-NCSA",
32*344a7f5eSAndroid Build Coastguard Worker        "SPDX-license-identifier-OFL", // by exception only
33*344a7f5eSAndroid Build Coastguard Worker        "SPDX-license-identifier-Unicode-DFS",
34*344a7f5eSAndroid Build Coastguard Worker        "SPDX-license-identifier-W3C",
35*344a7f5eSAndroid Build Coastguard Worker        "legacy_unencumbered",
36*344a7f5eSAndroid Build Coastguard Worker    ],
37*344a7f5eSAndroid Build Coastguard Worker    license_text: [
38*344a7f5eSAndroid Build Coastguard Worker        "NOTICE",
39*344a7f5eSAndroid Build Coastguard Worker    ],
40*344a7f5eSAndroid Build Coastguard Worker}
41*344a7f5eSAndroid Build Coastguard Worker
42*344a7f5eSAndroid Build Coastguard Workersubdirs = ["tools"]
43*344a7f5eSAndroid Build Coastguard Worker
44*344a7f5eSAndroid Build Coastguard Workerfilegroup {
45*344a7f5eSAndroid Build Coastguard Worker    name: "current-support-api",
46*344a7f5eSAndroid Build Coastguard Worker    srcs: [
47*344a7f5eSAndroid Build Coastguard Worker        "current/support-api.txt",
48*344a7f5eSAndroid Build Coastguard Worker    ],
49*344a7f5eSAndroid Build Coastguard Worker}
50*344a7f5eSAndroid Build Coastguard Worker
51*344a7f5eSAndroid Build Coastguard Workergenrule {
52*344a7f5eSAndroid Build Coastguard Worker    name: "current-androidx-api",
53*344a7f5eSAndroid Build Coastguard Worker    srcs: ["current/androidx-api.txt"],
54*344a7f5eSAndroid Build Coastguard Worker    out: ["androidx-api.xml"],
55*344a7f5eSAndroid Build Coastguard Worker    tools: ["metalava"],
56*344a7f5eSAndroid Build Coastguard Worker    cmd: "$(location metalava) signature-to-jdiff $(in) $(out)",
57*344a7f5eSAndroid Build Coastguard Worker}
58*344a7f5eSAndroid Build Coastguard Worker
59*344a7f5eSAndroid Build Coastguard Workerfilegroup {
60*344a7f5eSAndroid Build Coastguard Worker    name: "metalava-sdk-android-jars",
61*344a7f5eSAndroid Build Coastguard Worker    srcs: [
62*344a7f5eSAndroid Build Coastguard Worker        "**/android.jar",
63*344a7f5eSAndroid Build Coastguard Worker    ],
64*344a7f5eSAndroid Build Coastguard Worker}
65*344a7f5eSAndroid Build Coastguard Worker
66*344a7f5eSAndroid Build Coastguard Workerdroiddoc_exported_dir {
67*344a7f5eSAndroid Build Coastguard Worker    name: "sdk-dir",
68*344a7f5eSAndroid Build Coastguard Worker    path: ".",
69*344a7f5eSAndroid Build Coastguard Worker}
70*344a7f5eSAndroid Build Coastguard Worker
71*344a7f5eSAndroid Build Coastguard Workergenrule {
72*344a7f5eSAndroid Build Coastguard Worker    name: "last-released-public-api-for-metalava-annotations",
73*344a7f5eSAndroid Build Coastguard Worker    srcs: [
74*344a7f5eSAndroid Build Coastguard Worker        "*/public/api/android.txt",
75*344a7f5eSAndroid Build Coastguard Worker    ],
76*344a7f5eSAndroid Build Coastguard Worker    cmd: "cp -f $$(echo $(in) | tr \" \" \"\\n\" | sort -t/ -k3 -n | tail -2 | head -1) $(genDir)/last-released-api-for-metalava-annotations.txt",
77*344a7f5eSAndroid Build Coastguard Worker    out: [
78*344a7f5eSAndroid Build Coastguard Worker        "last-released-api-for-metalava-annotations.txt",
79*344a7f5eSAndroid Build Coastguard Worker    ],
80*344a7f5eSAndroid Build Coastguard Worker}
81*344a7f5eSAndroid Build Coastguard Worker
82*344a7f5eSAndroid Build Coastguard Worker// This filegroup is to package android.jar into CtsUsesNativeLibraryTestCase
83*344a7f5eSAndroid Build Coastguard Workerfilegroup {
84*344a7f5eSAndroid Build Coastguard Worker    name: "sdk_public_30_android.jar",
85*344a7f5eSAndroid Build Coastguard Worker    srcs: [
86*344a7f5eSAndroid Build Coastguard Worker        "30/public/android.jar",
87*344a7f5eSAndroid Build Coastguard Worker    ],
88*344a7f5eSAndroid Build Coastguard Worker    visibility: [
89*344a7f5eSAndroid Build Coastguard Worker        "//cts/hostsidetests/library",
90*344a7f5eSAndroid Build Coastguard Worker    ],
91*344a7f5eSAndroid Build Coastguard Worker}
92*344a7f5eSAndroid Build Coastguard Worker
93*344a7f5eSAndroid Build Coastguard Workerprebuilt_apis {
94*344a7f5eSAndroid Build Coastguard Worker    name: "sdk",
95*344a7f5eSAndroid Build Coastguard Worker    api_dirs: [
96*344a7f5eSAndroid Build Coastguard Worker        "1",
97*344a7f5eSAndroid Build Coastguard Worker        "2",
98*344a7f5eSAndroid Build Coastguard Worker        "3",
99*344a7f5eSAndroid Build Coastguard Worker        "4",
100*344a7f5eSAndroid Build Coastguard Worker        "5",
101*344a7f5eSAndroid Build Coastguard Worker        "6",
102*344a7f5eSAndroid Build Coastguard Worker        "7",
103*344a7f5eSAndroid Build Coastguard Worker        "8",
104*344a7f5eSAndroid Build Coastguard Worker        "9",
105*344a7f5eSAndroid Build Coastguard Worker        "10",
106*344a7f5eSAndroid Build Coastguard Worker        "11",
107*344a7f5eSAndroid Build Coastguard Worker        "12",
108*344a7f5eSAndroid Build Coastguard Worker        "13",
109*344a7f5eSAndroid Build Coastguard Worker        "14",
110*344a7f5eSAndroid Build Coastguard Worker        "15",
111*344a7f5eSAndroid Build Coastguard Worker        "16",
112*344a7f5eSAndroid Build Coastguard Worker        "17",
113*344a7f5eSAndroid Build Coastguard Worker        "18",
114*344a7f5eSAndroid Build Coastguard Worker        "19",
115*344a7f5eSAndroid Build Coastguard Worker        "20",
116*344a7f5eSAndroid Build Coastguard Worker        "21",
117*344a7f5eSAndroid Build Coastguard Worker        "22",
118*344a7f5eSAndroid Build Coastguard Worker        "23",
119*344a7f5eSAndroid Build Coastguard Worker        "24",
120*344a7f5eSAndroid Build Coastguard Worker        "25",
121*344a7f5eSAndroid Build Coastguard Worker        "26",
122*344a7f5eSAndroid Build Coastguard Worker        "27",
123*344a7f5eSAndroid Build Coastguard Worker        "28",
124*344a7f5eSAndroid Build Coastguard Worker        "29",
125*344a7f5eSAndroid Build Coastguard Worker        "30",
126*344a7f5eSAndroid Build Coastguard Worker        "31",
127*344a7f5eSAndroid Build Coastguard Worker        "32",
128*344a7f5eSAndroid Build Coastguard Worker        "33",
129*344a7f5eSAndroid Build Coastguard Worker        "34",
130*344a7f5eSAndroid Build Coastguard Worker        "35",
131*344a7f5eSAndroid Build Coastguard Worker        "36",
132*344a7f5eSAndroid Build Coastguard Worker        "current",
133*344a7f5eSAndroid Build Coastguard Worker    ],
134*344a7f5eSAndroid Build Coastguard Worker    extensions_dir: "extensions",
135*344a7f5eSAndroid Build Coastguard Worker    next_api_dir: "35",
136*344a7f5eSAndroid Build Coastguard Worker    imports_sdk_version: "none",
137*344a7f5eSAndroid Build Coastguard Worker    imports_compile_dex: true,
138*344a7f5eSAndroid Build Coastguard Worker}
139*344a7f5eSAndroid Build Coastguard Worker
140*344a7f5eSAndroid Build Coastguard Workerfilegroup {
141*344a7f5eSAndroid Build Coastguard Worker    name: "prebuilt_sdk_system_public_api_txt",
142*344a7f5eSAndroid Build Coastguard Worker    srcs: [
143*344a7f5eSAndroid Build Coastguard Worker        "*/system/api/*.txt",
144*344a7f5eSAndroid Build Coastguard Worker        "*/public/api/*.txt",
145*344a7f5eSAndroid Build Coastguard Worker    ],
146*344a7f5eSAndroid Build Coastguard Worker}
147*344a7f5eSAndroid Build Coastguard Worker
148*344a7f5eSAndroid Build Coastguard Workerfilegroup {
149*344a7f5eSAndroid Build Coastguard Worker    name: "prebuilt_sdk_system_api_android_txt",
150*344a7f5eSAndroid Build Coastguard Worker    srcs: [
151*344a7f5eSAndroid Build Coastguard Worker        "*/system/api/android.txt",
152*344a7f5eSAndroid Build Coastguard Worker    ],
153*344a7f5eSAndroid Build Coastguard Worker}
154*344a7f5eSAndroid Build Coastguard Worker
155*344a7f5eSAndroid Build Coastguard Workerfilegroup {
156*344a7f5eSAndroid Build Coastguard Worker    name: "android27.txt",
157*344a7f5eSAndroid Build Coastguard Worker    srcs: [
158*344a7f5eSAndroid Build Coastguard Worker        "27/public/api/android.txt",
159*344a7f5eSAndroid Build Coastguard Worker    ],
160*344a7f5eSAndroid Build Coastguard Worker}
161