summaryrefslogtreecommitdiffstats
path: root/meta/classes-recipe/go-mod.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes-recipe/go-mod.bbclass')
-rw-r--r--meta/classes-recipe/go-mod.bbclass26
1 files changed, 26 insertions, 0 deletions
diff --git a/meta/classes-recipe/go-mod.bbclass b/meta/classes-recipe/go-mod.bbclass
new file mode 100644
index 0000000000..927746a338
--- /dev/null
+++ b/meta/classes-recipe/go-mod.bbclass
@@ -0,0 +1,26 @@
1#
2# Copyright OpenEmbedded Contributors
3#
4# SPDX-License-Identifier: MIT
5#
6
7# Handle Go Modules support
8#
9# When using Go Modules, the the current working directory MUST be at or below
10# the location of the 'go.mod' file when the go tool is used, and there is no
11# way to tell it to look elsewhere. It will automatically look upwards for the
12# file, but not downwards.
13#
14# To support this use case, we provide the `GO_WORKDIR` variable, which defaults
15# to `GO_IMPORT` but allows for easy override.
16#
17# Copyright 2020 (C) O.S. Systems Software LTDA.
18
19# The '-modcacherw' option ensures we have write access to the cached objects so
20# we avoid errors during clean task as well as when removing the TMPDIR.
21GOBUILDFLAGS:append = " -modcacherw"
22
23inherit go
24
25GO_WORKDIR ?= "${GO_IMPORT}"
26do_compile[dirs] += "${B}/src/${GO_WORKDIR}"