aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOphestra <cat@gensokyo.uk>2026-10-23 19:29:20 +0900
committerOphestra <cat@gensokyo.uk>2026-10-23 19:29:20 +0900
commit8f1b287cf44f4baf2f235b2b7699e1dfb1dcaba3 (patch)
tree2398c80d785cde9069ed7fc87f6572f04f8deb84
parent555273b15f369d1c32e04a79417fff2f96fcfd3c (diff)
internal/rosa/kernel: enable cross-compilation
This also reinstates riscv64 support via cross-compilation. Signed-off-by: Ophestra <cat@gensokyo.uk>
-rw-r--r--internal/rosa/package/kernel/amd64.config2
-rw-r--r--internal/rosa/package/kernel/arm64.config2
-rw-r--r--internal/rosa/package/kernel/package.az17
-rw-r--r--internal/rosa/package/kernel/riscv64.config16
4 files changed, 23 insertions, 14 deletions
diff --git a/internal/rosa/package/kernel/amd64.config b/internal/rosa/package/kernel/amd64.config
index cd8f1132..1166145f 100644
--- a/internal/rosa/package/kernel/amd64.config
+++ b/internal/rosa/package/kernel/amd64.config
@@ -2,7 +2,7 @@
# Automatically generated file; DO NOT EDIT.
# Linux/x86 6.18.57 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="clang version 23.1.3"
+CONFIG_CC_VERSION_TEXT="Rosa OS clang version 23.1.3"
CONFIG_GCC_VERSION=0
CONFIG_CC_IS_CLANG=y
CONFIG_CLANG_VERSION=230103
diff --git a/internal/rosa/package/kernel/arm64.config b/internal/rosa/package/kernel/arm64.config
index 8af9d893..7d61da6e 100644
--- a/internal/rosa/package/kernel/arm64.config
+++ b/internal/rosa/package/kernel/arm64.config
@@ -2,7 +2,7 @@
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 6.18.57 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="clang version 23.1.3"
+CONFIG_CC_VERSION_TEXT="Rosa OS clang version 23.1.3"
CONFIG_GCC_VERSION=0
CONFIG_CC_IS_CLANG=y
CONFIG_CLANG_VERSION=230103
diff --git a/internal/rosa/package/kernel/package.az b/internal/rosa/package/kernel/package.az
index 3f7cf243..f0e94a70 100644
--- a/internal/rosa/package/kernel/package.az
+++ b/internal/rosa/package/kernel/package.az
@@ -94,6 +94,13 @@ install -Dm0500 \
exclusive = true;
exec = make {
+ _kernelArch# = "ARCH='"+arch {
+ default = arch;
+
+ amd64 = "x86";
+ riscv64 = "riscv";
+ }+"'";
+
defaults = false;
configure = nil;
@@ -106,6 +113,7 @@ install -Dm0500 \
"O=/tmp/kbuild",
"LLVM=1",
+ _kernelArch,
"KBUILD_BUILD_VERSION='1-Rosa'",
"KBUILD_BUILD_TIMESTAMP='2106-02-07 06:28:15 UTC'",
"KBUILD_BUILD_USER=kbuild",
@@ -125,6 +133,7 @@ make \
-f /usr/src/kernel/Makefile \
O=/tmp/kbuild \
LLVM=1 \
+ ` + _kernelArch + ` \
INSTALL_PATH=/work \
install \
INSTALL_MOD_PATH=/work/system \
@@ -138,6 +147,8 @@ rm -v "/work/system/lib/modules/$(make -f /usr/src/kernel/Makefile kernelversion
flex,
bison,
m4,
+ gzip,
+ xz,
tar,
perl,
bc,
@@ -153,11 +164,7 @@ rm -v "/work/system/lib/modules/$(make -f /usr/src/kernel/Makefile kernelversion
util-linux,
];
- inputs = [
- xz,
- gzip,
- kernel-headers,
- ];
+ inputs = [ kernel-headers ];
runtime = nil;
unlikely = true;
diff --git a/internal/rosa/package/kernel/riscv64.config b/internal/rosa/package/kernel/riscv64.config
index 3edb9be9..4cd0171b 100644
--- a/internal/rosa/package/kernel/riscv64.config
+++ b/internal/rosa/package/kernel/riscv64.config
@@ -1,16 +1,16 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/riscv 6.18.47 Kernel Configuration
+# Linux/riscv 6.18.57 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="clang version 23.1.0"
+CONFIG_CC_VERSION_TEXT="Rosa OS clang version 23.1.3"
CONFIG_GCC_VERSION=0
CONFIG_CC_IS_CLANG=y
-CONFIG_CLANG_VERSION=230100
+CONFIG_CLANG_VERSION=230103
CONFIG_AS_IS_LLVM=y
-CONFIG_AS_VERSION=230100
+CONFIG_AS_VERSION=230103
CONFIG_LD_VERSION=0
CONFIG_LD_IS_LLD=y
-CONFIG_LLD_VERSION=230100
+CONFIG_LLD_VERSION=230103
CONFIG_RUSTC_VERSION=0
CONFIG_RUSTC_LLVM_VERSION=0
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
@@ -21,6 +21,7 @@ CONFIG_CC_HAS_ASSUME=y
CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
CONFIG_CC_HAS_COUNTED_BY=y
CONFIG_CC_HAS_MULTIDIMENSIONAL_NONSTRING=y
+CONFIG_CC_OPT_INLINE_MEMSET="-mllvm -max-store-memset=4294967294"
CONFIG_LD_CAN_USE_KEEP_IN_OVERLAY=y
CONFIG_PAHOLE_VERSION=0
CONFIG_IRQ_WORK=y
@@ -787,6 +788,7 @@ CONFIG_HAVE_GCC_PLUGINS=y
CONFIG_FUNCTION_ALIGNMENT_4B=y
CONFIG_FUNCTION_ALIGNMENT=4
CONFIG_CC_HAS_SANE_FUNCTION_ALIGNMENT=y
+CONFIG_HAVE_ARCH_GET_SECUREBOOT=y
# end of General architecture-dependent options
CONFIG_RT_MUTEXES=y
@@ -11151,6 +11153,8 @@ CONFIG_CC_HAS_SANCOV_STACK_DEPTH_CALLBACK=y
# CONFIG_KSTACK_ERASE is not set
CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
+CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
+# CONFIG_ZERO_CALL_USED_REGS is not set
# end of Memory initialization
#
@@ -11363,11 +11367,9 @@ CONFIG_CRYPTO_DEV_SUN4I_SS=m
CONFIG_CRYPTO_DEV_SUN8I_CE=m
# CONFIG_CRYPTO_DEV_SUN8I_CE_DEBUG is not set
# CONFIG_CRYPTO_DEV_SUN8I_CE_HASH is not set
-# CONFIG_CRYPTO_DEV_SUN8I_CE_PRNG is not set
# CONFIG_CRYPTO_DEV_SUN8I_CE_TRNG is not set
CONFIG_CRYPTO_DEV_SUN8I_SS=m
# CONFIG_CRYPTO_DEV_SUN8I_SS_DEBUG is not set
-# CONFIG_CRYPTO_DEV_SUN8I_SS_PRNG is not set
# CONFIG_CRYPTO_DEV_SUN8I_SS_HASH is not set
CONFIG_CRYPTO_DEV_ATMEL_AES=m
CONFIG_CRYPTO_DEV_ATMEL_I2C=m