mirror of
https://github.com/netbirdio/gvisor.git
synced 2026-05-22 17:12:49 -07:00
be48200c0e
PiperOrigin-RevId: 598898756
110 lines
2.3 KiB
Python
110 lines
2.3 KiB
Python
load("//pkg/sync/locking:locking.bzl", "declare_mutex", "declare_rwmutex")
|
|
load("//tools:defs.bzl", "go_library", "go_test")
|
|
load("//tools/go_generics:defs.bzl", "go_template", "go_template_instance")
|
|
|
|
package(
|
|
default_applicable_licenses = ["//:license"],
|
|
default_visibility = ["//:sandbox"],
|
|
licenses = ["notice"],
|
|
)
|
|
|
|
go_library(
|
|
name = "locking",
|
|
srcs = [
|
|
"atomicptrmap_ancestors_unsafe.go",
|
|
"atomicptrmap_goroutine_unsafe.go",
|
|
"lockdep.go",
|
|
"lockdep_norace.go",
|
|
"locking.go",
|
|
],
|
|
marshal = False,
|
|
stateify = False,
|
|
visibility = ["//:sandbox"],
|
|
deps = [
|
|
"//pkg/gohacks",
|
|
"//pkg/goid",
|
|
"//pkg/log",
|
|
"//pkg/sync",
|
|
],
|
|
)
|
|
|
|
go_template_instance(
|
|
name = "atomicptrmap_goroutine",
|
|
out = "atomicptrmap_goroutine_unsafe.go",
|
|
package = "locking",
|
|
prefix = "goroutineLocks",
|
|
template = "//pkg/sync/atomicptrmap:generic_atomicptrmap",
|
|
types = {
|
|
"Key": "int64",
|
|
"Value": "goroutineLocks",
|
|
},
|
|
)
|
|
|
|
go_template_instance(
|
|
name = "atomicptrmap_ancestors",
|
|
out = "atomicptrmap_ancestors_unsafe.go",
|
|
imports = {
|
|
"reflect": "reflect",
|
|
},
|
|
package = "locking",
|
|
prefix = "ancestors",
|
|
template = "//pkg/sync/atomicptrmap:generic_atomicptrmap",
|
|
types = {
|
|
"Key": "*MutexClass",
|
|
"Value": "string",
|
|
},
|
|
)
|
|
|
|
go_template(
|
|
name = "generic_mutex",
|
|
srcs = ["generic_mutex.go"],
|
|
visibility = ["//:sandbox"],
|
|
)
|
|
|
|
go_template(
|
|
name = "generic_rwmutex",
|
|
srcs = ["generic_rwmutex.go"],
|
|
visibility = ["//:sandbox"],
|
|
)
|
|
|
|
declare_mutex(
|
|
name = "mutex_test",
|
|
out = "mutex_test.go",
|
|
nested_lock_names = [
|
|
"m2",
|
|
"m3",
|
|
],
|
|
package = "locking_test",
|
|
prefix = "test",
|
|
)
|
|
|
|
declare_rwmutex(
|
|
name = "mutex_test2",
|
|
out = "mutex_test2.go",
|
|
package = "locking_test",
|
|
prefix = "test2",
|
|
)
|
|
|
|
declare_mutex(
|
|
name = "mutex_test3",
|
|
out = "mutex_test3.go",
|
|
package = "locking_test",
|
|
prefix = "test3",
|
|
)
|
|
|
|
go_test(
|
|
name = "locking_test",
|
|
size = "small",
|
|
srcs = [
|
|
"lockdep_nolockdep_test.go",
|
|
"lockdep_test.go",
|
|
"mutex_test.go",
|
|
"mutex_test2.go",
|
|
"mutex_test3.go",
|
|
],
|
|
deps = [
|
|
"//pkg/sync",
|
|
"//pkg/sync/locking",
|
|
],
|
|
)
|