[Buildroot] [PATCH 1/4] Add package go-bootstrap
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Wed Mar 2 22:43:49 UTC 2016
Geoff,
The commit title should be:
go-bootstrap: new host package
On Wed, 02 Mar 2016 19:23:33 +0000, Geoff Levand wrote:
> diff --git a/package/Config.in.host b/package/Config.in.host
> index 1c691a3..7cacef9 100644
> --- a/package/Config.in.host
> +++ b/package/Config.in.host
> @@ -13,6 +13,7 @@ menu "Host utilities"
> source "package/genext2fs/Config.in.host"
> source "package/genimage/Config.in.host"
> source "package/genpart/Config.in.host"
> + source "package/go-bootstrap/Config.in.host"
There is no need for a Config.in.host file for this package, it is
just a build dependency for the go compiler, it doesn't need to be
exposed in menuconfig.
> diff --git a/package/go-bootstrap/Config.in.host b/package/go-bootstrap/Config.in.host
> new file mode 100644
> index 0000000..99cca79
> --- /dev/null
> +++ b/package/go-bootstrap/Config.in.host
> @@ -0,0 +1,6 @@
> +config BR2_PACKAGE_HOST_GO_BOOTSTRAP
> + bool
> + help
> + Bootstrap compiler needed to build go1.5 and later versions.
> +
> + https://golang.org
So, this is not needed.
> diff --git a/package/go-bootstrap/go-bootstrap.mk b/package/go-bootstrap/go-bootstrap.mk
> new file mode 100644
> index 0000000..464f95e
> --- /dev/null
> +++ b/package/go-bootstrap/go-bootstrap.mk
> @@ -0,0 +1,36 @@
> +################################################################################
> +#
> +# go-bootstrap
> +#
> +################################################################################
> +
> +GO_BOOTSTRAP_VERSION = 1.4.2
> +GO_BOOTSTRAP_SITE = https://storage.googleapis.com/golang
> +GO_BOOTSTRAP_SOURCE = go$(GO_BOOTSTRAP_VERSION).src.tar.gz
Will Go 1.4.x always be capable of building newer Go compilers ?
> +
> +GO_BOOTSTRAP_LICENSE = BSD-3c
> +GO_BOOTSTRAP_LICENSE_FILES = LICENSE
> +
> +GO_BOOTSTRAP_FINAL = $(HOST_DIR)/usr/lib/go-$(GO_BOOTSTRAP_VERSION)
> +
> +GO_BOOTSTRAP_MAKE_ENV = \
> + GOOS=linux \
> + GOROOT_FINAL="$(GO_BOOTSTRAP_FINAL)" \
> + GOROOT="$(@D)" \
> + GOBIN="$(@D)/bin"
> +
> +define HOST_GO_BOOTSTRAP_BUILD_CMDS
> + cd $(@D)/src && $(GO_BOOTSTRAP_MAKE_ENV) ./make.bash
> +endef
> +
> +define HOST_GO_BOOTSTRAP_INSTALL_CMDS
> + $(INSTALL) -D -m 0755 $(@D)/bin/go $(GO_BOOTSTRAP_FINAL)/bin/go
> + $(INSTALL) -D -m 0755 $(@D)/bin/gofmt $(GO_BOOTSTRAP_FINAL)/bin/gofmt
> +
> + cp -a $(@D)/lib $(GO_BOOTSTRAP_FINAL)/
> + cp -a $(@D)/src $(GO_BOOTSTRAP_FINAL)/
Is it normal to copy source code to HOST_DIR ?
> + cp -a $(@D)/pkg $(GO_BOOTSTRAP_FINAL)/
> + chmod -R +x $(GO_BOOTSTRAP_FINAL)/pkg/tool
Why aren't those tools already installed +x by the build process ?
Thanks,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
More information about the buildroot
mailing list