summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrik Tesarik <patrik.tesarik@9elements.com>2022-06-10 23:23:21 +0200
committerFelix Held <felix-coreboot@felixheld.de>2022-06-13 13:15:23 +0000
commitb35c1f45a91774f77a767d4aa1c21dea6f29f74c (patch)
tree525ac9a79e5feaead1fcaa339a56fdfb3a5109a6
parenteb05560fe1b87bd7ba2a755fc437014514bd4162 (diff)
external/LinuxBoot: Deprecate GOPATH in u-root
This is a breaking change for now when using latest u-root main, which is the default behavior in LinuxBoot. u-root switched to golang modules and therefore `go get` is not the standard behavior anymore. The workaround for this is to pull the repository and build directly in the directory for now. Another apporach would be to use `go install $pkg@latest` to install the binary at that particular version into the golang binary path. Currently missing is a control structure to enable the build process for legacy versions <v0.8.0. Signed-off-by: Patrik Tesarik <patrik.tesarik@9elements.com> Change-Id: Ifa03504da6fa321ffc6d2506b27ebd2e3ed9961b Reviewed-on: https://review.coreboot.org/c/coreboot/+/65090 Reviewed-by: Arthur Heymans <arthur@aheymans.xyz> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Christian Walter <christian.walter@9elements.com>
-rw-r--r--payloads/external/LinuxBoot/targets/u-root.mk14
1 files changed, 8 insertions, 6 deletions
diff --git a/payloads/external/LinuxBoot/targets/u-root.mk b/payloads/external/LinuxBoot/targets/u-root.mk
index af2f95af6b..7e5444141d 100644
--- a/payloads/external/LinuxBoot/targets/u-root.mk
+++ b/payloads/external/LinuxBoot/targets/u-root.mk
@@ -40,11 +40,11 @@ endif
get: version
if [ -d "$(go_path_dir)/src/$(uroot_package)" ]; then \
git -C $(go_path_dir)/src/$(uroot_package) checkout --quiet main; \
- GOPATH=$(go_path_dir) go get -d -u -v $(uroot_package) || \
- echo -e "\n<<u-root package update failed>>\n"; \
+ git -C $(go_path_dir)/src/$(uroot_package) pull || \
+ echo -e "\n<<Pulling u-root package from GitHub failed>>\n"; \
else \
- GOPATH=$(go_path_dir) go get -d -u -v $(uroot_package) || \
- (echo -e "\n<<failed to get u-root package. Please check your internet access>>\n" && \
+ git clone https://${uroot_package} ${go_path_dir}/src/${uroot_package} || \
+ (echo -e "\n<<Failed to clone u-root package. Please check your internet access>>\n" && \
exit 1); \
fi
@@ -52,10 +52,12 @@ checkout: get
git -C $(go_path_dir)/src/$(uroot_package) checkout --quiet $(CONFIG_LINUXBOOT_UROOT_VERSION)
build: checkout
- GOPATH=$(go_path_dir) go build -o $(uroot_bin) $(uroot_package)
+ cd ${go_path_dir}/src/${uroot_package}; \
+ go build -o ${uroot_bin} .
u-root: build
- GOARCH=$(ARCH-y) GOPATH=$(go_path_dir) $(uroot_bin) \
+ GOARCH=$(ARCH-y) $(uroot_bin) \
+ -uroot-source ${go_path_dir}/src/${uroot_package} \
$(uroot_args) -o $(project_dir)/initramfs_u-root.cpio $(uroot_cmds)
.PHONY: all u-root build checkout get version