- } elsif ( m/group: (\w+\d+)\s.+function: (\S+)/ ) {
- my ($pin, $function) = ($1,$2);
- $pin_function->{$pin} = "$device $function";
-
- if ( $pins->{$pin} ) {
- foreach my $line ( @{$pins->{$pin}} ) {
- my $t = $lines[$line];
- if ( $opt_svg ) {
- $t =~ s/$pin/[$device $function]/;
- } else {
- $t =~ s/$pin/$pin [$device $function]/ || warn "can't find $pin in [$t]";
+ } elsif ( m/^group (\w+\d+)/ ) {
+ $pin = $1;
+
+ } elsif ( m/^function (\S+)/ ) {
+ $function = $1;
+ } elsif ( m/^$/ ) {
+ if ( $device && $pin && $function ) {
+ push @{ $pin_function->{$pin} }, "$device $function";
+
+ if ( $pins->{$pin} ) {
+ foreach my $line ( @{$pins->{$pin}} ) {
+ my $t = $lines[$line];
+ if ( $opt_svg ) {
+ $t =~ s/$pin/[$device $function]/;
+ } else {
+ $t =~ s/$pin/$pin [$device $function]/ || warn "can't find $pin in [$t]";
+ }
+ $lines[$line] = $t;
+ warn "# $line: $lines[$line]\n";