When a MOVDstorezero (8 bytes) is used the offset field
in the instruction must be a multiple of 4. This situation
had been corrected in the rules for other types of stores
but not for the zero case.
_main has an early check to verify if a binary is statically or dynamically
linked that depends on R0 being zero. R0 is not guaranteed to be zero at that
point and this can break Go on ppc64le.
- remove unneeded "|| return 1"
- make copying sources as separate step
- fix 'rootpkg' to be invokable as individual step multiple times
(fix environment, and not moving things out of $builddir)
- do not ship cross-built tools in 'go-tools' package
The external linker for ppc64le was pointing to /lib64/ld-musl-ppc64le.so.1
but the valid path for alpine ppc64le is /lib/ld-musl-powerpc64le.so.1.
This issue was found by Lynn Boger from IBM go compiler team.
Go package build was disabled on ppc64le because it was missing go-bootstrap dependency.
As the last version of go-bootstrap (1.4) is not available for ppc64le, I cross-compiled
it and uploaded it to: ftp://ftp.unicamp.br/pub/ppc64el/alpine/go-bootstrap/
The go-bootstrap is now installed in build-edge-ppc64le and can compile the go package.
Now that go-bootstrap can be the bootstrap package (for x86*) or
the real go package, search for the right bootstrap go directory
to use. This also adds s390x arch mapping.
This enables Go to compile itself with previous Go build. Should
improve build times. More importantly, this is prerequisite to get
the cross compilation makedependencies right. Support for cross-compiling
Go to new arches is due out soon.
we need the arm bootstrap binary explicitly in source so abuild does not
complain about the extra checksum.
also remove paxmark from makedepends as its no longer used.
This fixes time zone lookups using the `time.LoadLocation` function by
ensuring that the time zone database distributed with Go
($GOROOT/lib/time/zoneinfo.zip) is installed. You can find more
information about this file here:
https://golang.org/pkg/time/#LoadLocation