#!/usr/bin/perl -w ($SELF = $0) =~ s,.*/,,; sub usage() { print <) { next if ($ignore_aaa && $pkg =~ /^(?:aaa_|openssl-solibs-)/); next if ($slackware_only && $pkg !~ /(?:\d|slack[\d.]+)$/); my $fh; if(!open $fh, '<', $pkg) { warn "can't read $pkg: $!\n"; next; } $packages++; while(<$fh>) { last if /^FILE LIST:/; } while(<$fh>) { chomp; next if m{/$}; next if m{^install/}; push @{$files{$_}}, $pkg; $files++; } close $fh; } for(sort keys %files) { my @pkgs = @{$files{$_}}; next unless @pkgs > 1; $conflicts++; print "$_:\n\t" . join("\n\t", @pkgs) . "\n"; } print "\n== Found $conflicts conflicts in $files files (in $packages packages)\n";