github.com/SagerNet/gvisor@v0.0.0-20210707092255-7731c139d75c/pkg/sentry/fs/lock/BUILD (about)

     1  load("//tools:defs.bzl", "go_library", "go_test")
     2  load("//tools/go_generics:defs.bzl", "go_template_instance")
     3  
     4  package(licenses = ["notice"])
     5  
     6  go_template_instance(
     7      name = "lock_range",
     8      out = "lock_range.go",
     9      package = "lock",
    10      prefix = "Lock",
    11      template = "//pkg/segment:generic_range",
    12      types = {
    13          "T": "uint64",
    14      },
    15  )
    16  
    17  go_template_instance(
    18      name = "lock_set",
    19      out = "lock_set.go",
    20      consts = {
    21          "minDegree": "3",
    22      },
    23      package = "lock",
    24      prefix = "Lock",
    25      template = "//pkg/segment:generic_set",
    26      types = {
    27          "Key": "uint64",
    28          "Range": "LockRange",
    29          "Value": "Lock",
    30          "Functions": "lockSetFunctions",
    31      },
    32  )
    33  
    34  go_library(
    35      name = "lock",
    36      srcs = [
    37          "lock.go",
    38          "lock_range.go",
    39          "lock_set.go",
    40          "lock_set_functions.go",
    41      ],
    42      visibility = ["//pkg/sentry:internal"],
    43      deps = [
    44          "//pkg/abi/linux",
    45          "//pkg/context",
    46          "//pkg/log",
    47          "//pkg/sync",
    48          "//pkg/waiter",
    49          "@org_golang_x_sys//unix:go_default_library",
    50      ],
    51  )
    52  
    53  go_test(
    54      name = "lock_test",
    55      size = "small",
    56      srcs = [
    57          "lock_range_test.go",
    58          "lock_test.go",
    59      ],
    60      library = ":lock",
    61      deps = ["@org_golang_x_sys//unix:go_default_library"],
    62  )