diff --git a/config/core/build-configs.yaml b/config/core/build-configs.yaml index a8678ea35a..6fea96fe29 100644 --- a/config/core/build-configs.yaml +++ b/config/core/build-configs.yaml @@ -296,6 +296,8 @@ build_environments: name: 'x86' mips: &mips_params cross_compile: 'mips-linux-gnu-' + sparc: &sparc_params + cross_compile: 'sparc64-linux-gnu-' x86_64: &x86_64_params name: 'x86' riscv: &riscv_params @@ -413,6 +415,10 @@ build_configs_defaults: - blocklist: &riscv_kernel_filter kernel: ['v3.', 'v4.4', 'v4.9', 'v4.14'] + sparc: &sparc_arch + base_defconfig: 'sparc64_defconfig' + extra_configs: ['allnoconfig'] + x86_64: &x86_64_arch base_defconfig: 'x86_64_defconfig' extra_configs: @@ -484,6 +490,10 @@ arch_defconfigs: &arch_defconfigs filters: - regex: { defconfig: 'defconfig' } - blocklist: *riscv_kernel_filter + sparc: &sparc_defconfig + base_defconfig: 'sparc64_defconfig' + filters: + - regex: { defconfig: 'sparc64_defconfig' } x86_64: &x86_64_defconfig base_defconfig: 'x86_64_defconfig' filters: @@ -761,6 +771,7 @@ build_configs: x86_64: *x86_64_arch mips: *mips_arch riscv: *riscv_arch + sparc: *sparc_arch arc: *arc_arch arm64: <<: *arm64_arch diff --git a/config/core/rootfs-configs.yaml b/config/core/rootfs-configs.yaml index 57550b051a..28a771e19e 100644 --- a/config/core/rootfs-configs.yaml +++ b/config/core/rootfs-configs.yaml @@ -11,6 +11,7 @@ rootfs_configs: - armel - mipsel - riscv + - sparc64 - x86 frags: - baseline diff --git a/config/docker/gcc-10_sparc/Dockerfile b/config/docker/gcc-10_sparc/Dockerfile new file mode 100644 index 0000000000..9c85ee3f65 --- /dev/null +++ b/config/docker/gcc-10_sparc/Dockerfile @@ -0,0 +1,14 @@ +ARG PREFIX=kernelci/ +FROM ${PREFIX}build-base + +RUN apt-get update && apt-get install --no-install-recommends -y \ + gcc-10-sparc64-linux-gnu + +RUN update-alternatives \ + --install /usr/bin/sparc64-linux-gnu-gcc sparc64-linux-gnu-gcc /usr/bin/sparc64-linux-gnu-gcc-10 500 \ + --slave /usr/bin/sparc64-linux-gnu-gcc-ar sparc64-linux-gnu-ar /usr/bin/sparc64-linux-gnu-gcc-ar-10 \ + --slave /usr/bin/sparc64-linux-gnu-gcc-nm sparc64-linux-gnu-nm /usr/bin/sparc64-linux-gnu-gcc-nm-10 \ + --slave /usr/bin/sparc64-linux-gnu-gcc-ranlib sparc64-linux-gnu-ranlib /usr/bin/sparc64-linux-gnu-gcc-ranlib-10 \ + --slave /usr/bin/sparc64-linux-gnu-gcc-gcov sparc64-linux-gnu-gcov /usr/bin/sparc64-linux-gnu-gcov-10 \ + --slave /usr/bin/sparc64-linux-gnu-gcc-gcov-dump sparc64-linux-gnu-gcov-dump /usr/bin/sparc64-linux-gnu-gcov-dump-10 \ + --slave /usr/bin/sparc64-linux-gnu-gcc-gcov-tool sparc64-linux-gnu-gcov-tool /usr/bin/sparc64-linux-gnu-gcov-tool-10 diff --git a/kernelci/build.py b/kernelci/build.py index d5f35d813a..9f160529bb 100644 --- a/kernelci/build.py +++ b/kernelci/build.py @@ -51,6 +51,7 @@ 'i386': 'bzImage', 'x86_64': 'bzImage', 'mips': 'uImage.gz', + 'sparc': 'zImage', } # Hard-coded binary kernel image names for each CPU architecture @@ -61,6 +62,7 @@ 'i386': {'bzImage'}, 'mips': {'uImage.gz', 'vmlinux.gz.itb', 'vmlinuz'}, 'riscv': {'Image', 'Image.gz'}, + 'sparc': {'zImage'}, 'x86_64': {'bzImage'}, 'x86': {'bzImage'}, }