121 Commits

Author SHA1 Message Date
abieber
c9b7d0ca6e Update Go to 1.15.
OK jsing@
2020-08-21 22:12:24 +00:00
sthen
1ed9d5db68 regen plist to unbreak packaging on !amd64 2020-07-20 11:34:52 +00:00
abieber
dee78dc62d Bump Go to 1.15beta1.
- Add a permissions fix from sthen@
- Remove patches as they are not needed now

Tested on amd64, arm64, armv7 and i386 (ty sthen!).

armv7 has an intermittent issue with tests.

OK sthen, jsing
2020-07-17 18:19:17 +00:00
abieber
970e853fd4 Add the ability to follow redirected dependencies.
- De-duplicate our .mod and .zip files.
- Move chdir to a child process.
- Break MODGO_MODULES and MODGO_MODFILES values into their own lines
  for easier reading.
2020-06-25 13:57:45 +00:00
paco
2c326f8b33 add FIX_CLEANUP_PERMISSIONS and enable it by default on go.port.mk when
using MODGO_MODNAME.

This is needed to work around this issue:
https://github.com/golang/go/issues/27455

which makes `make clean` because of the restrictive permissions.

input and corrections from sthen@ and jca@
ok sthen@ jca@ espie@
2020-06-08 13:16:26 +00:00
ajacoutot
6e2966ef49 No need to extract the zip modules either, go takes care of it.
prodded by and ok abieber@
2020-05-17 13:08:20 +00:00
ajacoutot
251c3115fb Do not extract mod files. 2020-05-17 10:31:50 +00:00
ajacoutot
36674ba8e1 SUPDISTFILES is never added to DISTFILES so "make fetch" will not get them.
Move to DISTFILES directly; to be revisited once the go folks are awake but
it should at least fix the breakage seen by naddy@ for now.
2020-05-17 10:08:36 +00:00
abieber
9e0580770b Teach portgen how to speak Go!
With this a port can be easily generated for Go applications that support Go
modules (there will be a go.mod file in the root of the project).

For example: https://github.com/jrick/domain/blob/master/go.mod

The mod file lists "github.com/jrick/domain" as the module name, so a portgen
command to build the above tool would be:

  portgen go github.com/jrick/domain

OK afresh1@ kmos@
2020-05-15 01:32:48 +00:00
jsing
3a91ead37a Update lang/go binary bootstrap to a version that contains no ops following
swi instructions on openbsd/arm.
2020-03-20 11:23:08 +00:00
jsing
62aea85f26 Update lang/go to 1.13.9. 2020-03-20 09:04:07 +00:00
jsing
4f68b69023 Add two no op instructions following swi for Go on openbsd/arm.
arm processors have the same speculative execution flaw that occurs across
a syscall boundary, which was previously addressed in the arm64 port.
2020-03-20 08:02:29 +00:00
espie
0bce543793 simpler SEPARATE_BUILD semantics 2020-03-06 15:26:18 +00:00
jsing
6a54adbd27 Update lang/go binary bootstrap to a version that contains no ops following
svc instructions on openbsd/arm64.
2020-02-23 14:28:44 +00:00
jsing
9cf24da4ba Add two no op instructions following svc for Go on openbsd/arm64.
All except some of the most recent arm64 processors have a speculative
execution flaw that occurs across a syscall boundary, which cannot be
mitigated in the kernel. In order to protect against this leak a
speculation barrier needs to be placed after an svc instruction.

In order to avoid the performance impact of these instructions, the kernel
will soon start returning execution two instructions past the svc call.
For now two hardware no ops are added, which allows syscalls to work with
both old and new kernels. Once the kernel is cut over the no ops can be
replaced with actual speculation barriers.

Discussed at length with deraadt@
2020-02-04 17:22:42 +00:00
jsing
bfad729920 Update lang/go to 1.13.7. 2020-01-30 17:11:08 +00:00
jsing
82465f8e77 Update lang/go to 1.13.6. 2020-01-26 08:14:01 +00:00
jsing
c266ce0a5c Update lang/go to 1.13.5. 2020-01-01 13:03:39 +00:00
sthen
fe5573c2c8 actually pass ${MAKE_ENV}, GO386=387 wasn't getting correctly passed through
for lang/go itself (though was working for ports built using go.port.mk).
2019-12-02 22:20:38 +00:00
sthen
f99ed9e2ea include REVISION in PKGSPEC, to trigger updates in dependent packages
due to the i386 SSE->387 change
2019-11-19 09:30:40 +00:00
sthen
a8a3b70b58 On i386, currently go autodetects SSE at build time, and produces
binaries appropriate for the build machine. This doesn't work for
package builds where packages are produced on a machine with SSE
but are expected to work on machines without. Set GO386=387 during
the build to disable this. OK/improved comment from jsing@.
2019-11-19 09:17:06 +00:00
jsing
4db8f7e433 Update lang/go to 1.13.3.
This includes security fixes released in 1.13.2.
2019-10-24 16:22:07 +00:00
sthen
f23085c90b fix MODGO_PACKAGES and MODGO_TOOLS arch name on aarch64 machines (using
the same arch conversion list as done in the lang/go port itself; add
a comment reminding to keep them in-sync). unbreaks packaging of the
few golang ports that actually build on aarch64.
2019-10-06 15:37:15 +00:00
jsing
0d05e35621 Update lang/go to 1.13.1.
This addresses a security issue in net/http.

ok naddy@
2019-10-04 17:02:11 +00:00
tb
435f824b93 Make tests work with PORTS_PRIVSEP=Yes. 2019-09-27 19:04:57 +00:00
jsing
2b82a3c4b4 Set GO111MODULE=off via go.port.mk to prevent external access being
attempted during builds.

Fixes several other packages that break during build.

ok sthen@
2019-09-15 02:04:00 +00:00
jsing
c15e53f079 Enable Go on aarch64/arm64.
ok phessler@
2019-09-15 02:00:34 +00:00
sthen
99f7af9718 poison GOPROXY in the environment during ports build, ports aren't
allowed to access the network at build time and this makes failures
obvious even if you don't use (recommended) PORTS_PRIVSEP.
2019-09-14 21:30:41 +00:00
jsing
96037ecdb2 Update the lang/go binary bootstrap to Go 1.13. 2019-09-13 09:04:07 +00:00
jsing
1f984f36de Update lang/go to Go 1.13.
ok abieber@ sthen@
2019-09-12 18:48:30 +00:00
martijn
bc27853211 Add support for MODGO_BINDIR to allow go applications to be installed in
an alternative location. Still defaults to bin/.

OK sthen@
2019-09-04 12:22:03 +00:00
jsing
800793e1df Update lang/go to 1.12.8.
This includes security fixes to the net/http and net/url packages.
2019-08-14 08:23:28 +00:00
sthen
3318ced016 replace simple PERMIT_PACKAGE_CDROM=Yes with PERMIT_PACKAGE=Yes 2019-07-12 20:46:54 +00:00
jsing
3395d04c86 Update lang/go to Go 1.12.7. 2019-07-09 17:54:46 +00:00
jsing
d3f9579cdb Update lang/go to 1.12.5 2019-05-07 16:33:42 +00:00
sthen
4c9d7e6039 No need for a special MODGO_ENV for go.port.mk, just use normal MAKE_ENV
like the rest of the ports tree. This also allows removing a bunch of
manual setting of PATH="${PORTPATH}" HOME="${PORTHOME}" done in various
ports etc. This also makes sure CFLAGS is passed through (not everything
honours it but it does improve at least some ports).

Remove NO_CCACHE from www/honk that was added because the above problem
resulted in ccache variables not being passed through correctly breaking
the cc calls in this.

ok kmos@
2019-05-04 21:46:16 +00:00
jsing
57d0434c51 Ensure GOCACHE refers to a suitable location when building Go.
Issue found and fix verified by phessler@
2019-05-04 15:03:15 +00:00
jsing
1948bd9861 Build lang/go for openbsd/arm using a binary bootstrap.
With input from and ok sthen@.
2019-04-19 07:15:36 +00:00
jsing
f3753ee987 Update lang/go to 1.12.4. 2019-04-15 17:14:14 +00:00
jsing
5878478513 Update lang/go to version 1.12.1. 2019-03-16 15:01:30 +00:00
jsing
9b0fce0dd3 Update lang/go to version 1.12.
ok sthen@
2019-03-16 13:37:29 +00:00
jsing
9feeecb26d Go 1.12 requires GOCACHE to be enabled - update go.port.mk appropriately.
ok sthen@
2019-03-16 13:36:01 +00:00
jsing
a3bbf060d3 Use hw.ncpuonline rather than hw.ncpu to determine how many threads to run.
Prompted by tedu@
2019-02-09 15:09:19 +00:00
jsing
cafca2f498 Update lang/go to 1.11.5.
This includes a security fix to the crypto/elliptic package.
2019-01-29 14:25:28 +00:00
jsing
a20b34842d Allow weak symbols to be duplicated when already defined.
When -mretpoline is enabled with clang, a __llvm_retpoline_r11 weak symbol
is emitted in each compilation unit. This results in the Go linker
complaining when processing a package archive that contains cgo linkages,
since it finds the same weak symbol defined in multiple object files.

Relax the duplicate symbol detection such that weak symbols are permitted
to be duplicated. This makes it possible to build Go with clang again and
addresses a similar duplicate weak symbol issue that results from retguard.

Also backport an upstream commit that corrects the handling of libgcc vs
libcompiler_rt. Combined with the above fix `make regress` now passes with
both gcc and clang.
2019-01-05 12:59:25 +00:00
jsing
964270cb22 Update lang/go to version 1.11.4.
This minor revision update includes various fixes, three of which address
security related issues.
2018-12-15 14:54:41 +00:00
jsing
4d07fd460a Update lang/go to 1.11.2. 2018-11-04 20:49:46 +00:00
jsing
126d7b3255 Update lang/go to 1.11. 2018-09-23 17:19:10 +00:00
sthen
a76ac58134 move MODGO_FLAGS+=-x under the DEBUG .if - as jsing pointed out a while
ago, output from this is really very noisy.

since the build with no flags is silent, add -v as a middle ground by
defaulot, so you can see that something is happening during the build,
but without so much console spam.

ok jasper@
2018-05-21 21:11:27 +00:00
kn
0578fb6c1e Simplify do-install, combine/improve find calls, clean up whitespace nits.
No package change.

OK jsing, jca
2018-05-10 18:39:35 +00:00