The branch main has been updated by kib:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=3ef25acf3600fb822bdf1487036184b4978d737f

commit 3ef25acf3600fb822bdf1487036184b4978d737f
Author:     Konstantin Belousov <[email protected]>
AuthorDate: 2025-12-28 14:04:28 +0000
Commit:     Konstantin Belousov <[email protected]>
CommitDate: 2025-12-29 01:16:25 +0000

    Add a script to auto-generate mapping from exterr category to source file
    
    Reviewed by:    emaste, mkusick
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D54380
---
 tools/build/make_libc_exterr_cat_filenames.sh | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/tools/build/make_libc_exterr_cat_filenames.sh 
b/tools/build/make_libc_exterr_cat_filenames.sh
new file mode 100755
index 000000000000..fbde85891200
--- /dev/null
+++ b/tools/build/make_libc_exterr_cat_filenames.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+set -e
+
+check="lib/libc/gen/uexterr_format.c"
+target="lib/libc/gen/exterr_cat_filenames.h"
+
+if [ \! -f "${check}" ] ; then
+    echo "Script must be run from the top of the full source tree"
+    exit 1
+fi
+
+echo "/*" >"${target}"
+printf " * Automatically %sgenerated, use\\n" \@ >>"${target}"
+echo " * tools/build/make_libc_exterr_cat_filenames.sh" >>"${target}"
+echo " */" >>"${target}"
+
+(find sys -type f -name '*.c' | \
+    xargs grep -E '^#define[[:space:]]+EXTERR_CATEGORY[[:space:]]+EXTERR_CAT_' 
| \
+    sed -E 's/[[:space:]]+/:/g' | \
+    awk -F ':' '{filename = $1; sub(/^sys\//, "", filename);
+        printf("\t[%s] = \"%s\",\n", $4, filename)}') \
+    >>"${target}"

Reply via email to