blob: aa34bc913b2f79e193113799d60d7d7a8522f179 [file] [log] [blame]
load("//tools/bzl:plugin.bzl", "PLUGIN_TEST_DEPS", "PLUGIN_DEPS_NEVERLINK", "gerrit_plugin")
load("//lib/prolog:prolog.bzl", "prolog_cafe_library")
load("//owners-common:common.bzl", "EXTERNAL_DEPS")
PROLOG_PREDICATES = glob(["src/main/java/gerrit_owners/**/*.java"]) + [
"src/main/java/com/googlesource/gerrit/owners/OwnersStoredValues.java",
]
java_library(
name = "gerrit-owners-predicates",
srcs = PROLOG_PREDICATES,
deps = [
"@prolog-runtime//jar:neverlink",
"//owners-common:owners-common",
] + PLUGIN_DEPS_NEVERLINK,
)
prolog_cafe_library(
name = "gerrit-owners-prolog-rules",
srcs = glob(["src/main/prolog/*.pl"]),
deps = PLUGIN_DEPS_NEVERLINK + [
":gerrit-owners-predicates",
],
)
gerrit_plugin(
name = "owners",
srcs = glob(
[
"src/main/java/**/*.java",
],
exclude = PROLOG_PREDICATES,
),
manifest_entries = [
"Implementation-Title: Gerrit OWNERS plugin",
"Implementation-URL: https://gerrit.googlesource.com/plugins/owners",
"Gerrit-PluginName: owners",
"Gerrit-Module: com.googlesource.gerrit.owners.OwnersModule",
"Gerrit-ApiVersion: 2.16",
],
resources = glob(["src/main/resources/**/*"]),
deps = [
":gerrit-owners-predicates",
":gerrit-owners-prolog-rules",
"//owners-common",
],
)
java_library(
name = "owners__plugin_test_deps",
testonly = 1,
visibility = ["//visibility:public"],
exports = EXTERNAL_DEPS + PLUGIN_TEST_DEPS,
)