Commit Graph

33 Commits

Author SHA1 Message Date
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
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
126d7b3255 Update lang/go to 1.11. 2018-09-23 17:19:10 +00:00
kn
d6091e4b61 Update to go 1.10.1
OK jsing
2018-04-06 13:01:39 +00:00
jsing
b81b4b0398 Make go work with MAP_STACK. 2018-04-05 18:38:38 +00:00
jsing
cc12b02993 Update lang/go to Go 1.10.
ok jasper@
2018-03-14 14:14:36 +00:00
jsing
02bb071ec1 Update lang/go to 1.9.2
From Klemens Nanni <kl3 at posteo dot org> - thanks.
2017-11-28 16:27:21 +00:00
jsing
24fbcf9e7e Update lang/go to version 1.9.
ok ajacoutot@ jasper@
2017-09-03 15:42:25 +00:00
jsing
1a0c0a8666 Fix compiler flag handling and --print-libgcc-file-name hack, now that
clang is installed as cc. Allows regress pass again.
2017-08-31 17:05:19 +00:00
jsing
41a72622d3 Make lang/go work with clang.
This requires three changes:

- OpenBSD clang produces __guard_local symbols that are marked as hidden,
  which causes problems with the go linker. Workaround this by explicitly
  making __guard_local symbols visible when reading in an ELF object.

- OpenBSD clang currently fails to correctly report the compiler runtime
  via --print-libgcc-file-name. Workaround this issue by hardcoding it
  for the time being.

- The TestCgoConsistentResults test passes successfully outside of ports,
  however fails under a ports build. This requires further investigation
  but we can just skip the test for now.
2017-06-04 18:04:03 +00:00
jsing
3b234e6ab1 Update lang/go to version 1.8.
ok ajacoutot@
2017-02-23 15:57:42 +00:00
jsing
cd64551231 Update lang/go to 1.7.4.
This release addresses a security issue with net/http package's
Request.ParseMultipartForm method:

  https://golang.org/doc/devel/release.html#go1.7.minor

ok jasper@
2016-12-06 15:40:09 +00:00
jsing
6c8e51f58a Upgrade lang/go to 1.7.
ok czarkoff@ pea@
2016-08-18 17:23:03 +00:00
jsing
cd24745d47 Update lang/go to handle the sys_thrkill/sys_kill change.
Partially based on a diff from Ray Lai.
2016-06-27 15:57:17 +00:00
jsing
64a2bf49e4 Update lang/go to 1.6.2. 2016-05-20 16:03:24 +00:00
jsing
2f91d6db57 Allow lang/go to generate PT_TLS when cgo is used on OpenBSD. This makes
Go 1.6 pass regress on openbsd/386 and openbsd/amd64. Also stop exporting
environ and __progname from cgo, since these symbols are no longer required
by libc.
2016-05-16 13:50:01 +00:00
jsing
4d26e08575 Stop using sigreturn from the Go openbsd/386 signal trampoline - the
sigreturn syscall is going away in future versions of OpenBSD and its
use for Go is already broken due to the trampoline return checks. Instead
just return directly from the signal trampoline (as we have always done
for Go openbsd/amd64).

Also fix a bug in the Go openbsd/386 linker, which results in symbols in
the dynamic symbol table being emitted with a size of zero. With a current
ld.so, this results in symbol mismatch warnings.

Unbreaks the Go port on openbsd/386, however it still fails to pass regress
due to the PT_TLS changes.
2016-05-13 13:49:26 +00:00
jsing
1f47045c93 Update to Go 1.5.2.
This also installs in a manner that allows /usr/local/go to now be used for
GOROOT_BOOTSTRAP, if building from source.

ok jasper@
2015-12-05 05:01:24 +00:00
jasper
b7f5bf9dcf backport various security fixes:
- CVE-2015-5739, "Content Length" treated as valid header
- CVE-2015-5740, Double content-length headers does not return 400 error
- CVE-2015-5741, Additional hardening, not sending Content-Length w/Transfer-Encoding, Closing connections

from upstream git

ok jsing@ (MAINTAINER), czarkoff@
2015-08-19 06:57:20 +00:00
jsing
d14cd26a88 Update lang/go to 1.4.1.
ok sthen@ rpe@
2015-01-23 12:09:26 +00:00
jsing
e1f15078f3 Update lang/go to version 1.4.
ok bmercer@ daniel@ sthen@
2014-12-23 12:21:37 +00:00
jsing
5415a2a317 The size of if_msghdr changed with r1.156 of net/if.h, which means that
the various Sizeof*MsgHdr constants are now incorrect. This results in
various problems when attempting to parse the routing messages. Fix this
by respecting the header length returned from the kernel.

Makes regress pass again...

ok sthen@
2014-07-25 14:39:41 +00:00
jsing
8ab8f40717 Update lang/go to version 1.3.
ok matthew@ naddy@ sthen@
2014-07-25 13:36:55 +00:00
jsing
24f4541b86 Upgrade lang/go to version 1.2.1.
Update API exceptions so that make regress passes fully - this is the same
change that has already been made in Go tip.

ok sthen@, "Go for it" krw@
2014-03-25 13:21:20 +00:00
jsing
065f5275b2 Update lang/go to Go 1.2.
ok sthen@
2013-12-02 15:35:49 +00:00
jsing
88e063095f Make lang/go work past the ABI break, with 64-bit time_t.
Tested by DsP.

ok sthen@
2013-08-25 11:57:27 +00:00
jsing
48eb24be37 Update lang/go to 1.1.1, from Amit Kulkarni.
ok abieber@
2013-07-13 15:46:43 +00:00
jsing
d7e57c3701 Update lang/go to version 1.1.
Also preserve the timestamps of the source and compiled binaries so that
"go build" does not think installed libraries should be recompiled.

ok jasper@ sthen@
2013-05-15 12:10:15 +00:00
jsing
61de7b7719 Unbreak the lang/go port by switching from the old __tfork syscall that no
longer exists, to the current __tfork syscall. Also use __set_tcb instead
of sysarch.

ok sthen@
2013-03-12 09:57:10 +00:00
jsing
566078e7ce Update to go 1.0.3.
- Fix a bug in the regress tests that may result in the tests being built/run
  with the installed binaries rather than the new binaries.
- Fix a bug related to 'go install' trying to rebuild non-writeable $GOROOT
  packages, when used with a $GOPATH (issue 4106).
- Include the 'misc' part of the package, which contains editor
  configuration files, etc.

ok jsg@, sthen@
2012-10-01 06:20:09 +00:00
sthen
8953ad4aeb add elf note section for OpenBSD. patches from jsing, applied to port by me. 2012-09-19 21:10:38 +00:00
jsing
2070d9343a Use the __tfork() syscall instead of rfork(), which no longer exists.
ok sthen@
2012-04-15 13:37:27 +00:00
jsing
fe4700260e Import go-1.
Go is an open source programming environment that makes it easy to build
simple, reliable, and efficient software.

With assistance from sthen@

ok sthen@
2012-03-31 12:37:15 +00:00