- my %ignores = map { $_ => 1 } @option_ignore_flag;
- foreach my $flags (@flag_refs) {
- @{$flags} = grep {
- # Flag found as string.
- not exists $ignores{$_}
- # Flag found as string representation of regexp.
- and (not defined $flag_renames{$_}
- or not exists $ignores{$flag_renames{$_}})
- } @{$flags};
+ remove_flags(\@flag_refs, \%flag_renames, @option_ignore_flag);
+}
+# Same for arch specific ignore flags, but only prepare here.
+if (scalar @option_ignore_arch_flag > 0) {
+ foreach my $ignore (@option_ignore_arch_flag) {
+ my ($ignore_arch, $ignore_flag) = split ':', $ignore, 2;
+
+ if (not $ignore_arch or not $ignore_flag) {
+ printf STDERR 'Value "%s" invalid for option ignore-arch-flag '
+ . '("arch:flag" expected)' . "\n", $ignore;
+ require Pod::Usage;
+ Pod::Usage::pod2usage(2);
+ }
+
+ push @{$option_ignore_arch_flag{$ignore_arch}}, $ignore_flag;