From: Uladzimir Bely <
ub...@ilbers.de>
Ubuntu ports provides not only arm64/armhf architectures we currently
support in Isar, but also some other architectures.
Provide possibility to build ubuntu/riscv64 targets.
Also, change kas configuration to allow selecting ubuntu-noble for
qemuriscv64 build without enabling ANY_MACHINE_DISTRO option.
Signed-off-by: Uladzimir Bely <
ub...@ilbers.de>
Signed-off-by: Anton Mikanovich <
ami...@ilbers.de>
---
kas/machine/Kconfig | 2 ++
meta-isar/conf/distro/ubuntu-common.inc | 3 +++
meta-isar/conf/distro/ubuntu-noble-ports.list | 12 ++++++------
meta-isar/conf/machine/qemuriscv64.conf | 3 +++
meta-isar/conf/mc.conf | 1 +
meta-isar/conf/multiconfig/qemuriscv64-noble.conf | 7 +++++++
6 files changed, 22 insertions(+), 6 deletions(-)
create mode 100644 meta-isar/conf/multiconfig/qemuriscv64-noble.conf
diff --git a/kas/machine/Kconfig b/kas/machine/Kconfig
index e09304c0..58d9fd66 100644
--- a/kas/machine/Kconfig
+++ b/kas/machine/Kconfig
@@ -168,6 +168,8 @@ config MACHINE_QEMU_RISCV64
select DISTRO_DEBIAN
select CODENAME_TRIXIE
select CODENAME_SID
+ select DISTRO_UBUNTU
+ select CODENAME_NOBLE
select ARCH_RISCV64
config MACHINE_RPI_ARM_V7
diff --git a/meta-isar/conf/distro/ubuntu-common.inc b/meta-isar/conf/distro/ubuntu-common.inc
index f1e8a1d6..49638d0e 100644
--- a/meta-isar/conf/distro/ubuntu-common.inc
+++ b/meta-isar/conf/distro/ubuntu-common.inc
@@ -12,6 +12,9 @@ HOST_BASE_DISTRO = "${BASE_DISTRO}"
DISTRO_APT_SOURCES:arm64 ?= "conf/distro/${BASE_DISTRO}-${BASE_DISTRO_CODENAME}-ports.list"
HOST_DISTRO_APT_SOURCES:arm64 ?= "conf/distro/${HOST_DISTRO}.list conf/distro/${HOST_DISTRO}-ports.list"
+DISTRO_APT_SOURCES:riscv64 ?= "conf/distro/${BASE_DISTRO}-${BASE_DISTRO_CODENAME}-ports.list"
+HOST_DISTRO_APT_SOURCES:riscv64 ?= "conf/distro/${HOST_DISTRO}.list conf/distro/${HOST_DISTRO}-ports.list"
+
BOOTSTRAP_KEY = "file://${LAYERDIR_isar}/conf/distro/ubuntu.public.key;sha256sum=36a38199a4bf4eae1e7f574891f7dfcb79b91b87a33a499383265e1224b5e989"
DISTRO_BOOTSTRAP_KEYS += "${BOOTSTRAP_KEY}"
HOST_DISTRO_BOOTSTRAP_KEYS += "${BOOTSTRAP_KEY}"
diff --git a/meta-isar/conf/distro/ubuntu-noble-ports.list b/meta-isar/conf/distro/ubuntu-noble-ports.list
index adeb2639..9b101e3d 100644
--- a/meta-isar/conf/distro/ubuntu-noble-ports.list
+++ b/meta-isar/conf/distro/ubuntu-noble-ports.list
@@ -1,6 +1,6 @@
-deb [arch=armhf,arm64]
http://ports.ubuntu.com/ubuntu-ports noble main restricted universe multiverse
-deb-src [arch=armhf,arm64]
http://ports.ubuntu.com/ubuntu-ports noble main restricted universe multiverse
-deb [arch=armhf,arm64]
http://ports.ubuntu.com/ubuntu-ports noble-updates main restricted universe multiverse
-deb-src [arch=armhf,arm64]
http://ports.ubuntu.com/ubuntu-ports noble-updates main restricted universe multiverse
-deb [arch=armhf,arm64]
http://ports.ubuntu.com/ubuntu-ports noble-security main restricted universe multiverse
-deb-src [arch=armhf,arm64]
http://ports.ubuntu.com/ubuntu-ports noble-security main restricted universe multiverse
+deb [arch=armhf,arm64,riscv64]
http://ports.ubuntu.com/ubuntu-ports noble main restricted universe multiverse
+deb-src [arch=armhf,arm64,riscv64]
http://ports.ubuntu.com/ubuntu-ports noble main restricted universe multiverse
+deb [arch=armhf,arm64,riscv64]
http://ports.ubuntu.com/ubuntu-ports noble-updates main restricted universe multiverse
+deb-src [arch=armhf,arm64,riscv64]
http://ports.ubuntu.com/ubuntu-ports noble-updates main restricted universe multiverse
+deb [arch=armhf,arm64,riscv64]
http://ports.ubuntu.com/ubuntu-ports noble-security main restricted universe multiverse
+deb-src [arch=armhf,arm64,riscv64]
http://ports.ubuntu.com/ubuntu-ports noble-security main restricted universe multiverse
diff --git a/meta-isar/conf/machine/qemuriscv64.conf b/meta-isar/conf/machine/qemuriscv64.conf
index 541e4abd..4cb4f371 100644
--- a/meta-isar/conf/machine/qemuriscv64.conf
+++ b/meta-isar/conf/machine/qemuriscv64.conf
@@ -7,6 +7,9 @@
DISTRO_ARCH ?= "riscv64"
KERNEL_NAME ?= "riscv64"
+KERNEL_NAME:ubuntu ?= "generic"
+KERNEL_NAME:ubuntu-jammy ?= "generic"
+KERNEL_NAME:ubuntu-noble ?= "generic"
IMAGE_FSTYPES ?= "ext4"
ROOTFS_EXTRA ?= "128"
diff --git a/meta-isar/conf/mc.conf b/meta-isar/conf/mc.conf
index 493d5ae2..f97e2d28 100644
--- a/meta-isar/conf/mc.conf
+++ b/meta-isar/conf/mc.conf
@@ -70,6 +70,7 @@ BBMULTICONFIG = " \
qemuamd64-focal \
qemuamd64-jammy \
qemuamd64-noble \
+ qemuriscv64-noble \
qemuamd64-sid \
qemuarm64-sid \
"
diff --git a/meta-isar/conf/multiconfig/qemuriscv64-noble.conf b/meta-isar/conf/multiconfig/qemuriscv64-noble.conf
new file mode 100644
index 00000000..9a2b0430
--- /dev/null
+++ b/meta-isar/conf/multiconfig/qemuriscv64-noble.conf
@@ -0,0 +1,7 @@
+# This software is a part of Isar.
+# Copyright (C) 2025 ilbers GmbH
+#
+# SPDX-License-Identifier: MIT
+
+MACHINE ?= "qemuriscv64"
+DISTRO ?= "ubuntu-noble"
--
2.34.1