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 Generated_sources []string 59 Generated_headers []string 60 Shared_libs []string 61 Export_shared_lib_headers []string 62 Export_generated_headers []string 63 Header_libs []string 64 Sdk_version *string 65 Stl *string 66 Cpp_std *string 67 Cflags []string 68 Stem *string 69 Apex_available []string 70 Min_sdk_version *string 71 Target ccTargetProperties 72 Tidy *bool 73 Tidy_flags []string 74 Tidy_checks_as_errors []string 75} 76 77type javaProperties struct { 78 Name *string 79 Owner *string 80 Defaults []string 81 Installable *bool 82 Sdk_version *string 83 Platform_apis *bool 84 Srcs []string 85 Static_libs []string 86 Apex_available []string 87 Min_sdk_version *string 88} 89 90type rustProperties struct { 91 Name *string 92 Crate_name string 93 Owner *string 94 Defaults []string 95 Host_supported *bool 96 Vendor_available *bool 97 Srcs []string 98 Rustlibs []string 99 Stem *string 100 Target rustTargetProperties 101 Apex_available []string 102 Min_sdk_version *string 103} 104 105type phonyProperties struct { 106 Name *string 107 Required []string 108} 109