1load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") 2 3config_setting( 4 name = "linux_amd64", 5 constraint_values = [ 6 "@platforms//cpu:x86_64", 7 "@platforms//os:linux", 8 ], 9) 10 11config_setting( 12 name = "darwin_amd64", 13 constraint_values = [ 14 "@platforms//cpu:x86_64", 15 "@platforms//os:macos", 16 ], 17) 18 19LIB_AMD64_SRCS = [ 20 "foo_amd64.go", 21 "foo_amd64.s", 22 "foo_amd64.h", 23] 24 25LIB_OTHER_SRCS = ["foo_other.go"] 26 27go_library( 28 name = "go_default_library", 29 srcs = select({ 30 ":linux_amd64": LIB_AMD64_SRCS, 31 ":darwin_amd64": LIB_AMD64_SRCS, 32 "//conditions:default": LIB_OTHER_SRCS, 33 }), 34 importpath = "github.com/bazelbuild/rules_go/tests/asm_include", 35) 36 37go_test( 38 name = "go_default_test", 39 size = "small", 40 srcs = ["foo_test.go"], 41 embed = [":go_default_library"], 42) 43