Linux debuggers
 help / color / mirror / Atom feed
* [PATCH RFC] changes.rst: introduce 'Required for'-column
@ 2026-10-07 16:37 Manuel Ebner
  0 siblings, 0 replies; only message in thread
From: Manuel Ebner @ 2026-10-07 16:37 UTC (permalink / raw)
  To: Jonathan Corbet, Shuah Khan, Randy Dunlap, linux-kbuild,
	oe-kbuild-all, linux-debuggers, tools,
	open list:DOCUMENTATION PROCESS, open list:DOCUMENTATION,
	open list
  Cc: Manuel Ebner, Miguel Ojeda, Nicolas Schier

The optional tag isn't obvious nor defined. Therefore remove the tag and
add column 'Required for' to make it easier to define the need for the tools.

CC: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
CC: Nicolas Schier <n.schier@fritz.com>
---
If anybody has info to add to or refine the new column I would appreciate it a lot.
Please forward this to list or people which can contribute to this patch.

There's also the option to remove the 'Command to check the version'-column
and refer to scripts/ver_linux - and with this also removing the duplicated
information-issue.

[v3]
 Rearange column space of the table in order to add column instead of replacing column
 add some requirements to the table

[v2]
 Ditch footnotes in favor of a column
 Replace 'Check Version Command'-column with optional-column
 https://lore.kernel.org/all/20260831152523.638881-1-manuelebnerli@mailbox.org/

[v1]
 https://lore.kernel.org/all/20260812122426.1636227-2-manuelebnerli@mailbox.org/
---
 Documentation/process/changes.rst | 97 ++++++++++++++++---------------
 1 file changed, 51 insertions(+), 46 deletions(-)

diff --git a/Documentation/process/changes.rst b/Documentation/process/changes.rst
index 28f2ca633..dafe0530f 100644
--- a/Documentation/process/changes.rst
+++ b/Documentation/process/changes.rst
@@ -1,13 +1,14 @@
 .. _changes:
 
-Minimal requirements to compile the Kernel
-++++++++++++++++++++++++++++++++++++++++++
+Minimal requirements to interact with the Kernel
+++++++++++++++++++++++++++++++++++++++++++++++++
 
 Intro
 =====
 
-This document is designed to provide a list of the minimum levels of
-software necessary to run the current kernel version.
+This document is designed to provide a list of the minimum versions of
+software necessary to change code, compile, install and boot the current
+kernel version.
 
 This document is originally based on my "Changes" file for 2.0.x kernels
 and therefore owes credit to the same people as that file (Jared Mauch,
@@ -27,48 +28,52 @@ running a Linux kernel.  Also, not all tools are necessary on all
 systems; obviously, if you don't have any PC Card hardware, for example,
 you probably do not need to concern yourself with pcmciautils.
 
-====================== ===============  ========================================
-        Program        Minimal version       Command to check the version
-====================== ===============  ========================================
-bash                   4.2              bash --version
-bc                     1.06.95          bc --version
-bindgen (optional)     0.71.1           bindgen --version
-binutils               2.30             ld -v
-bison                  2.0              bison --version
-btrfs-progs            0.18             btrfs --version
-Clang/LLVM (optional)  17.0.1           clang --version
-e2fsprogs              1.41.4           e2fsck -V
-flex                   2.5.35           flex --version
-gdb                    7.2              gdb --version
-GNU awk (optional)     5.1.0            gawk --version
-GNU C                  8.1              gcc --version
-GNU make               4.0              make --version
-GNU tar                1.28             tar --version
-GRUB                   0.93             grub --version || grub-install --version
-gtags (optional)       6.6.5            gtags --version
-iptables               1.4.2            iptables -V
-jfsutils               1.1.3            fsck.jfs -V
-kmod                   13               kmod -V
-mcelog                 0.6              mcelog --version
-mkimage (optional)     2017.01          mkimage --version
-nfs-utils              1.0.5            showmount --version
-openssl & libcrypto    1.0.0            openssl version
-pahole                 1.26             pahole --version
-pcmciautils            004              pccardctl -V
-pigz (optional)        2.4              pigz --version
-PPP                    2.4.0            pppd --version
-procps                 3.2.0            ps --version
-Python                 3.9.x            python3 --version
-quota-tools            3.09             quota -V
-Rust (optional)        1.85.0           rustc --version
-Sphinx\ [#f1]_         3.4.3            sphinx-build --version
-squashfs-tools         4.0              mksquashfs -version
-udev                   081              udevadm --version
-util-linux             2.10o            mount --version
-xfsprogs               2.6.0            xfs_db -V
-====================== ===============  ========================================
-
-.. [#f1] Sphinx is needed only to build the Kernel documentation
+==============  ========  =======================  ========================================
+    Program     Minimal      Command to check                  Required for
+                version         the version
+==============  ========  =======================  ========================================
+bash            4.2       bash --version           general requirement
+bc              1.06.95   bc --version             Kbuild (
+bindgen         0.71.1    bindgen --version        CONFIG_RUST=y
+binutils        2.30      ld -v
+bison           2.0       bison --version          Kbuild (.config)
+btrfs-progs     0.18      btrfs --version
+Clang/LLVM      17.0.1    clang --version          alternative to GNU C (gcc)
+e2fsprogs       1.41.4    e2fsck -V                ext4
+flex            2.5.35    flex --version           Kbuild (.config)
+gdb             7.2       gdb --version            Debugging
+GNU awk         5.1.0     gawk --version           objtool, CONFIG_SYSTEM_BLACKLIST_HASH_LIST=y
+GNU C           8.1       gcc --version            alternative to Clang/LLVM (clang)
+GNU make        4.0       make --version
+GNU tar         1.28      tar --version
+GRUB            0.93      grub --version ||
+                          grub-install --version
+gtags           6.6.5     gtags --version          to generate tag files through ``make gtags``
+iptables        1.4.2     iptables -V
+jfsutils        1.1.3     fsck.jfs -V
+kmod            13        kmod -V
+mcelog          0.6       mcelog --version
+mkimage         2017.01   mkimage --version        Flat Image Tree (FIT) or ARCH=arc, arm or powerpc
+nfs-utils       1.0.5     showmount --version
+openssl         1.0.0     openssl version
+pahole          1.26      pahole --version
+pcmciautils     004       pccardctl -V
+pigz            2.4       pigz --version           Compile and boot with KPGZIP=y
+PPP             2.4.0     pppd --version
+procps          3.2.0     ps --version
+Python          3.9.x     python3 --version
+quota-tools     3.09      quota -V
+Rust            1.85.0    rustc --version          CONFIG_RUST=y
+Sphinx          3.4.3     sphinx-build --version   build kernel documentation
+squashfs-tools  4.0       mksquashfs -version
+udev            081       udevadm --version
+util-linux      2.10o     mount --version
+xfsprogs        2.6.0     xfs_db -V
+==============  ========  =======================  ========================================
+    Program     Minimal      Command to check                  Required for
+                version      check the version
+==============  ========  =======================  ========================================
+
 
 Kernel compilation
 ******************
-- 
2.55.0


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-10-07 16:38 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-07 16:37 [PATCH RFC] changes.rst: introduce 'Required for'-column Manuel Ebner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox