0008-use-GOBUILDMODE-to-set-buildmode.patch 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. From 971b5626339ce0c4d57f9721c9a81af566c5a044 Mon Sep 17 00:00:00 2001
  2. From: Alex Kube <alexander.j.kube@gmail.com>
  3. Date: Wed, 23 Oct 2019 21:19:26 +0430
  4. Subject: [PATCH 8/9] cmd/go: Use GOBUILDMODE to set buildmode
  5. Upstream-Status: Denied [upstream choose antoher solution: `17a256b
  6. cmd/go: -buildmode=pie for android/arm']
  7. While building go itself, the go build system does not support
  8. to set `-buildmode=pie' from environment.
  9. Add GOBUILDMODE to support it which make PIE executables the default
  10. build mode, as PIE executables are required as of Yocto
  11. Refers: https://groups.google.com/forum/#!topic/golang-dev/gRCe5URKewI
  12. Adapted to Go 1.13 from patches originally submitted to
  13. the meta/recipes-devtools/go tree by
  14. Hongxu Jia <hongxu.jia@windriver.com>
  15. Signed-off-by: Alexander J Kube <alexander.j.kube@gmail.com>
  16. ---
  17. src/cmd/go/internal/work/build.go | 8 +++++++-
  18. 1 file changed, 7 insertions(+), 1 deletion(-)
  19. diff --git a/src/cmd/go/internal/work/build.go b/src/cmd/go/internal/work/build.go
  20. index 6560317..5f3a988 100644
  21. --- a/src/cmd/go/internal/work/build.go
  22. +++ b/src/cmd/go/internal/work/build.go
  23. @@ -231,7 +231,13 @@ func AddBuildFlags(cmd *base.Command) {
  24. cmd.Flag.Var(&load.BuildAsmflags, "asmflags", "")
  25. cmd.Flag.Var(buildCompiler{}, "compiler", "")
  26. - cmd.Flag.StringVar(&cfg.BuildBuildmode, "buildmode", "default", "")
  27. +
  28. + if bm := os.Getenv("GOBUILDMODE"); bm != "" {
  29. + cmd.Flag.StringVar(&cfg.BuildBuildmode, "buildmode", bm, "")
  30. + } else {
  31. + cmd.Flag.StringVar(&cfg.BuildBuildmode, "buildmode", "default", "")
  32. + }
  33. +
  34. cmd.Flag.Var(&load.BuildGcflags, "gcflags", "")
  35. cmd.Flag.Var(&load.BuildGccgoflags, "gccgoflags", "")
  36. cmd.Flag.StringVar(&cfg.BuildMod, "mod", "", "")
  37. --
  38. 2.17.1 (Apple Git-112)