linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ver_linux: add missing software to checklist
@ 2023-01-10 20:42 Shuah Khan
  2023-01-10 22:45 ` Bhaskar Chowdhury
  2023-01-16 12:26 ` Alexander Kapshuk
  0 siblings, 2 replies; 5+ messages in thread
From: Shuah Khan @ 2023-01-10 20:42 UTC (permalink / raw)
  To: linux-kernel; +Cc: Shuah Khan

Update to add missing software checks to bring it in sync with the
Documentation/Changes list. Make improvements to the output with
separator between different sections.

Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
---
 scripts/ver_linux | 29 ++++++++++++++++++++++++++---
 1 file changed, 26 insertions(+), 3 deletions(-)

diff --git a/scripts/ver_linux b/scripts/ver_linux
index 1a8ee4ff0e32..6131f6f1b35b 100755
--- a/scripts/ver_linux
+++ b/scripts/ver_linux
@@ -6,10 +6,14 @@
 # differ on your system.
 
 BEGIN {
-	usage = "If some fields are empty or look unusual you may have an old version.\n"
-	usage = usage "Compare to the current minimal requirements in Documentation/Changes.\n"
+	usage = "Minimum required software versions to build and run current kernel version.\n"
+	usage = usage "If some fields are empty or look unusual you may have an old version.\n"
+	usage = usage "Compare with the current minimal requirements in Documentation/Changes.\n"
 	print usage
 
+	separator = "===================================================\n"
+
+	print separator
 	system("uname -a")
 	printf("\n")
 
@@ -17,9 +21,15 @@ BEGIN {
 	libc = "libc[.]so[.][0-9]+$"
 	libcpp = "(libg|stdc)[+]+[.]so([.][0-9]+)+$"
 
+	print separator
 	printversion("GNU C", version("gcc -dumpversion"))
+	printversion("Clang/LLVM (optional)", version("clang --version"))
+	printversion("Rust (optional)", version("rustc --version"))
+	printversion("bindgen (optional)", version("bindgen --version"))
 	printversion("GNU Make", version("make --version"))
+	printversion("bash", version("bash --version"))
 	printversion("Binutils", version("ld -v"))
+	printversion("pahole", version("pahole --version"))
 	printversion("Util-linux", version("mount --version"))
 	printversion("Mount", version("mount --version"))
 	printversion("Module-init-tools", version("depmod -V"))
@@ -28,6 +38,8 @@ BEGIN {
 	printversion("Reiserfsprogs", version("reiserfsck -V"))
 	printversion("Reiser4fsprogs", version("fsck.reiser4 -V"))
 	printversion("Xfsprogs", version("xfs_db -V"))
+	printversion("squashfs-tools", version("mksquashfs -version"))
+	printversion("btrfs-progs", version("mkfs.btrfs --version"))
 	printversion("Pcmciautils", version("pccardctl -V"))
 	printversion("Pcmcia-cs", version("cardmgr -V"))
 	printversion("Quota-tools", version("quota -V"))
@@ -36,7 +48,16 @@ BEGIN {
 	printversion("Nfs-utils", version("showmount --version"))
 	printversion("Bison", version("bison --version"))
 	printversion("Flex", version("flex --version"))
+	printversion("Grub", version("grub-install --version"))
+	printversion("mcelog", version("mcelog --version"))
+	printversion("iptables", version("iptables --version"))
+	printversion("openssl & libcrypto", version("openssl version"))
+	printversion("bc", version("bc --version"))
+	printversion("Sphinx (for doc builds)", version("sphinx-build --version"))
+	printversion("cpio", version("cpio --version"))
+	printf("\n")
 
+	print separator
 	while ("ldconfig -p 2>/dev/null" | getline > 0)
 		if ($NF ~ libc || $NF ~ libcpp)
 			if (!seen[ver = version("readlink " $NF)]++)
@@ -50,12 +71,14 @@ BEGIN {
 	printversion("Sh-utils", version("expr --v"))
 	printversion("Udev", version("udevadm --version"))
 	printversion("Wireless-tools", version("iwconfig --version"))
+	printf("\n")
 
+	print separator
 	while ("sort /proc/modules" | getline > 0) {
 		mods = mods sep $1
 		sep = " "
 	}
-	printversion("Modules Loaded", mods)
+	printversion("Modules Loaded:\n", mods)
 }
 
 function version(cmd,    ver) {
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] ver_linux: add missing software to checklist
  2023-01-10 20:42 [PATCH] ver_linux: add missing software to checklist Shuah Khan
@ 2023-01-10 22:45 ` Bhaskar Chowdhury
  2023-01-10 23:25   ` Shuah Khan
  2023-01-16 12:26 ` Alexander Kapshuk
  1 sibling, 1 reply; 5+ messages in thread
From: Bhaskar Chowdhury @ 2023-01-10 22:45 UTC (permalink / raw)
  To: Shuah Khan; +Cc: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 3943 bytes --]

On 13:42 Tue 10 Jan 2023, Shuah Khan wrote:
>Update to add missing software checks to bring it in sync with the
>Documentation/Changes list. Make improvements to the output with
>separator between different sections.
>
>Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
>---
> scripts/ver_linux | 29 ++++++++++++++++++++++++++---
> 1 file changed, 26 insertions(+), 3 deletions(-)
>
>diff --git a/scripts/ver_linux b/scripts/ver_linux
>index 1a8ee4ff0e32..6131f6f1b35b 100755
>--- a/scripts/ver_linux
>+++ b/scripts/ver_linux
>@@ -6,10 +6,14 @@
> # differ on your system.
>
> BEGIN {
>-	usage = "If some fields are empty or look unusual you may have an old version.\n"
>-	usage = usage "Compare to the current minimal requirements in Documentation/Changes.\n"
>+	usage = "Minimum required software versions to build and run current kernel version.\n"
>+	usage = usage "If some fields are empty or look unusual you may have an old version.\n"
>+	usage = usage "Compare with the current minimal requirements in Documentation/Changes.\n"
> 	print usage
>
>+	separator = "===================================================\n"
>+
>+	print separator
> 	system("uname -a")
> 	printf("\n")
>
>@@ -17,9 +21,15 @@ BEGIN {
> 	libc = "libc[.]so[.][0-9]+$"
> 	libcpp = "(libg|stdc)[+]+[.]so([.][0-9]+)+$"
>
>+	print separator
> 	printversion("GNU C", version("gcc -dumpversion"))
>+	printversion("Clang/LLVM (optional)", version("clang --version"))
>+	printversion("Rust (optional)", version("rustc --version"))
>+	printversion("bindgen (optional)", version("bindgen --version"))
> 	printversion("GNU Make", version("make --version"))
>+	printversion("bash", version("bash --version"))
> 	printversion("Binutils", version("ld -v"))
>+	printversion("pahole", version("pahole --version"))
> 	printversion("Util-linux", version("mount --version"))
> 	printversion("Mount", version("mount --version"))
> 	printversion("Module-init-tools", version("depmod -V"))
>@@ -28,6 +38,8 @@ BEGIN {
> 	printversion("Reiserfsprogs", version("reiserfsck -V"))
> 	printversion("Reiser4fsprogs", version("fsck.reiser4 -V"))
> 	printversion("Xfsprogs", version("xfs_db -V"))
>+	printversion("squashfs-tools", version("mksquashfs -version"))
>+	printversion("btrfs-progs", version("mkfs.btrfs --version"))
> 	printversion("Pcmciautils", version("pccardctl -V"))
> 	printversion("Pcmcia-cs", version("cardmgr -V"))
> 	printversion("Quota-tools", version("quota -V"))
>@@ -36,7 +48,16 @@ BEGIN {
> 	printversion("Nfs-utils", version("showmount --version"))
> 	printversion("Bison", version("bison --version"))
> 	printversion("Flex", version("flex --version"))
>+	printversion("Grub", version("grub-install --version"))
>+	printversion("mcelog", version("mcelog --version"))
>+	printversion("iptables", version("iptables --version"))
>+	printversion("openssl & libcrypto", version("openssl version"))
>+	printversion("bc", version("bc --version"))
>+	printversion("Sphinx (for doc builds)", version("sphinx-build --version"))
>+	printversion("cpio", version("cpio --version"))
>+	printf("\n")
>
>+	print separator
> 	while ("ldconfig -p 2>/dev/null" | getline > 0)
> 		if ($NF ~ libc || $NF ~ libcpp)
> 			if (!seen[ver = version("readlink " $NF)]++)
>@@ -50,12 +71,14 @@ BEGIN {
> 	printversion("Sh-utils", version("expr --v"))
> 	printversion("Udev", version("udevadm --version"))
> 	printversion("Wireless-tools", version("iwconfig --version"))
>+	printf("\n")
>
>+	print separator
> 	while ("sort /proc/modules" | getline > 0) {
> 		mods = mods sep $1
> 		sep = " "
> 	}
>-	printversion("Modules Loaded", mods)
>+	printversion("Modules Loaded:\n", mods)
> }
>
> function version(cmd,    ver) {
>--
>2.34.1
>
Hunch....

One, is grub required to compile kernel?

Second, can we please stick to " absolutely required software" than showing optional??

Separator adding is good one.

--
Thanks,
Bhaskar

"Here's looking at you kid"-- Casablanca
https://about.me/unixbhaskar

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] ver_linux: add missing software to checklist
  2023-01-10 22:45 ` Bhaskar Chowdhury
@ 2023-01-10 23:25   ` Shuah Khan
  0 siblings, 0 replies; 5+ messages in thread
From: Shuah Khan @ 2023-01-10 23:25 UTC (permalink / raw)
  To: Bhaskar Chowdhury, linux-kernel; +Cc: Shuah Khan

On 1/10/23 15:45, Bhaskar Chowdhury wrote:
> On 13:42 Tue 10 Jan 2023, Shuah Khan wrote:
>> Update to add missing software checks to bring it in sync with the
>> Documentation/Changes list. Make improvements to the output with
>> separator between different sections.
>>
>> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
>> ---
>> scripts/ver_linux | 29 ++++++++++++++++++++++++++---
>> 1 file changed, 26 insertions(+), 3 deletions(-)
>>
>> diff --git a/scripts/ver_linux b/scripts/ver_linux
>> index 1a8ee4ff0e32..6131f6f1b35b 100755
>> --- a/scripts/ver_linux
>> +++ b/scripts/ver_linux
>> @@ -6,10 +6,14 @@
>> # differ on your system.
>>
>> BEGIN {
>> -    usage = "If some fields are empty or look unusual you may have an old version.\n"
>> -    usage = usage "Compare to the current minimal requirements in Documentation/Changes.\n"
>> +    usage = "Minimum required software versions to build and run current kernel version.\n"
>> +    usage = usage "If some fields are empty or look unusual you may have an old version.\n"
>> +    usage = usage "Compare with the current minimal requirements in Documentation/Changes.\n"
>>     print usage
>>
>> +    separator = "===================================================\n"
>> +
>> +    print separator
>>     system("uname -a")
>>     printf("\n")
>>
>> @@ -17,9 +21,15 @@ BEGIN {
>>     libc = "libc[.]so[.][0-9]+$"
>>     libcpp = "(libg|stdc)[+]+[.]so([.][0-9]+)+$"
>>
>> +    print separator
>>     printversion("GNU C", version("gcc -dumpversion"))
>> +    printversion("Clang/LLVM (optional)", version("clang --version"))
>> +    printversion("Rust (optional)", version("rustc --version"))
>> +    printversion("bindgen (optional)", version("bindgen --version"))
>>     printversion("GNU Make", version("make --version"))
>> +    printversion("bash", version("bash --version"))
>>     printversion("Binutils", version("ld -v"))
>> +    printversion("pahole", version("pahole --version"))
>>     printversion("Util-linux", version("mount --version"))
>>     printversion("Mount", version("mount --version"))
>>     printversion("Module-init-tools", version("depmod -V"))
>> @@ -28,6 +38,8 @@ BEGIN {
>>     printversion("Reiserfsprogs", version("reiserfsck -V"))
>>     printversion("Reiser4fsprogs", version("fsck.reiser4 -V"))
>>     printversion("Xfsprogs", version("xfs_db -V"))
>> +    printversion("squashfs-tools", version("mksquashfs -version"))
>> +    printversion("btrfs-progs", version("mkfs.btrfs --version"))
>>     printversion("Pcmciautils", version("pccardctl -V"))
>>     printversion("Pcmcia-cs", version("cardmgr -V"))
>>     printversion("Quota-tools", version("quota -V"))
>> @@ -36,7 +48,16 @@ BEGIN {
>>     printversion("Nfs-utils", version("showmount --version"))
>>     printversion("Bison", version("bison --version"))
>>     printversion("Flex", version("flex --version"))
>> +    printversion("Grub", version("grub-install --version"))
>> +    printversion("mcelog", version("mcelog --version"))
>> +    printversion("iptables", version("iptables --version"))
>> +    printversion("openssl & libcrypto", version("openssl version"))
>> +    printversion("bc", version("bc --version"))
>> +    printversion("Sphinx (for doc builds)", version("sphinx-build --version"))
>> +    printversion("cpio", version("cpio --version"))
>> +    printf("\n")
>>
>> +    print separator
>>     while ("ldconfig -p 2>/dev/null" | getline > 0)
>>         if ($NF ~ libc || $NF ~ libcpp)
>>             if (!seen[ver = version("readlink " $NF)]++)
>> @@ -50,12 +71,14 @@ BEGIN {
>>     printversion("Sh-utils", version("expr --v"))
>>     printversion("Udev", version("udevadm --version"))
>>     printversion("Wireless-tools", version("iwconfig --version"))
>> +    printf("\n")
>>
>> +    print separator
>>     while ("sort /proc/modules" | getline > 0) {
>>         mods = mods sep $1
>>         sep = " "
>>     }
>> -    printversion("Modules Loaded", mods)
>> +    printversion("Modules Loaded:\n", mods)
>> }
>>
>> function version(cmd,    ver) {
>> -- 
>> 2.34.1
>>
> Hunch....
> 
> One, is grub required to compile kernel?

These are minimal requirements to compile and run the kernel.
Running requires installing it first and install tools are
required. grub is listed in Documentation/Changes.

> 
> Second, can we please stick to " absolutely required software" than showing optional??
> 

This is an attempt sync this ver_linux with Documentation/Changes
and print out complete list which includes optional.

> Separator adding is good one.
> 

thanks,
-- Shuah


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] ver_linux: add missing software to checklist
  2023-01-10 20:42 [PATCH] ver_linux: add missing software to checklist Shuah Khan
  2023-01-10 22:45 ` Bhaskar Chowdhury
@ 2023-01-16 12:26 ` Alexander Kapshuk
  2023-01-20 21:06   ` Shuah Khan
  1 sibling, 1 reply; 5+ messages in thread
From: Alexander Kapshuk @ 2023-01-16 12:26 UTC (permalink / raw)
  To: Shuah Khan; +Cc: linux-kernel

On Tue, Jan 10, 2023 at 11:13 PM Shuah Khan <skhan@linuxfoundation.org> wrote:
>
> Update to add missing software checks to bring it in sync with the
> Documentation/Changes list. Make improvements to the output with
> separator between different sections.
>
> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
> ---
>  scripts/ver_linux | 29 ++++++++++++++++++++++++++---
>  1 file changed, 26 insertions(+), 3 deletions(-)
>
> diff --git a/scripts/ver_linux b/scripts/ver_linux
> index 1a8ee4ff0e32..6131f6f1b35b 100755
> --- a/scripts/ver_linux
> +++ b/scripts/ver_linux
> @@ -6,10 +6,14 @@
>  # differ on your system.
>
>  BEGIN {
> -       usage = "If some fields are empty or look unusual you may have an old version.\n"
> -       usage = usage "Compare to the current minimal requirements in Documentation/Changes.\n"
> +       usage = "Minimum required software versions to build and run current kernel version.\n"
> +       usage = usage "If some fields are empty or look unusual you may have an old version.\n"
> +       usage = usage "Compare with the current minimal requirements in Documentation/Changes.\n"
>         print usage
>
> +       separator = "===================================================\n"

Embedding a new line character at the start of the separator string
would eliminate the need for the extra printf("\n") statements
introduced.

> +
> +       print separator
>         system("uname -a")
>         printf("\n")

Consequently, this printf could be removed as well.

>
> @@ -17,9 +21,15 @@ BEGIN {
>         libc = "libc[.]so[.][0-9]+$"
>         libcpp = "(libg|stdc)[+]+[.]so([.][0-9]+)+$"
>
> +       print separator
>         printversion("GNU C", version("gcc -dumpversion"))
> +       printversion("Clang/LLVM (optional)", version("clang --version"))
> +       printversion("Rust (optional)", version("rustc --version"))
> +       printversion("bindgen (optional)", version("bindgen --version"))
>         printversion("GNU Make", version("make --version"))
> +       printversion("bash", version("bash --version"))
>         printversion("Binutils", version("ld -v"))
> +       printversion("pahole", version("pahole --version"))
>         printversion("Util-linux", version("mount --version"))
>         printversion("Mount", version("mount --version"))
>         printversion("Module-init-tools", version("depmod -V"))
> @@ -28,6 +38,8 @@ BEGIN {
>         printversion("Reiserfsprogs", version("reiserfsck -V"))
>         printversion("Reiser4fsprogs", version("fsck.reiser4 -V"))
>         printversion("Xfsprogs", version("xfs_db -V"))
> +       printversion("squashfs-tools", version("mksquashfs -version"))
> +       printversion("btrfs-progs", version("mkfs.btrfs --version"))
>         printversion("Pcmciautils", version("pccardctl -V"))
>         printversion("Pcmcia-cs", version("cardmgr -V"))
>         printversion("Quota-tools", version("quota -V"))
> @@ -36,7 +48,16 @@ BEGIN {
>         printversion("Nfs-utils", version("showmount --version"))
>         printversion("Bison", version("bison --version"))
>         printversion("Flex", version("flex --version"))
> +       printversion("Grub", version("grub-install --version"))
> +       printversion("mcelog", version("mcelog --version"))
> +       printversion("iptables", version("iptables --version"))
> +       printversion("openssl & libcrypto", version("openssl version"))
> +       printversion("bc", version("bc --version"))
> +       printversion("Sphinx (for doc builds)", version("sphinx-build --version"))
> +       printversion("cpio", version("cpio --version"))
> +       printf("\n")
>
> +       print separator
>         while ("ldconfig -p 2>/dev/null" | getline > 0)
>                 if ($NF ~ libc || $NF ~ libcpp)
>                         if (!seen[ver = version("readlink " $NF)]++)
> @@ -50,12 +71,14 @@ BEGIN {
>         printversion("Sh-utils", version("expr --v"))
>         printversion("Udev", version("udevadm --version"))
>         printversion("Wireless-tools", version("iwconfig --version"))
> +       printf("\n")
>
> +       print separator
>         while ("sort /proc/modules" | getline > 0) {
>                 mods = mods sep $1
>                 sep = " "
>         }
> -       printversion("Modules Loaded", mods)
> +       printversion("Modules Loaded:\n", mods)
>  }
>
>  function version(cmd,    ver) {
> --
> 2.34.1
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] ver_linux: add missing software to checklist
  2023-01-16 12:26 ` Alexander Kapshuk
@ 2023-01-20 21:06   ` Shuah Khan
  0 siblings, 0 replies; 5+ messages in thread
From: Shuah Khan @ 2023-01-20 21:06 UTC (permalink / raw)
  To: Alexander Kapshuk; +Cc: linux-kernel, Shuah Khan

On 1/16/23 05:26, Alexander Kapshuk wrote:
> On Tue, Jan 10, 2023 at 11:13 PM Shuah Khan <skhan@linuxfoundation.org> wrote:
>>
>> Update to add missing software checks to bring it in sync with the
>> Documentation/Changes list. Make improvements to the output with
>> separator between different sections.
>>
>> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
>> ---
>>   scripts/ver_linux | 29 ++++++++++++++++++++++++++---
>>   1 file changed, 26 insertions(+), 3 deletions(-)
>>
>> diff --git a/scripts/ver_linux b/scripts/ver_linux
>> index 1a8ee4ff0e32..6131f6f1b35b 100755
>> --- a/scripts/ver_linux
>> +++ b/scripts/ver_linux
>> @@ -6,10 +6,14 @@
>>   # differ on your system.
>>
>>   BEGIN {
>> -       usage = "If some fields are empty or look unusual you may have an old version.\n"
>> -       usage = usage "Compare to the current minimal requirements in Documentation/Changes.\n"
>> +       usage = "Minimum required software versions to build and run current kernel version.\n"
>> +       usage = usage "If some fields are empty or look unusual you may have an old version.\n"
>> +       usage = usage "Compare with the current minimal requirements in Documentation/Changes.\n"
>>          print usage
>>
>> +       separator = "===================================================\n"
> 
> Embedding a new line character at the start of the separator string
> would eliminate the need for the extra printf("\n") statements
> introduced.
> 
>> +
>> +       print separator
>>          system("uname -a")
>>          printf("\n")
> 
> Consequently, this printf could be removed as well.
> 

Thank yo for your review. Will send v2 with your suggestions.

thanks,
-- Shuah


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-01-20 21:06 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-10 20:42 [PATCH] ver_linux: add missing software to checklist Shuah Khan
2023-01-10 22:45 ` Bhaskar Chowdhury
2023-01-10 23:25   ` Shuah Khan
2023-01-16 12:26 ` Alexander Kapshuk
2023-01-20 21:06   ` Shuah Khan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).