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 )