blob: d2f8cdef3abbd16f6cc4a1ad5021ca6145dcbfd1 [file] [log] [blame]
// Copyright (C) 2018 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
bootstrap_go_package {
name: "aidl-soong-rules",
pkgPath: "android/soong/aidl",
deps: [
"blueprint",
"soong",
"soong-android",
"soong-cc",
"soong-genrule",
"soong-phony",
"soong-java",
],
srcs: [
"aidl_interface.go",
"properties.go",
],
testSrcs: [
"aidl_test.go",
],
pluginFor: ["soong_build"],
}
aidl_interfaces_metadata {
name: "aidl_metadata_json",
visibility: ["//system/tools/aidl:__subpackages__"],
}
// These configurations are inherited by all aidl-gen modules
cc_defaults {
name: "aidl-cpp-module-defaults",
// TODO(b/31559095): remove when host bionic is available
defaults: ["libbinder_ndk_host_user"],
cflags: [
"-Wall",
"-Werror",
"-Wextra-semi",
],
}
java_defaults {
name: "aidl-java-module-defaults",
}
// Tests
filegroup {
name: "aidl-test-filegroup",
srcs: [
"tests_1/some_package/IFoo.aidl",
"tests_1/some_package/Thing.aidl",
"tests_1/some_package/sub_package/*.aidl",
],
}
// Copy of test-piece-1 as test only. Creating a separate library because 'vendor_available' is
// contagious.
aidl_interface {
name: "test-variants",
unstable: true,
local_include_dir: "tests_1",
vendor_available: true,
host_supported: true,
srcs: [
":aidl-test-filegroup",
],
}
aidl_interface {
name: "test-piece-1",
local_include_dir: "tests_1",
srcs: [
"tests_1/some_package/IFoo.aidl",
"tests_1/some_package/Thing.aidl",
"tests_1/some_package/sub_package/*.aidl", // testing glob w/o filegroup
],
versions: [
"1",
"2",
"3",
],
}
aidl_interface {
name: "test-piece-2",
local_include_dir: "tests_1",
srcs: [
"tests_1/INoPackage.aidl",
"tests_1/some_package/IBar.aidl",
],
imports: [
"test-piece-1",
],
versions: ["1"],
}
aidl_interface {
name: "test-piece-3",
local_include_dir: "tests_1",
srcs: [
"tests_1/other_package/IBaz.aidl",
],
imports: [
"test-piece-2",
],
versions: ["1"],
}
aidl_interface {
name: "test-piece-4",
local_include_dir: "tests_2",
srcs: [
"tests_2/another_package/IFaz.aidl",
],
imports: [
"test-piece-1",
],
versions: ["1"],
dumpapi: {
no_license: true,
},
}
aidl_interface {
name: "test-root-package",
srcs: [
"test_package/IBaz.aidl",
],
imports: [
"test-piece-2",
],
versions: [
"1",
"2",
],
}