140 Commits

Author SHA1 Message Date
czarkoff
a11a018bee simplify MODGO_CMD environment customization
Clear user's environment with SETENV and provide MODGO_ENV for adding variables
to environment and MODGO_GOPATH for altering GOPATH.

OK ajacoutot@, jasper@, kspillner@
2016-05-08 12:29:17 +00:00
czarkoff
06694c8448 use INSTALL_DATA instead of cp for go libraries
OK ajacoutot@ sthen@
2016-05-06 10:04:00 +00:00
czarkoff
f7c3c0505e Set INSTALL_STRIP= for go ports
OK ajacoutot@, sthen@
2016-05-05 10:46:50 +00:00
juanfra
c1e0f9a3a3 Update to go 1.5.4. OK jasper@ jsing@ (MAINTAINER).
https://groups.google.com/forum/#!topic/golang-announce/9eqIHqaWvck

"Go's crypto libraries passed certain parameters unchecked to the
underlying big integer library, possibly leading to extremely
long-running computations, which in turn makes Go programs vulnerable to
remote denial of service attacks.  Programs using HTTPS client
certificates or the Go SSH server libraries are both exposed to this
vulnerability.
This is CVE-2016-3959 and was addressed by this change:
https://golang.org/cl/21533
Thanks to David Wong for identifying this issue."
2016-04-14 17:43:26 +00:00
czarkoff
5f82570d19 Fix MODGO_INSTALL_TARGET so that timestamps would be preserved. This should fix
issue with go ports rebuilding their dependencies and failing to install them.

Based on input from Nigel Taylor.

OK ajacoutot@
2016-02-28 13:24:16 +00:00
jsing
f667ff2fd9 Rework go.port.mk to install packages in /usr/local/go-pkg and build
without -a, -work and without running things through sed and piping to
shell:

- Install additional packages under /usr/local/go-pkg and include this in
  GOPATH when building. Go considers anything under the GOROOT to be part
  of the standard library, which introduces various problems. In particular
  they do not get rebuilt without the -a flag.

- Using 'go build -a' is unnecessary (at least now that we're not
  installing in GOROOT). Furthermore, the semantics of -a have changed
  between go1.4 and go1.5. In go1.4 the standard library was excluded from
  the -a flag whereas for go1.5 it does mean all dependencies including the
  standard library (this was the same for go1.3). However, there is
  already blanket 'do not rebuild standard library packages' in place when
  the -a flag is NOT specified.

- Avoid -work since it leaves the work directory behind and nothing is
  currently cleaning it up.

- Overall, avoid running 'go install -x' and piping the results through
  sed and sh. Firstly, 'go install -x' is already running those commands,
  then they're being run a second time around via sh. Secondly, there are
  cases where replacing GOROOT is incorrect.

ok jasper@ sthen@ kspillner@ czarkoff@
2016-01-14 15:03:08 +00:00
jsing
1c5714d152 Update lang/go to 1.5.3.
This release addresses CVE-2015-8618.

ok ajacoutot@ sthen@
2016-01-14 12:11:50 +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
jasper
1e4c21592b add lang/go to CATEGORIES
ok czarkoff@
2015-08-11 20:16:21 +00:00
czarkoff
af3ebbd7b8 Don't call go with "-a" flag when building binaries. Allow overriding
MODGO_FLAGS in ports that need to do so.

OK ajacoutot@, kspillner@, sthen@
2015-06-12 05:20:48 +00:00
czarkoff
11506574f9 Refactor lang/go module
From port-modules(5):

     lang/go       Adds Go toolchain support.  Requires ALL_TARGET to be set
                   to canonical Go import path of port.  (Module sets it
                   automatically for ports that use GH_ACCOUNT and GH_PROJECT
                   macros.)

                   During execution of post-patch target module moves source
                   code from ${MODGO_SUBDIR} to ${WRKSRC}, subdirectory of
                   ${MODGO_WORKSPACE} - specially-crafted Go workspace located
                   at ${WRKDIR}/go.  During do-build module calls ``go
                   install'' with GOPATH set to ${MODGO_WORKSPACE}, runs its
                   output through sed to prevent writes outside WRKDIR sandbox
                   and sends output to sh(1).  During do-install it copies
                   executables from ${MODGO_WORKSPACE}/bin to ${PREFIX}/bin,
                   and/or directories ${MODGO_WORKSPACE}/pkg and
                   ${MODGO_WORKSPACE}/src to ${PREFIX}/go, depending on
                   MODGO_TYPE contents.

                   Sets BUILD_DEPENDS, RUN_DEPENDS, ALL_TARGET, TEST_TARGET,
                   ONLY_FOR_ARCHS, SEPARATE_BUILD, and WRKSRC.

                   Defines:

                   MODGO_TYPE       Type of port.  May be any combination of:

                                    bin  ordinary binary, which should be
                                         installed to ${PREFIX}/bin,

                                    lib  library, which should come with
                                         source code.

                                    Defaults to bin.

                   MODGO_WORKSPACE  Path to Go workspace set up for port build
                                    process.  Defaults to ${WRKDIR}/go.  See
                                    Go documentation for details.

                   MODGO_SUBDIR     Path to Go source code within port's
                                    sources tarball.  Defaults to ${WRKDIST}.

                   MODGO_SETUP_WORKSPACE
                                    Commands setting up Go workspace for
                                    building ports.  By default, happens
                                    during execution of post-patch target.

                   MODGO_BUILDDEP   Controls whether contents of
                                    MODGO_BUILD_DEPENDS are appended to port's
                                    BUILD_DEPENDS.  Defaults to Yes.

                   Additionally defines MODGO_PACKAGES, MODGO_SOURCES and
                   MODGO_TOOLS (paths for installed Go packages, sources and
                   tools respectively), MODGO_CMD and MODGO_FLAGS (source code
                   build command and flags passed as its arguments),
                   MODGO_BUILD_CMD and MODGO_TEST_CMD (commands for building
                   and testing go packages; normally called with canonical Go
                   package names as arguments),
                   MODGO_{BUILD,INSTALL,TEST}_TARGET and
                   MODGO_{BUILD,RUN}_DEPENDS.

OK sthen@
2015-06-08 09:17:04 +00:00
jasper
d30f4360a7 add beginnings for a golang module
input and ok jsing@ kspillner@ sthen@
2015-05-15 07:30:41 +00:00
jasper
8089971741 update to go 1.4.2
- http://golang.org/doc/devel/release.html#go1.4.minor

ok jsing@
2015-05-06 08:28:26 +00:00
kspillner
40d95e46c3 Switch to using GO_ARCHS.
ok jsing@
2015-03-18 16:21:02 +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
9b64e75a2f Update lang/go to 1.3.3.
ok sthen@
2014-10-26 13:07:14 +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
575dd6134b Add missing PLIST entries for lang/go 1.2.
Spotted by David Hill.

ok sthen@
2013-12-08 15:09:15 +00:00
sthen
d75908d019 honour CC/CXX, similar diff from marco 2013-12-02 20:07:38 +00:00
jsing
065f5275b2 Update lang/go to Go 1.2.
ok sthen@
2013-12-02 15:35:49 +00:00
sthen
27f03b1c52 bump REVISION for any ports using route messages. regen some distinfos and
remove unnecessary USE_GROFFs while there.
2013-10-31 21:12:12 +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
naddy
c2832a1290 move http://code.google.com, *.googlecode.com, and sites.google.com to https
suggested by bentley@
2013-08-07 21:31:12 +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
espie
0662a4e9d6 PERMIT_* / REGRESS->TEST sweep 2013-03-11 11:20:26 +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
espie
ccd1190a52 make sure make plist works on any arch, should fix pkglocatedb troubles. 2012-07-30 15:49:55 +00:00
sthen
265570289f allow native-compat_o51___tfork until Go is ported to the new system call.
I was going to add this to the global infrastructure/db/systrace.filter
(which was OK'd by phessler) but realised it makes more sense to
put it here.  ok jsing@
2012-07-04 15:20:31 +00:00
jsing
1b3eb18043 Update to Go version 1.0.2.
ok jasper@ sthen@
2012-07-04 15:18:39 +00:00
jsing
30a5bd85bc Update lang/go to version 1.0.1.
ok sthen@
2012-05-20 16:32:51 +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
d2d32d4d60 Remove incorrect ${FULLPKGNAME} from PLIST. 2012-04-15 13:19:15 +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