← Commit list

446129ada

Rob Landley
Rob Landley
2006-07-27
SOURCE BUG Duration: 30s

Subject

Add back in non-ifdef version of FEATURE_PRETTY_PRINT, and get the attribution right this time.

SOURCE BUG

This commit was genuinely broken at the time (not related to our build system): scripts/config/mkconfigs.c (2005-08-01 - 2006-10-05 arasi) uretilen bbconfigopts.h icine .config satirlarini kacissiz, ham newline'larla gömüyordu - gecerli C degildi, busybox'un kendi bb_mkdep araci bile parse edemiyordu (7d219aab7 ile duzeltildi, mkconfigs shell scripte cevrildi)

→ Bu hatanin tam hikayesini ve duzeltme diffini gor

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

util-linux/Config.in+20 -0
@@ -17,6 +17,26 @@ config CONFIG_DMESG
are also logged to the system console. Enable this option if you
wish to enable the 'dmesg' utility.
+config CONFIG_FEATURE_DMESG_PRETTY
+ bool "pretty dmesg output"
+ default y
+ depends on CONFIG_DMESG
+ help
+ If you wish to scrub the syslog level from the output, say 'Y' here.
+ The syslog level is a string prefixed to every line with the form "<#>".
+
+ With this option you will see:
+ # dmesg
+ Linux version 2.6.17.4 .....
+ BIOS-provided physical RAM map:
+ BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
+
+ Without this option you will see:
+ # dmesg
+ <5>Linux version 2.6.17.4 .....
+ <6>BIOS-provided physical RAM map:
+ <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
+
config CONFIG_FBSET
bool "fbset"
default n
util-linux/dmesg.c+20 -3
@@ -3,7 +3,8 @@
*
* dmesg - display/control kernel ring buffer.
*
- * Copyring 2006 Rob Landley <[email protected]>
+ * Copyright 2006 Rob Landley <[email protected]>
+ * Copyright 2006 Bernhard Fischer <[email protected]>
*
* Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
*/
@@ -28,8 +29,24 @@ int dmesg_main(int argc, char *argv[])
buf = xmalloc(len);
if (0 > (len = klogctl(3 + (flags & 1), buf, len)))
bb_perror_msg_and_die("klogctl");
- write(1,buf,len);
- if (len && buf[len-1]!='\n') putchar('\n');
+
+ // Skip <#> at the start of lines, and make sure we end with a newline.
+
+ if (ENABLE_FEATURE_DMESG_PRETTY) {
+ int last = '\n';
+ int in;
+
+ for (in = 0; in<len;) {
+ if (last == '\n' && buf[in] == '<') in += 3;
+ else putchar(last = buf[in++]);
+ }
+ if (last != '\n') putchar('\n');
+ } else {
+ write(1,buf,len);
+ if (len && buf[len-1]!='\n') putchar('\n');
+ }
+
+ if (ENABLE_FEATURE_CLEAN_UP) free(buf);
}
return 0;