diff --git a/pkg.info b/pkg.info index 178eb25..f7bf482 100644 --- a/pkg.info +++ b/pkg.info @@ -1,9 +1,9 @@ name: linux-lts description: The longterm support version of the linux kernel version: 6.12.43 -revision: 2 +revision: 3 url: https://www.kernel.org/ license: GPL2-only architecture: any -make_depends: ["bash","bc","binutils","coreutils","diffutils","findutils","gcc","glibc","grep","gzip","kmod","libelf","make","ncurses","openssl","perl","sed"] +make_depends: ["bc","clang","cpio","gettext","libelf","lld","perl","rustc","rust-bindgen","rust-src"] type: source diff --git a/source-files/config b/source-files/config index 0434ad9..9c26d65 100644 --- a/source-files/config +++ b/source-files/config @@ -2,16 +2,17 @@ # Automatically generated file; DO NOT EDIT. # Linux/x86 6.12.43 Kernel Configuration # -CONFIG_CC_VERSION_TEXT="gcc (GCC) 15.1.0" -CONFIG_CC_IS_GCC=y -CONFIG_GCC_VERSION=150100 -CONFIG_CLANG_VERSION=0 -CONFIG_AS_IS_GNU=y -CONFIG_AS_VERSION=24500 -CONFIG_LD_IS_BFD=y -CONFIG_LD_VERSION=24500 -CONFIG_LLD_VERSION=0 -CONFIG_RUSTC_VERSION=108800 +CONFIG_CC_VERSION_TEXT="clang version 20.1.7" +CONFIG_GCC_VERSION=0 +CONFIG_CC_IS_CLANG=y +CONFIG_CLANG_VERSION=200107 +CONFIG_AS_IS_LLVM=y +CONFIG_AS_VERSION=200107 +CONFIG_LD_VERSION=0 +CONFIG_LD_IS_LLD=y +CONFIG_LLD_VERSION=200107 +CONFIG_RUSTC_VERSION=108900 +CONFIG_RUST_IS_AVAILABLE=y CONFIG_RUSTC_LLVM_VERSION=200107 CONFIG_CC_CAN_LINK=y CONFIG_CC_CAN_LINK_STATIC=y @@ -21,7 +22,6 @@ CONFIG_TOOLS_SUPPORT_RELR=y CONFIG_CC_HAS_ASM_INLINE=y CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y CONFIG_CC_HAS_COUNTED_BY=y -CONFIG_LD_CAN_USE_KEEP_IN_OVERLAY=y CONFIG_RUSTC_HAS_UNNECESSARY_TRANSMUTES=y CONFIG_PAHOLE_VERSION=0 CONFIG_IRQ_WORK=y @@ -183,11 +183,9 @@ CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y CONFIG_CC_HAS_INT128=y -CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5" +CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough" CONFIG_GCC10_NO_ARRAY_BOUNDS=y -CONFIG_CC_NO_ARRAY_BOUNDS=y CONFIG_GCC_NO_STRINGOP_OVERFLOW=y -CONFIG_CC_NO_STRINGOP_OVERFLOW=y CONFIG_ARCH_SUPPORTS_INT128=y # CONFIG_NUMA_BALANCING is not set CONFIG_SLAB_OBJ_EXT=y @@ -289,6 +287,9 @@ CONFIG_PERF_EVENTS=y CONFIG_SYSTEM_DATA_VERIFICATION=y CONFIG_PROFILING=y +CONFIG_RUST=y +CONFIG_RUSTC_VERSION_TEXT="rustc 1.89.0 (29483883e 2025-08-04) (for Tide Linux)" +CONFIG_BINDGEN_VERSION_TEXT="bindgen 0.71.1" CONFIG_TRACEPOINTS=y # @@ -502,9 +503,7 @@ CONFIG_MODIFY_LDT_SYSCALL=y CONFIG_HAVE_LIVEPATCH=y # end of Processor type and features -CONFIG_CC_HAS_NAMED_AS=y CONFIG_CC_HAS_NAMED_AS_FIXED_SANITIZERS=y -CONFIG_USE_X86_SEG_SUPPORT=y CONFIG_CC_HAS_SLS=y CONFIG_CC_HAS_RETURN_THUNK=y CONFIG_CC_HAS_ENTRY_PADDING=y @@ -688,7 +687,6 @@ CONFIG_AMD_NB=y # CONFIG_IA32_EMULATION=y # CONFIG_IA32_EMULATION_DEFAULT_DISABLED is not set -# CONFIG_X86_X32_ABI is not set CONFIG_COMPAT_32=y CONFIG_COMPAT=y CONFIG_COMPAT_FOR_U64_ALIGNMENT=y @@ -815,8 +813,14 @@ CONFIG_STACKPROTECTOR=y CONFIG_STACKPROTECTOR_STRONG=y CONFIG_ARCH_SUPPORTS_LTO_CLANG=y CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y +CONFIG_HAS_LTO_CLANG=y CONFIG_LTO_NONE=y +# CONFIG_LTO_CLANG_FULL is not set +# CONFIG_LTO_CLANG_THIN is not set CONFIG_ARCH_SUPPORTS_CFI_CLANG=y +# CONFIG_CFI_CLANG is not set +CONFIG_HAVE_CFI_ICALL_NORMALIZE_INTEGERS_CLANG=y +CONFIG_HAVE_CFI_ICALL_NORMALIZE_INTEGERS_RUSTC=y CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y CONFIG_HAVE_CONTEXT_TRACKING_USER=y CONFIG_HAVE_CONTEXT_TRACKING_USER_OFFSTACK=y @@ -893,12 +897,9 @@ CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y # end of GCOV-based kernel profiling CONFIG_HAVE_GCC_PLUGINS=y -CONFIG_GCC_PLUGINS=y -# CONFIG_GCC_PLUGIN_LATENT_ENTROPY is not set CONFIG_FUNCTION_ALIGNMENT_4B=y CONFIG_FUNCTION_ALIGNMENT_16B=y CONFIG_FUNCTION_ALIGNMENT=16 -CONFIG_CC_HAS_MIN_FUNCTION_ALIGNMENT=y CONFIG_CC_HAS_SANE_FUNCTION_ALIGNMENT=y # end of General architecture-dependent options @@ -1864,6 +1865,7 @@ CONFIG_PREVENT_FIRMWARE_BUILD=y # Firmware loader # CONFIG_FW_LOADER=y +# CONFIG_RUST_FW_LOADER_ABSTRACTIONS is not set CONFIG_FW_LOADER_PAGED_BUF=y CONFIG_EXTRA_FIRMWARE="" # CONFIG_FW_LOADER_USER_HELPER is not set @@ -2007,6 +2009,7 @@ CONFIG_BLK_DEV_RAM_SIZE=16384 # CONFIG_CDROM_PKTCDVD is not set # CONFIG_ATA_OVER_ETH is not set CONFIG_VIRTIO_BLK=y +# CONFIG_BLK_DEV_RUST_NULL is not set # CONFIG_BLK_DEV_RBD is not set # CONFIG_BLK_DEV_UBLK is not set @@ -2586,6 +2589,7 @@ CONFIG_PHYLIB=y CONFIG_SWPHY=y # CONFIG_LED_TRIGGER_PHY is not set CONFIG_FIXED_PHY=y +# CONFIG_RUST_PHYLIB_ABSTRACTIONS is not set # CONFIG_SFP is not set # @@ -4014,7 +4018,10 @@ CONFIG_DRM_PANIC=y CONFIG_DRM_PANIC_FOREGROUND_COLOR=0xffffff CONFIG_DRM_PANIC_BACKGROUND_COLOR=0x000000 # CONFIG_DRM_PANIC_DEBUG is not set -CONFIG_DRM_PANIC_SCREEN="kmsg" +CONFIG_DRM_PANIC_SCREEN="qr_code" +CONFIG_DRM_PANIC_SCREEN_QR_CODE=y +CONFIG_DRM_PANIC_SCREEN_QR_CODE_URL="" +CONFIG_DRM_PANIC_SCREEN_QR_VERSION=40 CONFIG_DRM_CLIENT_SELECTION=y CONFIG_DRM_CLIENT_SETUP=y CONFIG_DRM_FBDEV_EMULATION=y @@ -5989,7 +5996,6 @@ CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y # CONFIG_INIT_STACK_NONE is not set # CONFIG_INIT_STACK_ALL_PATTERN is not set CONFIG_INIT_STACK_ALL_ZERO=y -# CONFIG_GCC_PLUGIN_STACKLEAK is not set # CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set # CONFIG_INIT_ON_FREE_DEFAULT_ON is not set CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y @@ -6003,9 +6009,9 @@ CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y # CONFIG_BUG_ON_DATA_CORRUPTION is not set # end of Hardening of kernel data structures +CONFIG_CC_HAS_RANDSTRUCT=y CONFIG_RANDSTRUCT_NONE=y # CONFIG_RANDSTRUCT_FULL is not set -# CONFIG_RANDSTRUCT_PERFORMANCE is not set # end of Kernel hardening options # end of Security options @@ -6436,9 +6442,7 @@ CONFIG_DEBUG_INFO_NONE=y # CONFIG_DEBUG_INFO_DWARF5 is not set CONFIG_FRAME_WARN=2048 # CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_READABLE_ASM is not set # CONFIG_HEADERS_INSTALL is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set CONFIG_SECTION_MISMATCH_WARN_ONLY=y CONFIG_OBJTOOL=y # CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set @@ -6515,6 +6519,8 @@ CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y CONFIG_HAVE_ARCH_KFENCE=y # CONFIG_KFENCE is not set CONFIG_HAVE_ARCH_KMSAN=y +CONFIG_HAVE_KMSAN_COMPILER=y +# CONFIG_KMSAN is not set # end of Memory Debugging # CONFIG_DEBUG_SHIRQ is not set @@ -6748,5 +6754,8 @@ CONFIG_ARCH_USE_MEMTEST=y # # Rust hacking # +# CONFIG_RUST_DEBUG_ASSERTIONS is not set +CONFIG_RUST_OVERFLOW_CHECKS=y +# CONFIG_RUST_BUILD_ASSERT_ALLOW is not set # end of Rust hacking # end of Kernel hacking diff --git a/source.sh b/source.sh index 2bf12fa..9bf5ea1 100644 --- a/source.sh +++ b/source.sh @@ -2,7 +2,7 @@ # BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE # BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT -DOWNLOAD="https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-${BPM_PKG_VERSION}.tar.xz" +DOWNLOAD="https://cdn.kernel.org/pub/linux/kernel/v${BPM_PKG_VERSION%%.*}.x/linux-${BPM_PKG_VERSION}.tar.xz" FILENAME="${DOWNLOAD##*/}" # The prepare function is executed in the root of the temp directory @@ -18,9 +18,9 @@ prepare() { # The build function is executed in the source directory # This function is used to compile the source code build() { - make olddefconfig - make - make headers + make LLVM=1 olddefconfig + make LLVM=1 + make LLVM=1 headers } # The package function is executed in the source directory