Commit Graph

25 Commits

Author SHA1 Message Date
John 5de81f076a go: add riscv64 2023-08-25 17:06:56 +02:00
Đoàn Trần Công Danh c359aaaa46 build-style/go: allow override GOTOOLCHAIN 2023-08-24 21:05:07 +07:00
Kirill 4c22fd9b48 common/build-style/go.sh: update go build style for go1.21.0 2023-08-23 16:06:44 -05:00
Tiago Carvalho 6bbd4166a0 common/environment/build-style/go.sh: allow setting CGO_ENABLED from templates 2023-01-13 18:57:23 -05:00
classabbyamp 5912b3f5b7
common/environment/build-style/go.sh: fix internal linking on i686 2022-08-10 15:17:27 -04:00
Érico Nogueira 224d7a37a6 common/environment/build-style: remove nostrip from go.sh
Hasn't been necessary in Go for a long time [1], so we should take
advantage of that. For an example of the advantages, the 'micro' editor
went from 15MB to 11MB on disk.

[1] https://honnef.co/posts/2016/10/go-and-strip/
2021-11-14 16:23:13 -03:00
Roberto Ricci 436c814fd4 build-style/go: set GO111MODULE=auto 2021-03-15 09:54:49 -03:00
q66 761b378854 build-style/go: drop 32-bit ppc from gccgo
this will always give us trouble, and probably is not worth
supporting
2021-01-20 14:14:39 +01:00
q66 69b49cfba6 build-style/go: restrict archs for gccgo env too
this is because some archs lack support in gccgo, and some are
not integrated yet in our toolchains
2020-12-17 01:50:52 +01:00
q66 02eeac0798 environment/build-style/go: check for empty hostmakedepends 2020-04-17 05:00:39 +02:00
q66 1b2bf53e82 build-style/go: allow usage with gccgo compiler
This checks if gcc-go-tools have been specified in host deps
and if so, use gccgo to build (gcc-go-tools conflicts with go).

Also, since gccgo is not a multi-compiler, we need to override GCCGO
to get cross-builds. The gccgo for target is always installed, as
it's a part of our cross-toolchains.

[ci skip]
2020-04-17 04:53:13 +02:00
Jürgen Buchmüller c7891063fb build-style/go.sh: support armv5* as well 2020-04-01 10:23:34 +02:00
q66 ec937e4d29 environment/build-style/go.sh: specify a default set of archs
This is necessary so that crossbuilds to unsupported architectures
are not actually attempted. There is a default archs set which
covers all architectures supported by the official compiler,
and setting it in the template can be used to restrict it more.

Also, add missing GOARCHs. These are irrelevant to whether we
can currently build for that arch or not. Just keep it around
as a list of potential archs to support. These are taken from
gccgo, and in case support for anything is added in the official
compiler, they should match.
2020-03-30 05:32:09 +02:00
q66 151f876627 common: add ppc64 build profiles and other ppc64 bits
This adds the build profiles for ppc64 targets as well as
modifications in other parts of the infra.

These targets are supported:

- ppc64le (glibc little endian elfv2)
- ppc64le-musl (musl little endian)
- ppc64-musl (musl big endian)

ELFv1 targets are explicitly not supported at this point.

Big endian musl supports ppc 970 or newer, while little endian
targets are set to a generic powerpc64le which effectively means
POWER8 and newer. Tuning is always set for POWER9, which is the
most likely target hardware. We also make sure AltiVec is always
on, because it is supported on all hardware we target.

[ci skip]
2019-01-05 23:38:00 +01:00
Jürgen Buchmüller e9cbfacb5a
build style go.sh: split gocache for glibc/muslc
Closes: #2542

Signed-off-by: Jürgen Buchmüller <pullmoll@t-online.de>
2018-09-11 12:39:29 +02:00
Michael Aldridge a4dd50388a xbps-src: Always enable the gocache
[ci_skip]
2018-09-01 22:05:07 -07:00
Michael Gehring 7c20248a20 common/environment/build-style/go.sh: drop go-cross-linux dep 2018-03-19 08:29:05 +01:00
Michael Aldridge 92d6e1a521 go build style: move GOPATH creation to do_configure() 2017-11-26 00:41:26 -08:00
Christian Neukirchen ff8e25b4f3 build-style/go.sh: enable aarch64. 2016-09-16 22:26:56 +02:00
Dominik Honnef 5accddbb26 go, build-style/go: set nopie=yes 2015-11-19 09:55:48 +01:00
Dominik Honnef 114c395bf9 build-style/go: support cross-compilation with cgo 2015-09-04 02:18:57 +02:00
Dominik Honnef 2bb87e4e07 build-style/go: don't set GOBIN
Go 1.5 doesn't permit our use of GOBIN anymore, breaking
cross-compilation (for details, see
https://github.com/golang/go/issues/9769)

In retrospect, I'm not sure why we set GOBIN in the first place;
GOPATH/bin should suffice.

Closes #2337
2015-08-22 20:58:24 +02:00
Dominik Honnef 3b617119c7 build-style/go: support building multiple packages 2015-05-04 13:40:44 +02:00
Dominik Honnef a62f407007 set Go env vars in environment
This way, a template can overwrite do_build but still have good defaults
for GOPATH, GOARCH and GOARM.
2015-02-21 14:49:02 +01:00
Dominik Honnef 77e8751a93 New build_style: go 2015-02-21 14:49:02 +01:00