13e12c5d1SDavid du Colombier#!/bin/rc 23e12c5d1SDavid du Colombier 3*4fafed5dSDavid du Colombierawk -v 'objtype='$objtype ' 4*4fafed5dSDavid du ColombierBEGIN{ 5*4fafed5dSDavid du Colombier if(ARGC < 2) 6*4fafed5dSDavid du Colombier exit; 7*4fafed5dSDavid du Colombier collect = isdev = 0; 83e12c5d1SDavid du Colombier} 93e12c5d1SDavid du Colombier 10*4fafed5dSDavid du Colombier/^[ \t]*$/{ 11*4fafed5dSDavid du Colombier next; 127dd7cddfSDavid du Colombier} 13*4fafed5dSDavid du Colombier/^#/{ 14*4fafed5dSDavid du Colombier next; 157dd7cddfSDavid du Colombier} 167dd7cddfSDavid du Colombiercollect && /^[^ \t]/{ 17dc5a79c1SDavid du Colombier collect = isdev = 0; 187dd7cddfSDavid du Colombier} 197dd7cddfSDavid du Colombiercollect && $0 ~ /[^ \t]+/{ 207dd7cddfSDavid du Colombier if(isdev) 217dd7cddfSDavid du Colombier obj["dev" $1 "'.$O'"]++; 227dd7cddfSDavid du Colombier else 237dd7cddfSDavid du Colombier obj[$1 "'.$O'"]++; 247dd7cddfSDavid du Colombier for(i = 2; i <= NF; i++){ 257dd7cddfSDavid du Colombier if($i !~ "[+=-].*") 267dd7cddfSDavid du Colombier obj[$i "'.$O'"]++; 277dd7cddfSDavid du Colombier } 287dd7cddfSDavid du Colombier} 297dd7cddfSDavid du Colombier$0 ~ /^[^ \t]/{ 307dd7cddfSDavid du Colombier if($1 ~ "dev"){ 317dd7cddfSDavid du Colombier isdev = 1; 327dd7cddfSDavid du Colombier collect = 1; 337dd7cddfSDavid du Colombier } 347dd7cddfSDavid du Colombier else if($1 ~ "misc" || $1 ~ "link" || $1 ~ "ip") 357dd7cddfSDavid du Colombier collect = 1; 36*4fafed5dSDavid du Colombier next; 373e12c5d1SDavid du Colombier} 383e12c5d1SDavid du Colombier 397dd7cddfSDavid du ColombierEND{ 406a9fc400SDavid du Colombier x = "" 417dd7cddfSDavid du Colombier for(i in obj) 42*4fafed5dSDavid du Colombier x = x i "\n"; 43*4fafed5dSDavid du Colombier if(objtype ~ "386" && obj["pci" "'.$O'"]) 44*4fafed5dSDavid du Colombier x = x "bios32'.$O' \n"; 45*4fafed5dSDavid du Colombier printf x; 467dd7cddfSDavid du Colombier}' $* 47