1// Copyright (C) 2017 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 aidl 16 17type nameProperties struct { 18 Name *string 19} 20 21type hostProperties struct { 22 Cflags []string 23} 24 25type darwinProperties struct { 26 Enabled *bool 27} 28 29type imageProperties struct { 30 Shared_libs []string 31 Header_libs []string 32 Exclude_shared_libs []string 33 Cflags []string 34} 35 36type ccTargetProperties struct { 37 Host hostProperties 38 Darwin darwinProperties 39 Platform imageProperties 40 Vendor imageProperties 41 Product imageProperties 42} 43 44type rustTargetProperties struct { 45 Darwin darwinProperties 46} 47 48type ccProperties struct { 49 Name *string 50 Owner *string 51 Defaults []string 52 Double_loadable *bool 53 Vendor_available *bool 54 Odm_available *bool 55 Product_available *bool 56 Recovery_available *bool 57 Host_supported *bool 58 Installable *bool 59 Generated_sources []string 60 Generated_headers []string 61 Shared_libs []string 62 Static_libs []string 63 Export_shared_lib_headers []string 64 Export_generated_headers []string 65 Header_libs []string 66 Sdk_version *string 67 Stl *string 68 Cpp_std *string 69 Cflags []string 70 Stem *string 71 Apex_available []string 72 Min_sdk_version *string 73 Target ccTargetProperties 74 Tidy *bool 75 Tidy_flags []string 76 Tidy_checks_as_errors []string 77 Include_build_directory *bool 78} 79 80type javaProperties struct { 81 Name *string 82 Owner *string 83 Defaults []string 84 Installable *bool 85 Sdk_version *string 86 Platform_apis *bool 87 Srcs []string 88 Static_libs []string 89 Apex_available []string 90 Min_sdk_version *string 91} 92 93type rustProperties struct { 94 Name *string 95 Crate_name string 96 Owner *string 97 Defaults []string 98 Host_supported *bool 99 Vendor_available *bool 100 Product_available *bool 101 Srcs []string 102 Rustlibs []string 103 Stem *string 104 Target rustTargetProperties 105 Apex_available []string 106 Min_sdk_version *string 107} 108 109type Bazel_module struct { 110 Bp2build_available *bool 111} 112type bazelProperties struct { 113 *Bazel_module 114} 115 116type phonyProperties struct { 117 Name *string 118 Required []string 119} 120