Module Name: src
Committed By: thorpej
Date: Sat Jun 13 19:46:23 UTC 2020
Modified Files:
src/etc: MAKEDEV.awk
Log Message:
When reading in the MD MAKEDEV.conf, perform block / char major
substitutions that may be present in that file.
PR port-cobalt/55009
To generate a diff of this commit:
cvs rdiff -u -r1.28 -r1.29 src/etc/MAKEDEV.awk
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/etc/MAKEDEV.awk
diff -u src/etc/MAKEDEV.awk:1.28 src/etc/MAKEDEV.awk:1.29
--- src/etc/MAKEDEV.awk:1.28 Sun Nov 3 12:03:35 2019
+++ src/etc/MAKEDEV.awk Sat Jun 13 19:46:23 2020
@@ -1,6 +1,6 @@
#!/usr/bin/awk -
#
-# $NetBSD: MAKEDEV.awk,v 1.28 2019/11/03 12:03:35 martin Exp $
+# $NetBSD: MAKEDEV.awk,v 1.29 2020/06/13 19:46:23 thorpej Exp $
#
# Copyright (c) 2003 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -104,10 +104,33 @@ BEGIN {
getline < cfgfile # blank line
MDDEV = 0 # MD device targets
while (getline < cfgfile) {
+ #
+ # Perform the same blk / chr subsitution that happens below.
+ #
+ md_deventry = $0
+ if (match(md_deventry, /%[a-z0-9]*_(blk|chr)%/)) {
+ nam = substr(md_deventry, RSTART + 1, RLENGTH - 6);
+ typ = substr(md_deventry, RSTART + RLENGTH - 4, 3);
+ dev = ""
+ if (typ == "blk") {
+ if (nam in blk) {
+ dev = blk[nam];
+ }
+ } else {
+ if (nam in chr) {
+ dev = chr[nam];
+ }
+ }
+ if (dev != "") {
+ parsed = substr(md_deventry, 1, RSTART - 1) dev
+ md_deventry = substr(md_deventry, RSTART + RLENGTH)
+ }
+ md_deventry = parsed md_deventry
+ }
if (MDDEV)
- MDDEV = MDDEV "\n" $0
+ MDDEV = MDDEV "\n" md_deventry
else
- MDDEV = $0
+ MDDEV = md_deventry
}
close(cfgfile)
@@ -225,7 +248,7 @@ BEGIN {
print "# Generated from:"
# MAKEDEV.awk (this script) RCS Id
- ARCSID = "$NetBSD: MAKEDEV.awk,v 1.28 2019/11/03 12:03:35 martin Exp $"
+ ARCSID = "$NetBSD: MAKEDEV.awk,v 1.29 2020/06/13 19:46:23 thorpej Exp $"
gsub(/\$/, "", ARCSID)
print "# " ARCSID