diff options
Diffstat (limited to 'local_repository_defs.bzl')
-rw-r--r-- | local_repository_defs.bzl | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/local_repository_defs.bzl b/local_repository_defs.bzl new file mode 100644 index 0000000..3c9b348 --- /dev/null +++ b/local_repository_defs.bzl @@ -0,0 +1,25 @@ +_bouncycastle_jar_rule = """ +java_import( + name = "bouncycastle_jar", + jars = ["bouncycastle.jar"], + visibility = ["//visibility:public"], + ) +""" + +# TODO(ekasper): implement environment invalidation once supported by bazel, +# see https://bazel.build/designs/2016/10/18/repository-invalidation.html +# Meanwhile, users have to call 'bazel clean' explicitly when the +# environment changes. +def _local_jars_impl(repository_ctx): + contents = "" + if "WYCHEPROOF_BOUNCYCASTLE_JAR" in repository_ctx.os.environ: + repository_ctx.symlink(repository_ctx.os.environ["WYCHEPROOF_BOUNCYCASTLE_JAR"], + "bouncycastle.jar") + contents += _bouncycastle_jar_rule + + repository_ctx.file("BUILD", contents) + +local_jars = repository_rule( + implementation = _local_jars_impl, + local = True +) |