blob: ce80d0632905930fe2e166dccd26bac5e3171258 [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.
// This build file handles the logical unit that is the combined "core-libart"
// + "core-oj" jars. These two jars will always be shipped as a unit but are
// kept separate on device for licensing reasons. Because they will be shipped
// together we can consider them as a unit and we don't need a well-defined
// intra-core API between them.
// Tests associated with the {core-libart + core-oj} intra-core APIs.
java_test {
name: "core-libart+oj-intra-test",
srcs: [ "src/test/java/**/*.java" ],
no_standard_libs: true,
libs: [
// We depend on stubs not the impl code. We do not test
// internals, just the {public SDK + intra-core} APIs.
"core.intra.stubs",
// Other deps needed for tests.
"junit",
],
system_modules: "core-intra-stubs-system-modules",
}
// Generates stub source files for the {public SDK + intra-core} APIs
// of core-libart.
droidstubs {
name: "core-libart+oj-intra-stubs",
srcs: [
":core_libart_api_files",
":core_oj_api_files",
":openjdk_mmodule_extra_files",
],
no_framework_libs: true,
installable: false,
args: "--hide-annotation libcore.api.Hide "
+ "--show-single-annotation libcore.api.IntraCoreApi",
merge_inclusion_annotations_dirs: ["ojluni-annotated-mmodule-stubs"],
}
// A library containing the {public SDK + intra-core} API stubs for
// core-libart.
java_library {
name: "core-libart+oj.intra.stubs",
srcs: [":core-libart+oj-intra-stubs"],
no_standard_libs: true,
// We use core.intra.stubs here to prove that we have all the dependencies
// needed to compile the libart intra stubs within the intra stubs, i.e.
// there are no non-API references.
libs: ["core.intra.stubs"],
system_modules: "core-intra-stubs-system-modules",
openjdk9: {
javacflags: ["--patch-module=java.base=."],
},
}