diff options
author | Adin Scannell <ascannell@google.com> | 2019-04-04 17:04:30 -0700 |
---|---|---|
committer | Shentubot <shentubot@google.com> | 2019-04-04 17:05:38 -0700 |
commit | 75c8ac38e0f6cc4eb3726c89aee41357cd592c4b (patch) | |
tree | b8d9a574de6efa6272b2b34984d2a975c6a1f76d | |
parent | e9508967b0a1c9a8398adf5f6c28be79353f8a1f (diff) |
BUILD: Add useful go_path target
Change-Id: Ibd6d8a1a63826af6e62a0f0669f8f0866c8091b4
PiperOrigin-RevId: 242037969
-rw-r--r-- | BUILD | 17 | ||||
-rw-r--r-- | CONTRIBUTING.md | 18 | ||||
-rw-r--r-- | pkg/sentry/syscalls/linux/sys_utsname.go | 2 |
3 files changed, 36 insertions, 1 deletions
@@ -1,3 +1,7 @@ +package(licenses = ["notice"]) # Apache 2.0 + +load("@io_bazel_rules_go//go:def.bzl", "go_path") + # The sandbox filegroup is used for sandbox-internal dependencies. package_group( name = "sandbox", @@ -5,3 +9,16 @@ package_group( "//...", ], ) + +# gopath defines a directory that is structured in a way that is compatible +# with standard Go tools. Things like godoc, editors and refactor tools should +# work as expected. +# +# The files in this tree are symlinks to the true sources. +go_path( + name = "gopath", + mode = "link", + deps = [ + "//runsc", + ], +) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c2d686d18..b91244de8 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -12,6 +12,24 @@ You generally only need to submit a CLA once, so if you've already submitted one (even if it was for a different project), you probably don't need to do it again. +### Using GOPATH + +Some editors may require the code to be structured in a `GOPATH` directory tree. +In this case, you may use the `:gopath` target to generate a directory tree with +symlinks to the original source files. + +``` +bazel build :gopath +``` + +You can then set the `GOPATH` in your editor to `bazel-bin/gopath`. + +If you use this mechanism, keep in mind that the generated tree is not the +canonical source. You will still need to build and test with `bazel`. New files +will need to be added to the appropriate `BUILD` files, and the `:gopath` target +will need to be re-run to generate appropriate symlinks in the `GOPATH` +directory tree. + ### Coding Guidelines All code should conform to the [Go style guidelines][gostyle]. diff --git a/pkg/sentry/syscalls/linux/sys_utsname.go b/pkg/sentry/syscalls/linux/sys_utsname.go index 689f2f838..f7545b965 100644 --- a/pkg/sentry/syscalls/linux/sys_utsname.go +++ b/pkg/sentry/syscalls/linux/sys_utsname.go @@ -35,7 +35,7 @@ func Uname(t *kernel.Task, args arch.SyscallArguments) (uintptr, *kernel.Syscall copy(u.Nodename[:], uts.HostName()) copy(u.Release[:], version.Release) copy(u.Version[:], version.Version) - copy(u.Machine[:], "x86_64") // +build tag above. + copy(u.Machine[:], "x86_64") // build tag above. copy(u.Domainname[:], uts.DomainName()) // Copy out the result. |