Commit graph

54 commits

Author SHA1 Message Date
Jeffery To
a00a0230b4 golang: Update to 1.14.2
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-04-23 02:40:50 +08:00
Jeffery To
5f392c62a5 golang: Update to 1.14.1
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-03-23 21:25:52 +08:00
Jeffery To
074b417c67 golang: Update to 1.14
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-03-05 02:53:44 +08:00
Jeffery To
1772267747 golang: Update to 1.13.8
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-02-18 17:57:55 +08:00
Jeffery To
bddd1ec588 golang: Update files installed
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-02-05 14:19:34 +08:00
Jeffery To
89d3f0ab54 golang: Reorganize GoPackage/Environment and Makefile variables
* Move more environment variables into GoPackage/Environment
* Split GoPackage/Environment into target and build sections
* Do not set GOROOT_FINAL for Go packages (setting it should only affect
  the Go compiler and not Go packages)
* Set CGO_LDFLAGS to $(TARGET_LDFLAGS)
* Move GO_TARGET_* variables from golang-values.mk, and GO_VERSION_*
  variables from golang-version.mk, into golang/Makefile

This also updates runc, containerd, and docker-ce to reflect the changes
in GoPackage/Environment.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-02-05 14:19:34 +08:00
Jeffery To
3b5f1c73fb golang: Improve build isolation from user environment
* Set GOENV=off when building Go compiler and packages, to ignore user's
  environment configuration file
* Set GOCACHE when building host Go
* Unset GOTMPDIR, to use the buildroot temp directory instead of temp
  directories in build_dir

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-02-04 04:05:29 +08:00
Jeffery To
0dc4fa6efb golang: Update to 1.13.7, add PKG_CPE_ID to Makefile
This update includes fixes for[1]:
* CVE-2020-7919 - doesn't appear to be published publicly yet
* CVE-2020-0601 - a Windows-related issue

[1]: https://github.com/golang/go/issues?q=milestone%3AGo1.13.7+label%3ACherryPickApproved

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-02-03 04:58:58 +08:00
Jeffery To
b621d1b0f3 golang: Update for ASLR PIE tristate option change
The ASLR PIE option was changed to a tristate option
(openwrt/openwrt@19cbac7d26). This updates
the Go compiler package and golang-package.mk to account for this
change.

This also adds warning messages for when the user has selected PIE but
Go does not have PIE support for the chosen target.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-01-15 19:36:09 +08:00
Jeffery To
7459757039 golang: Update to 1.13.6
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-01-14 22:34:07 +08:00
Jeffery To
c18adadd91 golang: Add support for ASLR/PIE for Go packages
This adds support to compile position-independent executables for
packages that use golang-package.mk.

Go packages will have PIE enabled if:
* Go supports PIE on the target platform;
* CONFIG_PKG_ASLR_PIE is selected; and
* PKG_ASLR_PIE (for the package) is not set to 0

Go 1.13 supports PIE for x86 and arm targets; mips support is in
progress[1].

[1]: https://github.com/golang/go/issues/21222#issuecomment-542064462

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-01-14 22:17:21 +08:00
Jeffery To
b36f27716f golang: Fix selection of GOARM value
This fixes how GOARM is selected for arm platforms, based on support for
VFP/VFPv3 rather than CPU version.

Fixes #10967.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-01-14 22:11:02 +08:00
Jeffery To
c377576734 golang: Add support for ASLR/PIE for host and target Go
This adds support to compile host and target Go as position-independent
executables.

Host Go will have PIE enabled if Go supports PIE on the host platform.

Target Go will have PIE enabled if Go supports PIE on the target
platform and CONFIG_PKG_ASLR_PIE is selected.

Go 1.13 supports PIE for x86 and arm targets; mips support is in
progress[1].

[1]: https://github.com/golang/go/issues/21222#issuecomment-542064462

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-01-08 19:29:54 +08:00
Jeffery To
53603abaae golang: Make golang-values.mk more readable
This replaces conditional functions with conditional directives to make
golang-values.mk more readable.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-01-08 19:29:54 +08:00
Jeffery To
232634fb9a golang: Strip whitespace when using Go package variables
This adds calls to the strip function in golang-package.mk when using
variables expected to be set by Go packages.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-01-08 19:29:54 +08:00
Jeffery To
12812d328f golang: Update valid os/arch combinations for host Go
The list is updated for Go 1.13.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-01-08 19:29:54 +08:00
Jeffery To
c9781b027a golang: Update variables unexported in golang-values.mk
The lists of variables are updated for Go 1.13.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-01-08 19:29:54 +08:00
Jeffery To
afaf95b4d8 golang: Re-format environment variable unexports
This changes the formatting of environment variable unexports in
golang-values.mk to be more maintainable, and to document the sources of
variables.

There should be no change to the actual list of variables unexported.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-01-08 19:29:54 +08:00
Jeffery To
dbd6f224c3 golang: Format TARGET_LDFLAGS for gcc
go invokes the external linker by calling gcc, so -zxxx options in
TARGET_LDFLAGS (in golang-package.mk) need to be formatted as -Wl,z,xxx.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-12-29 18:49:06 +08:00
Jeffery To
4827bc7509 golang: Fix ldflags when GO_PKG_LDFLAGS is set
go build/install supports multiple -ldflags arguments, but they are not
combined; for each package, the latest match on the command line is
used.[1]

Previously, the main executable would not be affected by the default
ldflags if GO_PKG_LDFLAGS or GO_PKG_LDFLAGS_X were set. (The default
ldflags instructs go to use the external linker.)

This fixes golang-package.mk so that the default ldflags take effect in
all cases.

[1]: https://golang.org/cmd/go/#hdr-Compile_packages_and_dependencies

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-12-26 20:53:40 +08:00
Josef Schlehofer
802e8bf3f0
golang: Update to 1.13.5
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2019-12-09 23:27:24 +01:00
Jeffery To
e239dba400 golang: Update to 1.13.4
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-11-04 22:54:57 +08:00
Josef Schlehofer
10d55f63d6
golang: Update to version 1.13.3
Fixes CVE-2019-17596

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2019-10-19 22:53:25 +02:00
Josef Schlehofer
65b7bd6cc0
golang: Update to version 1.13.1
Fixes CVE-2019-16276

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2019-09-29 00:53:05 +02:00
Jeffery To
22ee6e86a0 golang: Use new -trimpath option when compiling Go packages
Go 1.13 added a new -trimpath option to the "go build" command[1] that
removes system paths from compiled executables. This replaces the
previous -trimpath flags.

There are still system paths in the compiled executable (for crti.o and
crtn.o, when cross-compiling); these appear to be stripped during the
packaging process.

[1]: https://golang.org/doc/go1.13#trimpath

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-09-13 17:48:40 +08:00
Xingwang Liao
0849e32659 golang: Update to 1.13
Signed-off-by: Xingwang Liao <kuoruan@gmail.com>
2019-09-06 11:59:04 +08:00
Jeffery To
da0dfb1856 golang: Update to 1.12.9
Includes fixes (in 1.12.8) for:
CVE-2019-14809 - https://nvd.nist.gov/vuln/detail/CVE-2019-14809
CVE-2019-9512 - https://nvd.nist.gov/vuln/detail/CVE-2019-9512
CVE-2019-9514 - https://nvd.nist.gov/vuln/detail/CVE-2019-9514

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-08-20 22:03:52 +08:00
Jeffery To
d0bf31431d golang: Update to 1.12.7
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-07-20 20:53:49 +08:00
Jeffery To
78e378fde3 golang: Update to 1.12.6
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-06-18 18:53:49 +08:00
Xingwang Liao
f072cd6adf
golang: Add the ability to custom build environment
by overwrite the GoPackage/Environment definition

Signed-off-by: Xingwang Liao <kuoruan@gmail.com>
2019-06-10 10:42:52 +08:00
Jeffery To
b1383b418c golang: Update to 1.12.5
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-05-13 20:08:03 +08:00
Jeffery To
a172abbda6 golang-libraries: Remove library packages
These Go library packages were added to support obfs4proxy. As
obfs4proxy was updated to allow dependency management by the Go
compiler, these packages no longer have any dependants.

This removes these packages from the feed.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-05-03 03:36:57 +08:00
Josef Schlehofer
2fe6c2aedd golang: update to version 1.12.4
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2019-04-18 16:06:23 +08:00
Jeffery To
5d787e9656 golang: Update to 1.12.3
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-04-09 14:22:47 +08:00
Jeffery To
0d3ec704b0 golang: Add support for setting gcflags/ldflags from package Makefile
This adds several variables for Go package Makefiles:
* GO_PKG_GCFLAGS - go tool compile arguments
* GO_PKG_LDFLAGS - go tool link arguments
* GO_PKG_LDFLAGS_X - go tool link -X definitions

Settings these will add the corresponding flags to the go install
command line. (Other command line arguments can still be added by
passing them as the first argument to GoPackage/Build/Compile.)

This also adds Go's runtime environment variables (GOGC, GOMAXPROCS,
GOTRACEBACK) to the unexport list.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-03-21 10:10:21 +08:00
Josef Schlehofer
c996ea6e4e golang: update to version 1.12.1
Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2019-03-19 14:53:18 +08:00
Xingwang Liao
98986e858a golang: Bump to version 1.12
Signed-off-by: Xingwang Liao <kuoruan@gmail.com>
2019-03-08 19:37:48 +08:00
Jeffery To
6a8c72c7b0 golang: Ignore GOFLAGS, GO111MODULE environment variables
These were added in Go 1.11.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-02-11 20:33:45 +08:00
Jeffery To
7dc1f3e029 golang: Install go.mod/go.sum by default
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-02-11 20:33:45 +08:00
Jeffery To
a80d54fc49 golang: Install files with .cpp/.hpp suffixes by default
This also updates the URL for dh-golang.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-02-11 20:33:44 +08:00
Jeffery To
081808ce69 golang: Fix handling of filenames with spaces
Closes #7127.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-02-11 20:33:44 +08:00
Jeffery To
6c0c3cefbf golang: Update to latest version
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2019-01-28 15:59:28 +08:00
Jeffery To
d53d839739 golang: update to latest version
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2018-12-19 15:33:44 +08:00
Hannu Nyman
d5cf9c0569
Merge pull request #7617 from neheb/sip
golang-github-dchest-siphash: Switch to versioned releases
2018-12-14 16:54:17 +02:00
Jeffery To
0fa7f3c882 golang: fix package clean / autoremove, add output whitespace
go 1.11 added modules, which are cached locally. The go developers have
decided to make this cache read-only (golang/go#27455), which causes
problems with package clean / autoremove (#7635).

This adds a call to clear this cache right after building, as currently
there is no easy way to hook into autoremove (it may be possible to hook
into package clean).

This also adds whitespace (blank lines) to certain places in make
output, to aid debugging.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2018-12-12 04:23:47 +08:00
Rosen Penev
4e88f514d6 golang-github-dchest-siphash: Switch to versioned releases
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2018-12-08 17:51:33 -08:00
Jeffery To
275e6c4a3d golang: Update to 1.11.2, fix build errors
When installing a newer host Go, be sure to remove the old host Go. Not
doing so causes errors[1] when trying to build target Go.

[1]: https://github.com/openwrt/packages/pull/7194#issuecomment-435948361

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2018-11-06 19:32:23 +08:00
Hannu Nyman
81c9ff735d
Merge pull request #5781 from jefferyto/obfs4proxy
obfs4proxy: new packages (including dependencies)
2018-11-04 20:34:36 +02:00
Jeffery To
453749f12b golang: Update to 1.11.1, add mips64 / mips64el builds
Go 1.11 added softfloat support for 64-bit MIPS systems[1], so this also
adds builds for mips64 and mips64el.

[1] https://golang.org/doc/go1.11#mips

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2018-10-13 02:30:03 +08:00
Jeffery To
2fa8e650d7 golang: Download bootstrap source directly, use golang-specific mirrors
These changes are a result of this conversation:
1929265024 (r29531922)

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2018-06-29 14:57:50 +08:00