blob: 9437a35c050498ed764af8610e7b6eaba8d83c92 [file] [log] [blame]
// Copyright 2015 The Bazel Authors. All rights reserved.
//
// 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.
syntax = "proto3";
package blaze;
option java_package = "com.google.devtools.build.lib.ideinfo.androidstudio";
option java_generate_equals_and_hash = true;
message ArtifactLocation {
// deprecated -- this is not machine agnostic and will be removed in a future release
string root_path = 1 [deprecated=true];
string relative_path = 2;
bool is_source = 3;
// set for derived artifacts (is_source = false)
string root_execution_path_fragment = 4;
}
message LibraryArtifact {
ArtifactLocation jar = 1;
ArtifactLocation interface_jar = 2;
ArtifactLocation source_jar = 3;
}
message JavaRuleIdeInfo {
repeated LibraryArtifact jars = 1;
repeated LibraryArtifact generated_jars = 2;
ArtifactLocation package_manifest = 3;
repeated ArtifactLocation sources = 4;
ArtifactLocation jdeps = 5;
}
message AndroidRuleIdeInfo {
repeated ArtifactLocation resources = 1;
ArtifactLocation apk = 3;
repeated ArtifactLocation dependency_apk = 4;
ArtifactLocation manifest = 5;
string java_package = 7;
bool has_idl_sources = 8;
LibraryArtifact idl_jar = 9;
bool generate_resource_class = 10;
}
message RuleIdeInfo {
enum Kind {
ANDROID_BINARY = 0;
ANDROID_LIBRARY = 1;
ANDROID_TEST = 2;
ANDROID_ROBOELECTRIC_TEST = 3;
JAVA_LIBRARY = 4;
JAVA_TEST = 5;
JAVA_IMPORT = 6;
JAVA_BINARY = 7;
PROTO_LIBRARY = 8;
ANDROID_SDK = 9;
JAVA_PLUGIN = 10;
}
string label = 1;
Kind kind = 2;
// deprecated -- this is not machine agnostic and will be removed in a future release
string build_file = 3 [deprecated=true];
repeated string dependencies = 4;
// kind is one of {JAVA,ANDROID}_{LIBRARY,BINARY,TEST} and JAVA_IMPORT
JavaRuleIdeInfo java_rule_ide_info = 7;
AndroidRuleIdeInfo android_rule_ide_info = 8;
repeated string tags = 9;
repeated string runtime_deps = 10;
ArtifactLocation build_file_artifact_location = 11;
}