From a86a864df503eeb5f119a5de3b0d89958af2677c Mon Sep 17 00:00:00 2001 From: Alexander Egorenkov Date: Tue, 8 Sep 2020 16:17:22 +0200 Subject: pkg/build: support Linux s390x Signed-off-by: Alexander Egorenkov --- pkg/build/build.go | 1 + pkg/build/linux.go | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/pkg/build/build.go b/pkg/build/build.go index 370bf25ab..af2aa91a5 100644 --- a/pkg/build/build.go +++ b/pkg/build/build.go @@ -120,6 +120,7 @@ func getBuilder(targetOS, targetArch, vmType string) (builder, error) { {"linux", "amd64", []string{"gvisor"}, gvisor{}}, {"linux", "amd64", []string{"gce", "qemu"}, linux{}}, {"linux", "ppc64le", []string{"qemu"}, linux{}}, + {"linux", "s390x", []string{"qemu"}, linux{}}, {"fuchsia", "amd64", []string{"qemu"}, fuchsia{}}, {"fuchsia", "arm64", []string{"qemu"}, fuchsia{}}, {"akaros", "amd64", []string{"qemu"}, akaros{}}, diff --git a/pkg/build/linux.go b/pkg/build/linux.go index 6907310d9..5bc68bef9 100644 --- a/pkg/build/linux.go +++ b/pkg/build/linux.go @@ -64,7 +64,7 @@ func (linux) buildKernel(params *Params) error { // We build only zImage/bzImage as we currently don't use modules. var target string switch params.TargetArch { - case "386", "amd64": + case "386", "amd64", "s390x": target = "bzImage" case "ppc64le": target = "zImage" @@ -97,6 +97,8 @@ func (linux) createImage(params *Params) error { kernelImage = "arch/x86/boot/bzImage" case "ppc64le": kernelImage = "arch/powerpc/boot/zImage.pseries" + case "s390x": + kernelImage = "arch/s390/boot/bzImage" } kernelImagePath := filepath.Join(params.KernelDir, filepath.FromSlash(kernelImage)) cmd := osutil.Command(scriptFile, params.UserspaceDir, kernelImagePath, params.TargetArch) -- cgit mrf-deployment