xref: /aosp_15_r20/external/gson/Android.bp (revision a8de600362638ea28fd6cb3225451dc706d269bb)
1*a8de6003SAndroid Build Coastguard Worker// Copyright (C) 2022 The Android Open Source Project
2*a8de6003SAndroid Build Coastguard Worker//
3*a8de6003SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*a8de6003SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*a8de6003SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*a8de6003SAndroid Build Coastguard Worker//
7*a8de6003SAndroid Build Coastguard Worker//      http://www.apache.org/licenses/LICENSE-2.0
8*a8de6003SAndroid Build Coastguard Worker//
9*a8de6003SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*a8de6003SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*a8de6003SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*a8de6003SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*a8de6003SAndroid Build Coastguard Worker// limitations under the License.
14*a8de6003SAndroid Build Coastguard Worker
15*a8de6003SAndroid Build Coastguard Workerpackage {
16*a8de6003SAndroid Build Coastguard Worker    default_applicable_licenses: ["external_gson_license"],
17*a8de6003SAndroid Build Coastguard Worker}
18*a8de6003SAndroid Build Coastguard Worker
19*a8de6003SAndroid Build Coastguard Workerlicense {
20*a8de6003SAndroid Build Coastguard Worker    name: "external_gson_license",
21*a8de6003SAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
22*a8de6003SAndroid Build Coastguard Worker    license_kinds: [
23*a8de6003SAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
24*a8de6003SAndroid Build Coastguard Worker    ],
25*a8de6003SAndroid Build Coastguard Worker    license_text: [
26*a8de6003SAndroid Build Coastguard Worker        "LICENSE",
27*a8de6003SAndroid Build Coastguard Worker    ],
28*a8de6003SAndroid Build Coastguard Worker}
29*a8de6003SAndroid Build Coastguard Worker
30*a8de6003SAndroid Build Coastguard Workerjava_library {
31*a8de6003SAndroid Build Coastguard Worker    name: "gson",
32*a8de6003SAndroid Build Coastguard Worker    host_supported: true,
33*a8de6003SAndroid Build Coastguard Worker    srcs: [
34*a8de6003SAndroid Build Coastguard Worker        "gson/src/main/java/com/google/gson/**/*.java",
35*a8de6003SAndroid Build Coastguard Worker        ":GsonBuildConfig.java",
36*a8de6003SAndroid Build Coastguard Worker    ],
37*a8de6003SAndroid Build Coastguard Worker    sdk_version: "current",
38*a8de6003SAndroid Build Coastguard Worker    min_sdk_version: "30",
39*a8de6003SAndroid Build Coastguard Worker    // b/267831518: Pin tradefed and dependencies to Java 11.
40*a8de6003SAndroid Build Coastguard Worker    java_version: "11",
41*a8de6003SAndroid Build Coastguard Worker    target: {
42*a8de6003SAndroid Build Coastguard Worker        windows: {
43*a8de6003SAndroid Build Coastguard Worker            enabled: true,
44*a8de6003SAndroid Build Coastguard Worker        },
45*a8de6003SAndroid Build Coastguard Worker    },
46*a8de6003SAndroid Build Coastguard Worker    apex_available: [
47*a8de6003SAndroid Build Coastguard Worker        "//apex_available:platform",
48*a8de6003SAndroid Build Coastguard Worker        "//apex_available:anyapex",
49*a8de6003SAndroid Build Coastguard Worker    ],
50*a8de6003SAndroid Build Coastguard Worker}
51*a8de6003SAndroid Build Coastguard Worker
52*a8de6003SAndroid Build Coastguard Workerpython_binary_host {
53*a8de6003SAndroid Build Coastguard Worker    name: "gson_version_generator",
54*a8de6003SAndroid Build Coastguard Worker    main: "version_generator.py",
55*a8de6003SAndroid Build Coastguard Worker    srcs: ["version_generator.py"],
56*a8de6003SAndroid Build Coastguard Worker}
57*a8de6003SAndroid Build Coastguard Worker
58*a8de6003SAndroid Build Coastguard Workergenrule {
59*a8de6003SAndroid Build Coastguard Worker    name: "GsonBuildConfig.java",
60*a8de6003SAndroid Build Coastguard Worker    srcs: [
61*a8de6003SAndroid Build Coastguard Worker        "gson/src/main/java-templates/com/google/gson/internal/GsonBuildConfig.java",
62*a8de6003SAndroid Build Coastguard Worker        "pom.xml",
63*a8de6003SAndroid Build Coastguard Worker    ],
64*a8de6003SAndroid Build Coastguard Worker    out: ["com/google/gson/internal/GsonBuildConfig.java"],
65*a8de6003SAndroid Build Coastguard Worker    cmd: "$(location gson_version_generator) $(in) > $(out)",
66*a8de6003SAndroid Build Coastguard Worker    tools: ["gson_version_generator"],
67*a8de6003SAndroid Build Coastguard Worker}
68