github.com/bazelbuild/bazel-gazelle@v0.36.1-0.20240520142334-61b277ba6fed/internal/is_bazel_module.bzl (about) 1 # Copyright 2023 The Bazel Authors. All rights reserved. 2 # 3 # Licensed under the Apache License, Version 2.0 (the "License"); 4 # you may not use this file except in compliance with the License. 5 # You may obtain a copy of the License at 6 # 7 # http://www.apache.org/licenses/LICENSE-2.0 8 # 9 # Unless required by applicable law or agreed to in writing, software 10 # distributed under the License is distributed on an "AS IS" BASIS, 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 # See the License for the specific language governing permissions and 13 # limitations under the License. 14 15 def _is_bazel_module_impl(repository_ctx): 16 repository_ctx.file("WORKSPACE") 17 repository_ctx.file("BUILD", """\ 18 load("@bazel_skylib//:bzl_library.bzl", "bzl_library") 19 20 bzl_library( 21 name = "defs", 22 srcs = ["defs.bzl"], 23 visibility = ["//visibility:public"], 24 ) 25 """) 26 repository_ctx.file("defs.bzl", "GAZELLE_IS_BAZEL_MODULE = {}".format( 27 repr(repository_ctx.attr.is_bazel_module), 28 )) 29 30 is_bazel_module = repository_rule( 31 implementation = _is_bazel_module_impl, 32 attrs = { 33 "is_bazel_module": attr.bool(mandatory = True), 34 }, 35 )